it-swarm-eu.dev

Wie sicher ist eine kennwortgeschützte Windows-Zip-Datei?

Ich muss einige vertrauliche Informationen an einen Kunden senden. Ich dachte, ich würde eine passwortgeschützte Zip-Datei, die ich mit Windows XP] erstellt habe, per E-Mail versenden und sie dann mit dem Passwort aufrufen. Vorausgesetzt, ich wähle ein gutes Passwort, wie sicher ist dieser Ansatz? Insbesondere, wie schwierig ist es, um eine passwortgeschützte Zip-Datei zu entschlüsseln?

40

Beim Erstellen einer kennwortgeschützten Zip-Datei (mit dem im Betriebssystem integrierten Dienstprogramm "Komprimierter Ordner") verwendet Windows XP verwendet den "Standard" -Verschlüsselungsalgorithmus für Zip-Dateien. Dies ist eine hausgemachte Stream-Verschlüsselung und es ist schwach . Mit 13 Bytes bekanntem Klartext beträgt die Komplexität des Angriffs ungefähr 238 Operationen, die in wenigen Stunden auf einem PC durchgeführt werden können. 13 Bytes sind relativ einfach zu erhalten (z. B. wenn eine der Dateien im Archiv ein Bild ist, wird es wahrscheinlich dekomprimiert und beginnt mit einem bekannten Header). Das Ergebnis wurde sogar verbessert , insbesondere weil die Dateien in einem Archiv separat verschlüsselt werden, jedoch ohne ordnungsgemäße Schlüsseldiversifikation. Vor einigen Jahren (jetzt einige, tempus fugit) habe ich eine Software zum Knacken von Passwörtern von Ivan Golubev gesehen, die diese Wissenschaft zum Guten gebracht hat verwenden, und könnte Zip-Verschlüsselung in einer Stunde knacken.

