Iluzja bezpieczeństwa jest gorsza od świadomości o jego braku, bo prowadzi do decyzji podjętych na błędnych przesłankach. Informacje przekazywane przez instytucje zaufania publicznego typu „Chronimy Twoje dane osobowe” jest często właśnie takową iluzją bezpieczeństwa. Przestudiujmy dwa tego przypadki na przykładzie plików PDF z hasłami.
- Dostałem maila od PZU z propozycją ubezpieczenia o niniejszej treści, z podkreśleniem „Chronimy dane osobowe”:
2. W załączniku znajdował się plik PDF zabezpieczony hasłem:
3. Załóżmy, iż owego hasła nie znam. Wiem natomiast z treści maila, iż hasło składa się z 4 cyfr. Sprawdźmy zatem jak dużo czasu zajmie jego złamania przy użyciu współczesnego, domowego komputera.
4. Poprzez otworzenie PDFa w trybie tekstowym odczytajmy (np. dzięki notatnika) nagłówek pliku. Pozwoli to nam zidentyfikować, w której wersji standardu został on stworzony:
5. Kolejnym krokiem jest wyciągnięcie skrótu hasła, które chcemy złamać. Z pomocą przychodzi nam tu narzędzie pdf2john.py .
6. Do łamania uzyskanego hasha użyjemy hashcata w trybie bruteforce. 10500 oznacza tutaj tryb łamania właśnie hasha formatu dla plików PDF w wersji 1.4-1.6:
Jak widać poniżej, złamanie hasła składającego się z czterech cyfr trwało 10 sekund:
Tym samym śmiało można, stwierdzić, iż 4 cyfrowe hasło jest typem iluzorycznej ochrony i nie zabezpiecza danych osobowych.
Kolejno na warsztat weźmy „zabezpieczony” PDF od NN Investment Partners.
- Tutaj został on poddany „ochronie” już nieco dłuższym ciągiem znaków — numerem PESEL.
2. Nagłówek pliku z załącznika – „%PDF-1.2” wskazuje, iż plik został stworzony przy użyciu standardu z 1996 roku:
3. To samo wskazuje wyciągnięty hash hasła:
4. Odpalamy „chamski” brutforce hashcatem. Chamski, bo nie bierzemy pod uwagę żadnych dodatkowych założeń, które zmniejszyłyby ilość możliwych kombinacji oprócz tego, iż PESEL to liczba składająca się z 11 cyfr:
Co zrobić, jak żyć?
Do szyfrowania danych należy używać długich haseł — powyżej 12 znaków, o dużej przestrzeni znakowej tzn. takich, w których będą duże/małe litery, cyfry i znaki specjalne. Takie hasło powinno być przesłane do klienta drugim kanałem komunikacji np. smsem. Ponadto instytucje powinny korzystać z silnych algorytmów szyfrujących, które znacząco spowalniają próby brutforcowania. Przykładem może być tutaj użycie archiwum 7zip z algorytmem AES-256.