[BSiTP] DDoS – czy tak straszny jak go malują?

Poniższy tekst jest częścią serii poświęconej Bezpieczeństwu Sieci i Testom Penetracyjnym.

W związku z zapowiedziami grupy Anonymous, którzy przygotowują atak na polskie instytucje, chciałbym omówić zagadnienie ataku DoS oraz DDoS.
// (nie)stety nie ma żadnych informacji o jakichkolwiek próbach zakłócenia pracy serwisów.

DoS? DDoS? Z czym to się je?

Ataki Denial oService oraz Distributed Denial oService są jednymi z najprostszych ataków na publiczne usługi sieciowe. Polegają na zalaniu atakowanego elementu infrastruktury taką ilością danych by przestała ona być dostępna dla innych użytkowników, na przykład przez wykorzystywanie całej przepustowości łącza, zasobów sprzętowych serwera czy wyczerpanie dostępnych interfejsów (które mogą być ograniczone notabene ze względu na bezpieczeństwo). Odmianą tego ataku DoS jest atak DDoS – polega on na tym samym, przy czym udział w ataku zamiast jednego używanego przez crackera, bierze znacznie więcej komputerów. Maszyny te mogą być dostarczone przez samych crackerów lub mogą być komputerami zombie – np. przez zainstalowanie na nich odpowiedniego oprogramowania bez wiedzy właściciela lub przez dołączenie komputera do botnetu. W chwili ataku wszystkie zainfekowane jednostki atakują jeden cel co pozwala osiągnąć znacznie lepszy efekt niż gdyby atak odbywał się z jednego komputera.

Najsłynniejsze polskie ataki tego typu w ostatnim czasie odbyły się podczas protestów przeciwko ACTA. Miałem możliwość wzięcia udziału w tym projekcie (jako bierny uczestnik – mieszkam w akademiku, więc namierzyć moje działania byłoby nietrudno, a nie miałem wystarczającej ilości czasu by odpowiednio zabezpieczyć moje połączenie) jednak widziałem, że w tamtym wypadku ataków dokonywali nowicjusze – ktoś mądry stworzył forum, na którym umieścił informacje jak dokonać ataku, ok. 3. tysięcy ludzi poszło za nim jak stado za baranem i zaczęli kolejno blokować dostęp do stron rządowych.*

Sposób działania:

Najprostszym sposobem jest wykorzystywanie implementacji ping – jest to polecenie, które wysyła do serwera (routera lub innego urządzenia warstwy trzeciej) malutki pakiecik informacji. Serwer otrzymując go ma za zadanie jak najszybciej odesłać go z powrotem do nadawcy. Pozwala to na określenie czasu jaki zajmuje pakietowi przebycie drogi od nadawcy do odbiorcy. W domyślnym sposobie działania wysyłany jest pojedynczy pakiet ping i proces oczekuje na jego powrót (aż do tzw. timeout’u, czyli przerwania polecenia z powodu zbyt długiego oczekiwania na odpowiedź, standardowo wartość ta ustawiona jest na kilka sekund). Jednak uruchamiając jednocześnie wiele procesów pingowania zostanie wyrzucona w eter duża liczba pakietów, na które serwer musi odpowiadać. Mnożąc to przez liczbę komputerów atakujących widać skalę problemu, z którym musi się zmierzyć serwer.

W założeniu polecenie ping ma ułatwić sprawdzanie stanu łączy, pozwala zidentyfikować czy serwer jest osiągalny oraz sprawdza czy określone łącze jest dostępne.

Można również wykorzystać bezpośrednie odwołania do zasobów serwera, np. ciągłe pobieranie obrazka ze strony lub jej odświeżanie, jednak znacznie łatwiej zabezpieczyć się przed takim atakiem. Podczas ataków używa się też innych protokołów i interfejsów.

Skutki

Jak już napisałem, skutkiem ataku jest jedynie ograniczenie dostępności serwera, w wypadku gorzej skonfigurowanych systemów spotyka się czasem przeciążenie maszyny, awaryjne wyłączenie usług lub wyłączenie całego systemu. Ułatwia to ochronę informacji i przeżycie „trudnego okresu”.
Należy pamiętać (o czym media nigdy nie wspominają), że tego typu atak nie prowadzi do ujawnienia haseł, kont, czy jakichkolwiek informacji, które normalnie nie są dostępne, jednak może wywołać podatność serwera na inny rodzaj ataku.

