# Odzyskiwanie dostępu do archiwów ZIP: praktyczny przewodnik po John the Ripper
Zapomniane hasła do zaszyfrowanych archiwów to powszechny problem podczas pracy z danymi legacy, kopiami zapasowymi lub materiałami uzyskanymi w ramach dochodzeń OSINT. Przekazywanie poufnych plików do zewnętrznych usług online w celu „włamania się" stwarza nieakceptowalne ryzyko wycieku. Lokalny audyt za pomocą sprawdzonych narzędzi bezpieczeństwa informacji pozwala odzyskać dostęp bez kompromitacji danych. Omówimy działający pipeline ekstrakcji i doboru hasła dla archiwów ZIP na bazie narzędzi zip2john i john w dystrybucjach kompatybilnych z Debianem.
Przygotowanie środowiska i ekstrakcja hasha
Dla pracy will be required system oparta na Debian Linux. Najlepszym wyborem są specjalistyczne dystrybucje Kali Linux lub Parrot OS, gdzie pakiet john jest preinstalowany i skonfigurowany. W standardowych dystrybucjach narzędzie jest dostępne z repozytoriów (sudo apt install john). Ważne jest zrozumienie, że zip2john nie łamie archiwum bezpośrednio. Jego zadaniem jest parsowanie struktury pliku ZIP, ekstrakcja zaszyfrowanych nagłówków i generowanie hasha w formacie zrozumiałym dla głównego silnika John the Ripper.
Umieść docelowy archiwum w wygodnym katalogu. Do demonstracji użyjemy ścieżki /home/user/Desktop/Secret.zip. Pierwszym krokiem jest wygenerowanie pliku z hashem:
zip2john /home/user/Desktop/Secret.zip > /home/user/Desktop/hash.txt
Narzędzie analizuje lokalne nagłówki plików wewnątrz archiwum. Jeśli archiwum zawiera kilka plików, zip2john może wygenerować kilka hashów lub ostrzec o niezgodności metod kompresji. W takich przypadkach zaleca się podanie ścieżki do konkretnego pliku wewnątrz archiwum lub użycie flagi -p do wymuszonego parsowania. Wynik jest przekierowywany do pliku tekstowego, który posłuży jako dane wejściowe dla kolejnego etapu.
Mechanika działania John the Ripper z ZIP
Współczesne archiwa ZIP wykorzystują dwa główne standardy szyfrowania: przestarzały ZipCrypto (PKWARE) i bardziej niezawodny AES-256. zip2john automatycznie rozpoznaje typ szyfrowania i generuje odpowiednią sygnaturę hasha ($zip$ lub $zip2$). John the Ripper wykorzystuje te metadane do wyboru optymalnego algorytmu doboru.
Uruchomienie procesu odzyskiwania hasła odbywa się poleceniem:
john /home/user/Desktop/hash.txt
Domyślnie narzędzie uruchamia tryb inkrementalnego brute-force z wykorzystaniem wbudowanych reguł mutacji. Aby przyspieszyć proces, zaleca się od razu podłączenie specjalistycznego słownika:
john --wordlist=/usr/share/wordlists/rockyou.txt /home/user/Desktop/hash.txt
Po udanym doborze lub do sprawdzenia już znalezionych kombinacji używa się flagi --show:
john /home/user/Desktop/hash.txt --show
W wyniku zostanie wyświetlony odzyskany hasło powiązany z nazwą archiwum. Jeśli proces został przerwany, John automatycznie zapisuje stan sesji w pliku ~/.john/john.pot, co pozwala wznowić dobór bez utraty postępu.
Optymalizacja doboru i ograniczenia architektoniczne
Skuteczność odzyskiwania zależy bezpośrednio od zasobów obliczeniowych i wybranej strategii. Wersja CPU John the Ripper nadaje się do ataków słownikowych i prostych mutacji. W przypadku skomplikowanych kombinacji warto użyć kompilacji john-jumbo z wsparciem OpenCL, umożliwiającej wykorzystanie mocy GPU. Podczas pracy z szyfrowaniem AES-256 prędkość brute-force na CPU rzadko przekracza kilka tysięcy hashów na sekundę, podczas gdy przyspieszenie GPU daje wzrost rzędu wielkości.
Kluczowe aspekty, które należy uwzględnić przy planowaniu audytu:
- Długość i entropia hasła określają czas doboru. Kombinacje do 8 znaków z małej litery odzyskuje się w minuty, natomiast 12+ znaków ze znakami specjalnymi czyni brute-force nieopłacalnym.
- Struktura ZIP pozwala ekstrahować hashe bez rozpakowywania zawartości, co zachowuje integralność oryginalnych danych.
- Użycie niestandardowych reguł (--rules) w John pozwala generować warianty na bazie podstawowego słownika, dodając sufiksy, prefiksy i zamiany znaków, co znacznie zwiększa szanse sukcesu przy celowanym audycie.
- Zawsze sprawdzaj legalność dostępu do archiwum. Narzędzia do odzyskiwania haseł służą do audytu własnych danych lub systemów za pisemną zgodą właściciela.
Co ważne
- zip2john nie łamie hasła, lecz jedynie ekstrahuje kryptograficzny hash z metadanych archiwum do dalszego przetwarzania.
- Lokalny dobór eliminuje ryzyko wycieku poufnych plików, typowe dla usług online do odzyskiwania.
- Podłączenie GPU poprzez kompilacje OpenCL John the Ripper jest kluczowe przy pracy z AES-256 i długimi kombinacjami.
- Flaga --show i plik john.pot pozwalają zarządzać sesjami i szybko ekstrahować wyniki bez ponownego uruchamiania obliczeń.
- Skuteczność ataku słownikowego zależy bezpośrednio od jakości wordlist i zastosowania reguł mutacji pod konkretny przypadek.
— Editorial Team
Brak komentarzy.