Hasła 130 milionów kont, które wyciekły z serwerów Adobe, są zaszyfrowane nieznanym nam kluczem. Mimo tego w wielu przypadkach możemy jednak je poznać dzięki podpowiedziom ustawionym przez użytkowników serwisu.
Wśród 130 milionów haseł tylko 56 milionów to hasła unikatowe. Możemy to stwierdzić, ponieważ Adobe korzystało z szyfrowania 3DES w trybie ECB ze stałym kluczem szyfrującym, dzięki czemu jeśli dwóch użytkowników ustawiło takie samo hasło, to w formie zaszyfrowanej będzie ono również wyglądało identycznie. Nie stanowi to dużego ułatwienia w przypadku próby ataku na hasła, ale Adobe w bazie przechowywało również podpowiedzi do haseł, ustawiane przez część użytkowników. Dla popularnych haseł analiza podpowiedzi pozwala na ustalenie formy jawnej hasła z bardzo dużym prawdopodobieństwem. Zresztą spróbujcie sami.
Przeanalizowaliśmy najpopularniejsze hasła dla kont poczty elektronicznej, znajdujących się w domenie .pl. Oto 10 najpopularniejszych haseł w formie zaszyfrowanej:
9077 EQ7fIpT7i/Q= 3646 5djv7ZCI2ws= 1534 bec1NNix7PLioxG6CatHBw== 1183 7LqYzKVeq8I= 1122 j9p+HwtWWT86aMjgZFLzYg== 947 xz6PIeGzr6g= 902 vv6JgXptr3I= 803 ziypr2hyamc= 714 4V+mGczxDEA= 705 TYrTfuuBGm0=
Poniżej przedstawiamy wybrane podpowiedzi dla kolejnych pozycji – możecie sami spróbować swoich sił w odgadywaniu haseł (nie będzie to raczej trudne zadanie).
EQ7fIpT7i/Q= "123456" 1 2 3 4 5 6 1-6 1do6 654321wspak 6 cyferek 6 pierwszych liczb cyfry kolejno cyfry od jeden do szesciu haslo:123456 Haslo to szesc cyfr od jeden idioci maja cos takiego przy walizkjach jeden do szesc jedendwatrzyczterypiecszeisc kolejne cyfry liczby: 123456 liczby 1-6 od jeden do szesc pierwsze 6 cyfr :P pierwszych szesc liczb z klawiatury raz dwa trzy cztery piec szesc wpisz od jednego do szesciu
5djv7ZCI2ws= 6 liter z pierwszego rzedu klawiatury 6 od q asdfgh wyzej klawiatura klawisze moje haslo to ja zawsze qw.... pierwsze 6 liter klawiatury Standardowe haslo komputerowe Tak sie czyta twa klawiature. to co zawsze qwerty wiadomo co klawiatura pierwsze 6 liter wpisz qwerty ytrewq (reverse it)
bec1NNix7PLioxG6CatHBw== 8 klawiszy z lewej cisco lab pass Lancuszek na klawiaturze Szlaczek po klawiaturce ;) xsw21qaz zaq...
7LqYzKVeq8I= 6 razy liczba jeden 6x1 jedynki numerki pierwsze szec razy jeden szesc jedynek twojehasloto111111
j9p+HwtWWT86aMjgZFLzYg== 19 1-9 1...9 987654321 cyfry po koleji od jedynki do dziewatki klawiatura numeryczna liczba od 1 do 9 numeryczna 1-9 odjedendodzieiwec
xz6PIeGzr6g= 6 na A 6xa Blah aa + aa + aa ile 6x a? password:aaaaaa
vv6JgXptr3I= country home country jakis kraj xD kraj moj kraj my favourit country narod NAZWA KRAJU PRACY panstwo polskapolska taki kraj tam gdzie najlepiej... ulubiony kraj
ziypr2hyamc= 1 2 3 q w e 3 cyfry, 3 litery klawiaturka poczatek klawiatury qwe123 trzy pierwsze dwa razy
4V+mGczxDEA= 54321
TYrTfuuBGm0= corka dziewczyna ratownika imie imie zony monia monisiaaa wrog nr 1 zona
Jak więc widzicie, nawet „zaszyfrowanie” podpowiedzi do popularnego hasła nie pomoże, jeśli nie zrobią tego inni. Podobną analizę dla 100 globalnie najpopularniejszych haseł można znaleźć tutaj.
Na deser ciekawostka: wygląda na to, że wszystkie 8-znakowe hasła w formie zaszyfrowanej kończą się ciągiem „ioxG6CatHBw==”. Czy oznacza to, że Adobe do szyfrowania użyło w każdym z 3 cykli 3DES tego samego klucza? Czekamy na wypowiedzi ekspertów ds. kryptografii.
Aktualizacja: Marek w komentarzu rozwiał wątpliwości – obecność tego samego ciągu dla każdego 8-znakowego (i 16, 24,32… znakowego) hasła nie pozwala określić, jaka kombinacja kluczy została użyta do szyfrowania.
Komentarze
Problem pojawia się, gdy długość szyfrowanego tekstu odpowiada długości jednego bloku danych, który dla DES i 3DES wynosi 64 bity (czyli 8 bajtów). Wtedy obowiązkowy dla trybu ECB padding wpada do osobnego bloku, a że padding będzie ten sam dla wszystkich haseł o odpowiedniej długości – voila, mamy tą samą końcówkę. Nie da się łatwo stwierdzić, czy klucz dla każdego DESa z kolei był ten sam.
Hmmm… jeżeli uda się odgadnąć jedno hasło na pewniaka, wystarczy zrobić prostą aplikację, która bruteforcem słownikowym będzie porównywać znaki wyjściowe do aktualnego hashu. Jeden wielki botnet może to zrobić w ciągu kilkunastu minut. Randomowe znaki do 20 cyfr w 2 dni (obecnie największy botnet ma 2mln użytkowników).
Podpowiedzi „wrog nr 1” i „zona” dotyczące tego samego hasła – urocze :-)
Może ktoś mi to wyjaśni bo jestem totalnym lajkonikiem ;-) – czy znając jedno hasło na 100% nie można odgadnąć reszty? Bo załóżmy, że mamy znane hasło i mamy jego zaszyfrowaną formę. To czy nie będzie łatwiej rozszyfrować całość?
Skopiuję komentarz z poprzedniego wpisu :)
To, co proponujesz, nazywa się w kryptografii „atak ze znanym tekstem jawnym” (http://pl.wikipedia.org/wiki/Atak_ze_znanym_tekstem_jawnym) i świetnie działa w przypadku niektórych szyfrów, szczególnie tych o prostej konstrukcji. W przypadku 3DES nie jest znany skuteczny atak tego typu. Przekształcenie w czasie szyfrowania jest tak skonstruowane, by jego odwrócenie bez znajomości klucza było bardzo trudne.
gdzie mozna takie duze spisy podpowiedzi znajdywac bo fajne zagadki mozna robic z tego.