ZIP-Passwort entsperren

Passwort vergessen

Es kommt häufig vor, dass das Passwort „teilweise“ vergessen wird, d. e. Erinnere dich an einige Charaktere, während du andere vergisst. Mit der Aspose.ZIP-API können Sie mit solchen halb vergessenen Passwörtern spielen, um das Archiv zu entsperren. In diesem Artikel erfahren Sie, wie Sie das Entschlüsselungspasswort des AES-verschlüsselten Zip-Archivs erraten.

Identifizierende Passwortvorlage

Nehmen wir an, Ihr Passwort beginnt mit den Symbolen „T0p$ecret“, gefolgt von einem englischen Großbuchstaben und zwei Ziffern. Wir können eine Vorlage also wie folgt beschreiben:

1string template = "T0p$ecret{0}{1}";

Dabei steht der erste Platzhalter für einen englischen Großbuchstaben, der zweite für eine zweistellige Zahl.

Einzelpasswort überprüfen

Dieser einfache Entschlüsselungscode

1 using (var a = new Archive("encrypted.zip", new ArchiveLoadOptions() {DecryptionPassword = password}))
2    a.ExtractToDirectory(".");

löst eine InvalidDataException aus, wenn ein falsches Passwort angegeben wurde.

Brute-Force-Angriff auf das Archiv

Verfassen und testen Sie also nacheinander Passwörter. Bei Erfolg gibt das Programm das richtige Passwort auf der Konsole aus.

 1    string template = "T0p$ecret{0}{1}";
 2    for (char c = 'A'; c < 'Z'; c++)
 3    {
 4        bool correct = false;
 5        for (int i = 10; i < 99; i++)
 6        {
 7            string password = string.Format(template, c, i);
 8            try
 9            {
10                using (Archive a = new Archive("encrypted.zip", new ArchiveLoadOptions() {DecryptionPassword = password}))
11                a.ExtractToDirectory(".");
12                correct = true;
13            }
14            catch (System.IO.InvalidDataException e)
15            {
16                correct = false;
17            }
18    
19            if (correct)
20            {
21                Console.WriteLine($"Proper password: {password}");
22                break;
23            }
24        }
25
26        if (correct)
27            break;
28    }

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.