16.09.2013 | 23:38

Adam Haertle

Zbyt długie hasła okazały się skutecznym atakiem DoS

Popularna platforma programistyczna Django przeznaczona do tworzenia aplikacji internetowych okazała się podatna na ciekawy atak. Utworzenie zbyt długiego hasła użytkownika mogło spowodować tymczasową niedostępność serwera aplikacji.

Zewsząd słychać nawoływania do używania długich haseł i solidnych funkcji skrótu do ich przechowywania. Twórcy platformy Django wzięli sobie te nawoływania do serca, czego skutkiem okazał się łatwy do przeprowadzenia atak DoS. Wczoraj opublikowana została łatka dla platformy, usuwająca źródła problemu. Jak i czemu można było wyłączyć Django?

Po pierwsze, Django stosuje do przechowywania haseł funkcję skrótu PBKDF2. Charakteryzuje się ona możliwością łatwego zdefiniowania złożoności obliczeniowej, dzięki czemu można ją dostosowywać do rosnącej mocy kart graficznych i procesorów. Użycie tej funkcji wraz z odpowiednim parametrem złożoności (np. program do przechowywania haseł używa 10,000 iteracji) gwarantuje, że próby ataku będą bardzo kosztowne – zarówno w formie mocy obliczeniowej, jak i czasu.

Negatywną stroną dużej liczby iteracji jest długi czas obliczania funkcji w trakcie tworzenia konta lub weryfikacji podanego hasła. Z tym problemem spotkało się Django, którego autorzy nie pomyśleli o konieczności ograniczenia długości hasła. Gest wspaniałomyślny dla użytkowników (jak ktoś lubi hasło o długości megabajta, nie ma problemu), jednak serwery nie były zadowolone. Dwa dni temu jeden z użytkowników zwrócił uwagę na możliwość przeprowadzania ataków DoS przy użyciu bardzo długich haseł. Hasło o długości megabajta mogło zawiesić serwer na ok. minutę, a atak można było łatwo zautomatyzować. By uniknąć tego ryzyka długość hasła została ograniczona do rozsądnych 4096 bajtów. Przykład ten pokazuje, że nie zawsze dłuższe oznacza lepsze.

Powrót

Komentarze

  • 2013.09.17 00:00 A

    Długość nie zawsze lepsza, czasem lepsza większa ilość iteracji ;-)

    Odpowiedz
  • 2013.09.17 00:18 piatkosia

    A miał ktoś z was hasełko pow 128 znaków? Mi się tam nie zdarzyło – kto by to wpisywał;) Więc nie dziwi mnie fakt, że twórcy nie przewidzieli, że ta zmienna może osiągnąć tak wielkie rozmiary.
    PS ma ktoś z Was jako hasło Pana Tadeusza w txt?^^

    Odpowiedz
    • 2013.09.17 21:03 coldy

      Przy dzisiejszym dosyć mocnym rozpowszechnieniem przeróżnych managerów haseł nietrudno mieć hasło powyżej 128 znaków.

      Odpowiedz
  • 2013.09.17 17:12 Proximus

    Akurat wchodzę przez RSS na ten artykuł i bach strona nie chce się załadować 522 error :D

    Odpowiedz
  • 2013.09.18 17:42 linc0ln.dll

    Mam kilka haseł około 100 znaków (znaki specjalne, cyfry), pamiętam na pamięć. To nie problem.

    Odpowiedz

Zostaw odpowiedź do linc0ln.dll

Jeśli chcesz zwrócić uwagę na literówkę lub inny błąd techniczny, zapraszamy do formularza kontaktowego. Reagujemy równie szybko.

Zbyt długie hasła okazały się skutecznym atakiem DoS

Komentarze