Der Angriff auf die Zip-Verschlüsselung ist tatsächlich:

  • eine schöne Einführung in die Kryptoanalyse;
  • eine gute Übung in der Programmierung;
  • eine Erinnerung daran, dass Sie Ihre eigene Krypto nicht rollen sollten. Phil Katz war auf seinem Gebiet sehr gut, aber die besten Kryptographen der Welt werden Ihnen sagen, dass es viel mehr als einen extrem guten Kryptographen braucht, um einen sicheren Algorithmus zu erstellen - es braucht viele Kryptographen, die Schlagen Sie fieberhaft Entwürfe vor und versuchen Sie, die Entwürfe der anderen für einige Jahre zu brechen, bis ein scheinbar robustes Design entsteht (wobei "robust" bedeutet, dass "niemand das geringste Argument finden kann, um die Idee zu stützen, dass sie möglicherweise eine Beule machen könnten." darin zu einem nicht näher festgelegten Zeitpunkt ").

Wenn Sie jetzt ein Tool verwenden, das die neuere, AES-basierte Verschlüsselung unterstützt, sehen die Dinge besser aus, vorausgesetzt, das Format und die Implementierung wurden nicht verpfuscht und das Kennwort verfügt über eine ausreichende Entropie. Solche Zip-Dateien werden jedoch vom Standard-WinXP-Explorer nicht geöffnet.

Wenn ein externes Tool erforderlich ist, können Sie sich auch auf ein Tool verlassen, das sowohl in der Formatspezifikation als auch in der Implementierung gründlich auf Sicherheit analysiert wurde. mit anderen Worten, als @ D.W. schlägt vor: GnuPG .


selbstentschlüsselnde Archive sind alle falsch, da sie darauf beruhen, dass der Benutzer genau das tut, was niemals getan werden sollte, dh eine ausführbare Datei, die er startet per E-Mail erhalten. Wenn er tut ein selbstentschlüsselndes Archiv öffnet, das Sie ihm senden, zeigt er durch diese Aktion, dass er anfällig für die Vielzahl von Viren/Würmern/Was auch immer ist, die das wilde Internet durchstreifen und er ist wahrscheinlich bereits mit verschiedenen Malware infiziert, einschließlich Keyloggern.

Trotzdem gibt es in Ihrer spezifischen Situation eine Möglichkeit, ein selbstentschlüsselndes Archiv sinnvoll zu machen. Ihr Client muss immer noch eine neue Software installieren, aber zumindest stammt sie direkt von Microsoft: der File Checksum Integrity Verifier - ein pompöser Name für ein Tool, das Dateien berechnet Hashes. Senden Sie das selbstentschlüsselnde Archiv an Ihren Client und lassen Sie ihn es als Datei speichern ( ohne natürlich ausführen). Lassen Sie ihn dann FCIV ausführen, um den SHA-1-Hash der Datei abzurufen. Mach dasselbe auf deiner Seite. Vergleichen Sie abschließend die beiden Hashes per Telefon (es ist nicht schwer, 40 hexadezimale Zeichen zu diktieren). Wenn die beiden Hashes übereinstimmen, weiß Ihr Client, dass die Datei während der Übertragung nicht geändert wurde, und kann sie mit Sicherheit ausführen.

(Das heißt, wenn Ihr Client Ihnen vertraut und darauf vertraut, dass Ihr Computer nicht voll mit Viren ist, die das Archiv auf dem Weg nach draußen infiziert haben könnten.)

46
Thomas Pornin

Bei vertraulichen Daten würde ich nur ungern passwortgeschützte Zip- oder 7Zip-Archive verwenden. Die aktuellen Versionen der von ihnen verwendeten Verschlüsselung wurden von unabhängigen Forschern nicht gut untersucht oder überprüft. Ältere Versionen der Software wiesen Sicherheitslücken auf, was Anlass zur Sorge gibt. Die neueren Versionen mögen in Ordnung sein, aber da sie nicht unabhängig überprüft wurden, zögere ich, ihnen viel Vertrauen zu schenken. Im Idealfall ist so etwas wie GPG oder PGP besser.

Bitte beachten Sie, dass die Verschlüsselung mit einem Passwort in der Regel schwach ist. Die meisten Leute wählen Passwörter, die nicht genug Entropie haben, um gegen Offline-Suche sicher zu sein (z. B. Wörterbuchangriff, umfassende Suche). Darüber hinaus sind lange und sichere Passwörter unpraktisch in der Verwendung, was einen weiteren Anreiz für sie darstellt.

Ich empfehle, dass Sie vermeiden, dass Personen selbstextrahierende EXE-Dateien senden. Das ist ein Sicherheitsrisiko. Wenn Sie Personen selbstextrahierende EXE-Dateien senden, trainieren Sie sie, einen EXE-Anhang per E-Mail zu erhalten und auszuführen. Das ist aus Sicherheitsgründen eine sehr gefährliche Praxis. Ich denke, die Tatsache, dass Zip und 7Zip diese Praxis fördern, ist ein Zeichen der Missachtung der Sicherheit.

Wenn Sie eine kennwortbasierte Verschlüsselung verwenden müssen, empfehle ich : GPG oder PGP verwenden (z. B. gpg -c). Die Sicherheit der GPG-Verschlüsselung wurde gut untersucht und ist stark. Verwenden Sie ein langes, sicheres Kennwort: Verwenden Sie beispielsweise ein Dienstprogramm, um ein kryptografisch zufälliges Kennwort zu generieren. Sie möchten ein Passwort, das ungefähr 14-16 zufällige Zeichen lang ist und keinerlei Muster enthält.

Dies ist wahrscheinlich die einfachste Option für Ihren Kunden, die auch einen starken Schutz bietet.

Wenn Sie zusätzliche Sicherheit wünschen, speichern Sie die verschlüsselten Daten auf einer CD oder DVD und senden Sie die CD oder DVD dann per Fedex (anstatt per E-Mail). Auf diese Weise erhalten Sie zwei Sicherheitsebenen: Jemand kann die Daten nur stehlen, wenn er Zugriff auf die CD oder DVD hat und über das Kennwort zum Entschlüsseln verfügt.

Wenn Ihre Clients Probleme mit PGP oder GPG haben, können Sie eine aktuelle Version der Kennwortverschlüsselung von Zip oder 7Zip verwenden. In diesem Fall würde ich eine selbstextrahierende EXE-Datei vermeiden und wahrscheinlich eher dazu neigen, die verschlüsselten Daten per Post (auf CD oder DVD) als über das Internet zu senden.

Alternativ : Wenn Ihr Client technisch versiert ist und Sie häufig mit ihm kommunizieren, besteht eine andere Möglichkeit darin, dass er GPG oder PGP verwendet, um ein zufälliges öffentliches Schlüsselpaar zu generieren, Ihnen seinen öffentlichen Schlüssel zu senden, und dann können Sie Daten unter ihrem öffentlichen Schlüssel verschlüsseln. Dies bietet eine höhere Sicherheit, wenn sie wissen, wie man GPG oder PGP verwendet. Es ist jedoch weniger intuitiv und daher wahrscheinlich nicht durchführbar, um Daten an einen durchschnittlichen Kunden zu senden.

6
D.W.

Es ist nicht so schwer, eine passwortgeschützte Zip-Datei zu entschlüsseln. Es gibt viele Apps, mit denen Sie entweder das Passwort herausfinden oder einfach das Passwort entfernen können.

Es besteht die Möglichkeit, dass niemand die E-Mail zwischen Ihnen und ihnen abfängt. Öffentliche E-Mail-Server haben eine enorme Datenmenge, die zwischen ihnen fließt. Das Einfügen eines Passworts in die E-Mail ist wahrscheinlich gut genug. Wenn Sie etwas Sichereres benötigen, schauen Sie sich an, wie Sie die E-Mail verschlüsseln, über die der Anhang gesendet wird, oder senden Sie die Datei an einen sicheren Ablageort wie Dropbox (ja, mir ist das Problem bekannt, das sie vor ein paar Wochen hatten) und senden Sie sie die Verbindung.

4
mrdenny

Ich habe passwortgeschützte Zip-Dateien als Ad-hoc-Verschlüsselungsmechanismus verwendet (obwohl ich nach Möglichkeit lieber GPG verwende). Bei der Kennwortwiederherstellung für Zip-Dateien wird viel getan. Solange Sie jedoch eine aktuelle Version verwenden, ist Brute Force der einzige praktische Wiederherstellungsmechanismus. Ich glaube, dass sowohl 7-Zip als auch Winzip AES-256 unterstützen. Wenn Ihr Client bereits über Winzip verfügt, würde ich dies verwenden (stellen Sie nur sicher, dass Sie AES und nicht "Legacy" -Verschlüsselung verwenden).

Der wichtigste Aspekt bei der Verwendung ist Ihr Passwort (ich würde eine Passphrase empfehlen, mindestens 16 Zeichen, einige Sonderzeichen eingeben). Die Passphrase hat den Vorteil, dass Brute Force schwierig ist und Sie sie relativ einfach über das Telefon austauschen können.

Dies ist keineswegs ein perfekter Mechanismus, aber er könnte für Ihre Zwecke gut genug sein (abhängig von der Empfindlichkeit der Daten).

4
Andrew

Mit der Dual GTX 295 kann ein 4-Zeichen-Passwort in weniger als einer Stunde wiederhergestellt werden.

http://is.hut.vn/~phongph/uploads/publications/1277074631.pdf

1
Jodie C