Ungewöhnliches Verhalten bei einer passwortgeschützten RAR-Datei, deren Passwort in WinRAR ungültig ist, in 7Zip jedoch fälschlicherweise akzeptiert wird

Ungewöhnliches Verhalten bei einer passwortgeschützten RAR-Datei, deren Passwort in WinRAR ungültig ist, in 7Zip jedoch fälschlicherweise akzeptiert wird

Ich habe eine alte .rar-Datei auf meinem Computer gefunden, konnte mich aber nicht mehr genau an das Passwort erinnern. Ich hatte eine ungefähre Vorstellung davon, was es war, also habe ich mit 7ziplib in C# ein Programm geschrieben, um eine Reihe von Permutationen mit Brute Force zu erzwingen.

Nach ein paar Tausend wurde eine Übereinstimmung gefunden. Wenn ich die Datei in 7zip mit dem gefundenen Passwort öffne, wird sie zwar geöffnet, aber es werden keine Dateien angezeigt. Wenn ich versuche, sie in Winrar zu öffnen, wird angezeigt, dass das Archiv beschädigt ist oder das Passwort ungültig ist.

7ziplib meldet die unkomprimierte Dateigröße als -1.

Ich habe dasselbe Brute-Force-Programm für eine andere Zip-Datei im selben Ordner ausgeführt, die ein ähnliches, aber nicht identisches Kennwort hatte, und es wurde dasselbe Verhalten gezeigt.

Im selben Ordner befinden sich weitere RAR-Dateien, die nicht kennwortgeschützt sind und sich problemlos öffnen lassen.

Gibt es dafür eine algorithmische Erklärung? Könnte es sein, dass ich ein Passwort gefunden habe, das eine Stufe der Passwortprüfung übersteht, eine andere aber nicht? Oder ist das Archiv beschädigt?

Falls das hilft, wird das Format als Rar4 angegeben. Laut Google wird AES-128 verwendet, Wikipedia gibt jedoch an, dass es nicht existiert, da es von Version 2.9 auf 5 springt.

Antwort1

Soweit ich weiß, verwendet RAR 32-Bit-CRC-Werte für alle Prüfsummenwerte, sowohl für die von Dateien als auch für den Archivheader. Wenn Sie also Passwörter mit Brute-Force-Methoden knacken, haben Sie eine Chance von 1 zu 2^32 (~ 1 zu 4 Milliarden), dass die Header-Prüfsumme übereinstimmt, obwohl die dekodierten Header-Daten (und alle nachfolgenden Dateidaten) Müll sind, weil das Passwort und folglich der Entschlüsselungsschlüssel tatsächlich falsch sind. Meine Erfahrung mit Brute-Force-Methoden für RARs scheint dies zu bestätigen.

Gibt es dafür eine algorithmische Erklärung? Kann es sein, dass ich ein Passwort gefunden habe, das eine Stufe der Passwortprüfung übersteht, eine andere aber nicht?

Das ist so ziemlich das, was passiert ist.

verwandte Informationen