Sposoby zabezpieczenia przed zagrożeniem:

Można skonfigurować zapory sieciowe tak, by określonych pakietów (niepotrzebnych z punktu widzenia działania usługi sieciowej) nie przepuszczały, co ograniczy możliwości ataku. Można również automatycznie blokować użytkowników, którzy są zbyt nachalni lub ograniczyć im dostępne zasoby. Trzeba jednak pamiętać, że do urządzenia które pakiety filtruje nadal one docierają, na łączu panuje duży ruch i jego obciążenie. Nie istnieje więc „złoty środek”.

Inne rodzaje ataku DoS:

Istnieją również inne przykłady ataków, które można zaliczyć do tego typu ataków, jednak wymagają one pewnych uprawnień do korzystania z serwera przez co nie są tak publicznie dostępne jak proste odwoływanie się do serwera.

  • wykorzystanie limitu wolnych gniazd przy połączeniach TCP/UDP,
  • zapełnienie systemu plików,
  • wyczerpanie limitu aktywnych procesów na serwerze.

Mam nadzieję, że dzisiejsze ataki, jeśli wystąpią, nie spowodują następnej nagonki na rząd i nie staną się pretekstem do bezcelowych rozważań na temat bezpieczeństwa sieci.

Na koniec jedna uwaga: media same pomagają podczas ataku: czy gdy słyszycie, że jakaś strona padła ofiarą ataku nie próbujecie na nią wejść by samemu się o tym przekonać? Czy nie odświeżacie strony kilkukrotnie by sprawdzić czy już działa? Jeśli zrobi tak kilka(-dziesiąt) tysięcy ludzi serwery nawet nie zaatakowane muszą odczuć zwiększenie obciążenia, co powoduje takie same rezultaty jak opisywany tu atak.

Na tym skończę dzisiejszy artykuł. Mam nadzieję, że w wystarczającym stopniu omówiłem tu problem. Zachęcam do komentowania oraz oceniania artykułu (gwiazdeczki przy tytule).

*wyjaśnienie dlaczego negatywnie odnoszę się do tych ataków: niestety podczas rozkręcania inicjatywy celem były prywatne fora, serwery gier oraz inne strony, które zostały wpisane na tak zwaną czarną listę przez urażonych użyszkodników, którzy zapewne zostali źle potraktowani przez administratorów.

Jeżeli powyższy artykuł nie rozwiązał lub rozwiązał częściowo Twój problem, dodaj swój komentarz opisujący, w którym miejscu napotkałeś trudności.
Mile widziane komentarze z uwagami lub informacjami o rozwiązaniu problemu.
  • http://softwareos.it-host.pl krzysiek-mi

    Taki atak może wykończyć cały transfer

    Kiedyś pewna osoba zrobiła taki atak na moja stronę
    A że moja strona jest na hostingu gdzie jest limit transferowy taki atak wykończył mi cały transfer na cały rok

    Musiałem przez taki atak wykupić droży pakiet
    Teraz bardziej kontroluje zużycie transferu i sprawdzam jakie adresy IP mogą być zagrożeniem dla mojego transferu i strony

    • Kiro

      Czytałem niegdyś o przypadku gdy klient wykupił pakiet hostingowy i natychmiast serwer był obciążony a transfer uciekał. Okazało się, że poprzedni właściciel danego ip naraził się komuś przez co zaczęli obciążać stronę. Koniec końców musiał on zrezygnować z interesu, stronę zamknął, a nieszczęsny ip został przekazany nowemu pechowcowi.
      Historia kończy się dobrze: hosting zmienił klientowi adres ip a ten „zużyty” został tymczasowo zablokowany.

      • http://softwareos.it-host.pl krzysiek-mi

        Nie słyszałem o tym

        Za niedługo będę miał VPS bez limitu transferowego

  • Kuba

    Wkradła się literówka:
    Anonimous -> Anonymous

    • Kiro

      Dzięki za zwrócenie uwagi. Już poprawione.
      Pozdrawiam!