it-swarm.com.de

Haben Veracrypt-verschlüsselte Volumes einen Brute-Force-Schutz?

Ich habe ein mit 10 MB verschlüsseltes Volume, das ich mit Veracrypt erstellt habe und das ich ins Internet hochladen wollte. Ich habe ein ziemlich sicheres Passwort, war aber besorgt über den Schutz vor Brute-Force-Angriffen. Nach dem Durchsuchen dieser SE scheint es, als könne ein Veracrypt-verschlüsseltes Volume leicht brutal erzwungen werden ref1 , ref2 . Wenn dies der Fall ist, können wir bei genügend Ressourcen jedes verschlüsselte Volume mit einer beliebigen Kennwortlänge (> 100) in nur wenigen Tagen mit parallelem Brute-Forcing anstelle von Jahren knacken.

Ist in Veracrypt-verschlüsselten Volumes ein Brute-Force-Schutz integriert? Wussten die Veracrypt-Entwickler nicht über dieses Problem Bescheid? Gibt es ein anderes starkes Verschlüsselungssystem mit Brute-Force-Schutz?

22
Eka

Jede Verschlüsselung ist anfällig für Brute-Force-Angriffe. Beispielsweise verfügt AES-256 über 2 ^ 256 Schlüssel, und bei ausreichender Hardware können wir Brute-Force-Angriffe „einfach“ durchführen. Das Problem ist, dass es auf der Erde nicht genug Silizium gibt, um genügend Prozessoren zu konstruieren, um dies vor dem Hitzetod des Universums zu tun. Die Tatsache, dass die Verschlüsselung brutal erzwungen werden kann, bedeutet nicht, dass dies in angemessener Zeit geschehen wird, und wir können der Wahrscheinlichkeitstheorie dafür danken;)

Das schwächste Glied ist fast immer nicht der Schlüssel des Verschlüsselungsalgorithmus, sondern das Passwort, von dem der Schlüssel abgeleitet wird. Einige Passwörter sind wahrscheinlicher als andere, und dies ermöglicht Wörterbuchangriffe auf Passwörter.

In dieser Hinsicht erledigt das VeraCrypt-Projekt alles nach den Büchern: Sie verwenden PBKDF2 mit starken Hash-Algorithmen und hohen Iterationszahlen (dies wird etwas vom Benutzer gesteuert). Die Verwendung von PBKDF2 mit zufälligem Salz verhindert, dass der Angreifer vorgefertigte Hash-Tabellen verwendet, und zwingt ihn, jeden Schlüsselversuch speziell für Ihren Container zu berechnen. Bei einer hohen Iterationszahl dauert jeder Versuch sehr lange (Millisekunden bis Sekunden). Wiederholtes Hashing ist von Natur aus nicht vergleichbar (ein einzelner PBKDF2-Vorgang ist nicht vergleichbar, der Angreifer kann natürlich mehrere Vermutungen gleichzeitig durchführen), sodass benutzerdefinierte Hardware nicht viel hilft.

Unter diesen Bedingungen ist der einzig mögliche Angriff wörterbuchbasiert, Bruteforce würde zu lange dauern. Wenn Ihr Passwort gegen Wörterbuchangriffe geschützt ist, können Sie ein hohes Maß an Sicherheit bei der Sicherheit Ihrer Daten haben.

Relevante Dokumentation: https://www.veracrypt.fr/en/Header%20Key%20Derivation.html

64
Andrew Morozko

Wussten die Veracrypt-Ersteller nicht über dieses Problem Bescheid?

( Ohne Brute-Force-Schutz)

Wie Andrew Morozko in seine Antwort feststellt, haben sie dies - soweit möglich - mithilfe einer sicheren Schlüsselgenerierungsfunktion (PBKDF2) und hoher Iterationszahlen angegangen. Dies schränkt die Brute-Force-Fähigkeit erheblich ein (vorausgesetzt, das Kennwort ist lang und zufällig genug 1 ).

Welche anderen Methoden haben sie Ihrer Meinung nach verwendet ?

Auf einer Website, auf der die Anmeldeversuche zur Überwachung der Software dem Verteidiger gehören, können Sie beispielsweise Anmeldeversuche mit Ratenbegrenzung (mit zunehmenden Verzögerungen, weit über die tatsächliche Rechenzeit für die Überprüfung des Kennworts hinaus) ausführen und das Konto sperren, nachdem zu viele fehlgeschlagen sind Versuche.

Bei VeraCrypt befindet sich die Software, die ein verschlüsseltes Volume verarbeitet, jedoch auf dem Computer Angreifer Und muss daher als "Eigentum" des Angreifers betrachtet werden. Selbst wenn die Autoren Code in Ratenbegrenzungsversuche integriert hätten, wäre es für jemanden "trivial", die Binärdatei zurückzuentwickeln und den Ratenbegrenzungscode zu entfernen/zu umgehen.

Fazit : virtuell 2  Jede Maßnahme, die über das hinausgeht, was von Natur aus zur Überprüfung des Passworts erforderlich ist, wäre nutzlos und könnte leicht umgangen werden.


1  Die beiden Referenzen, die Sie zitieren, um zu behaupten, dass " ein veracrypt-verschlüsseltes Volume kann leicht brutal erzwungen werden", zeigen dies tatsächlich nicht. Eines ist, wo bekannt ist, dass das richtige Passwort in einer Liste von " 1000-2000" Kandidaten steht; der andere, an den " der größte Teil des Passworts" erinnert wird. Das erste ist eindeutig trivial; Die zweite hängt davon ab, wie viel unbekannt/nicht erinnert ist, aber auch nicht ist ein "typisches" Brute-Forcing-Szenario. Wie Andrew sagt: " Wenn Ihr Passwort gegen Wörterbuchangriffe geschützt ist, können Sie ein hohes Maß an Sicherheit bei der Sicherheit Ihrer Daten haben.".

2  Über die einzige möglicherweise denkbare Methode, die ich mir vorstellen kann, wäre, wo der Prozess der Validierung von Anmeldeinformationen (und erforderlich) das Sprechen mit Servern unter der Kontrolle eines anderen beinhaltet. Wenn beispielsweise ein Teil des Schlüsselgenerierungsprozesses (sowohl während der Verschlüsselung als auch während der Entschlüsselung) erforderlich Elemente beispielsweise über die Server von VeryCrypt weiterleitet, können sie theoretisch eine zusätzliche Ratenbegrenzung auferlegen oder Sperrmaßnahmen.

Selbst wenn dies möglich wäre (auf eine Weise, die sowohl kryptografisch notwendig war als auch keine Kopien der Schlüssel bei VeraCrypt hinterließ), wäre dies für praktisch alle Anwendungsfälle nicht akzeptabel: Jedes Mal, wenn jemand eine Verbindung herstellt, ist eine funktionierende Internetverbindung erforderlich ein Laufwerk und verschlüsselte Volumes wären unbrauchbar, wenn VeraCrypt (und ihre Server) nicht mehr vorhanden wären.

20
TripeHound