Paweł Goleń, blog

Wartość oczekiwana, czyli numer kroku, w którym nastąpi “złamanie” hasła maskowanego. Innymi słowy po ilu podglądnięciach hasła atakujący będzie mógł się zalogować do systemu na podstawie zdobytych informacji. Wartości są wyliczone dla haseł o długościach od 8 do 16 znaków i masek o długościach od 4 do 8 znaków.

4 5 6 7 8 8 3,09 2,7 2,36 2 1 9 3,4 3,01 2,65 2,33 2 10 3,71 3,31 2,94 2,6 2,31 11 4 3,6 3,22 2,88 2,56 12 4,28 3,89 3,51 3,16 2,83 13 4,57 4,17 3,79 3,43 3,09 14 4,84 4,44 4,06 3,69 3,36 15 5,12 4,71 4,32 3,95 3,61 16 5,38 4,99 4,58 4,21 3,86

Statystycznie (a są kłamstwa, duże kłamstwa i statystyka) najlepsze rozwiązanie to długie hasła i krótkie maski. Nawet w tym przypadku wystarczy (statystycznie) 6 podglądnięć hasła, by zdobyć dane potrzebne do uwierzytelnienia. Niewiele...

Czytaj dalej...

Małe uzupełnienie wczorajszego postu. Wyliczenie minimalnej i maksymalnej ilości prób potrzebnych do pomyślnego przejścia hasła maskowanego, jest stosunkowo proste. Są dwie sytuacje:

  • znane są wszystkie znaki dla kolejnej maski,
  • znane jest całe hasło,

Pierwsza sytuacja zachodzi najszybciej po dwóch próbach. Może się zdarzyć tak, że trzecia maska jest wybrana spośród elementów maski pierwszej i drugiej. Minimalnie potrzebne są więc dwie podsłuchane próby uwierzytelnienia przy pomocy hasła maskowanego. Druga sytuacja zachodzi dla n znakowego hasła i k znakowej maski najpóźniej po (n-k)+1 próbach. Dlaczego? Pierwsza maska “zajmuje” k znaków, zostaje n-k znaków wolnych, które można wykorzystać w kolejnych maskach. Zakładając, że każda nowa maska będzie “konsumowała” tylko jeden z “wolnych” znaków, otrzymuje się podaną przeze mnie wartość. Jeśli kolejne maski nie będą wykorzystywały “wolnych” znaków, to zachodzi sytuacja pierwsza – wymagane są znaki, które wystąpiły w pierwszej masce.

Czytaj dalej...

Hasła są umiarkowanie bezpieczną metodą uwierzytelnienia użytkownika. Nie chodzi tu nawet o fakt, iż znaczna część populacji wybiera hasła słabe. Hasło może zostać podsłuchane lub podpatrzone. Podsłuchane za nawet nie tyle za pomocą sniffera w trakcie, gdy hasło przesyłane jest przez sieć, ale przez keylogger (lub ogólniej – malware) w trakcie jego wpisywania. Podpatrzone przez osobę, która niewinne stoi akurat za plecami i spogląda niewinnie gdzieś w dal...

Czytaj dalej...

Ostatnio w trakcie testów spotkałem się z błędem w WebScarab. Problem leży w obsłudze multipart. Linia w tym przypadku powinna kończyć się sekwencją CRLF (\r\n). Okazuje się, że WebScarab znak CR traktuje jako normalny, edytowalny znak, choć go nie wyświetla. W rezultacie ustawienie kursora na początku linii i wybranie przycisku END powoduje, że kursor zostanie ustawiony w praktyce między znakiem CR i LF. W dość prosty sposób można wówczas przypadkowo usunąć znak CR, co prowadzi do tego, że post w formacie multipart ma nieprawidłowy format. Obejście problemu jest dość trywialne. Po ustawieniu kursora na końcu linii (przez END) wystarczy użyć “strzałki” (mowa oczywiście o klawiaturze) w celu przesunięcia kursora o jeden znak w lewo. Pozornie wówczas nic się nie dzieje, w praktyce jednak kursor przesuwa się przed znak CR i wyprodukowany (zmodyfikowany) multipart jest już prawidłowy. Proste?

Czytaj dalej...

Zgodnie z tradycją 1 listopada ukazała się kolejna wersja OpenBSD.

Czytaj dalej...

Jestem pod wrażeniem dokumentacji do sqlite3 w Python 2.5. Chodzi mi o wskazanie tego, by nie konstruować zapytań SQL na zasadzie sklejania stringów, lecz przy pomocy mechanizmu bind variables. Dlaczego? Dlatego, że jest to jedna z prostszych i przy okazji skuteczniejszych metod przeciwdziałania sql-injection (dowiedz się więcej na temat sql injection : Lekcja 7: (blind) SQL injection). Przy pomocy Pythona i sqlite3 łatwo to zresztą sprawdzić.

Czytaj dalej...

Jeśli ktoś tworzy aplikacje internetowe w technologii ASP.NET, powinien zapoznać się z narzędziem XSSDetect.

Czytaj dalej...

Rozmowa z Tomkiem skłoniła mnie do ponownego napisania kilku słów na temat Zarządzania Tożsamością. Tym razem z trochę innej perspektywy. Po to, by ktoś sobie nie pomyślał, że system zarządzania tożsamością rozwiązuje wszystkie problemy...

Czytaj dalej...

Wkrótce w życie wchodzi ustawa “zakazująca” pracy przez 12 dni w roku. Nie będę się rozpisywał – takie sztuczne regulowanie jest bez sensu. Ludzie, w tym ja, będą chcieli robić zakupy w te dni. Inni będą chcieli zarabiać. A ustawę tę da się obejść. Zresztą od walki o prawa pracowników jest Kodeks Pracy i na prawdę nie jestem w stanie zaakceptować tłumaczeń, że tego typu akty prawne służą do walki z wykorzystywaniem pracowników przez złych pracodawców... Służą tylko celom propagandowym.

Czytaj dalej...

Dzisiaj byłem na nietypowej imprezie urodzinowej. Zamiast nudnej nasiadówy quady i paintball. Bardzo fajna impreza. Z paintballa wyniosłem dwa siniaki, jednego guza i sporo niebieskiej farby. Nawet mój samochód zaliczył kulkę... Było zacnie :)

Czytaj dalej...