Fork Bomb

Wpis zamieszczony o 23:49:36, 19 listopada 2006 Trackback


Fork Bomb - funkcja, która ma za zadanie tworzyć w geometrycznym tempie procesy potomne, które w szybkim czasie (ok 1 sekundy) całkowicie uniemożliwiają pracę na zaatakowanym sprzęcie. Wykonałem fork-bombę na 3 losowo wybranych spośród 7 posiadanych kont shellowych. Każdy z serwerów zawiesiłem dość skutecznie (a w 1 przypadku musiałem mówić "adminowi" co ma zrobić aby podnieść system...). Jak widać, jest to bardzo skuteczny sposób na destabilizację małych serwerków shellowych, gdzie admin nie ma pojęcia o takim sposobie ataku.

Aby uchronić się przed fork-bombą Admin musi zainteresować się pojęciem ulimits.
Przykładowy fork-bomb w bash'u:

:(){ :|:& };:



Wykonanie takiego kodu z konta użytkownika skutkuje.. A zresztą sami sprawdźcie ;-).

Komentarze do “Fork Bomb”


  1. ktoś Ci szela użycza a ty mu takie szopki robisz;]


  2. Miałem kilka shelli więc je potestowałem ;-). Już ich nie mam... ^^. Zastanowiło mnie czy u Ciebie by to poszło, chciałem z Tobą pogadać ale wiedziałem że zajrzysz na joggera ;-). Jakby co to się zabezpiecz.. ^^


  3. celowo nie ustawiam u siebie limitów, to potem w pracy przeszkadza;] a nikt obcy u mnie nie bywa...


  4. Oby wszyscy Admini mieli takie zaufanie do swoich userków to sieć byłaby piękniejsza :D. Pozdroofka! :D


  5. Cóz ja kiedyś u siebie wykonałem coś podobnego. Był to program w C, który forkował i forkował i forkował .... skutek nie był tak szybki jak Ty piszesz, ale było widać, że coś jest nie tak.


  6. Chyba jedną z najbardziej specyficznych własności funkcji fork() jest to, że po wywołaniu jej zarówno proces macierzysty - wywołujący fork'a - jak i proces potomny kontynuują wykonywanie programu od miejsca wywołania funkcji. Oczywiście możemy przy pomocy warunku dla parametrów jakie zwraca fork() określić czym mają zająć się "ojczulek" i "dzieciaczek". Nie trudno się jednak domyślić, co może się stać kiedy np. w pętli po utworzeniu potomka zaczniemy tworzyć kolejnych... nasz ulubiony błąd - segmentation fault - na zawołanie. A jak szybko nastąpi przepełnienie pamięci zależy już tylko od "cudownej" własności pomnażania się w kodzie forków jak królików na farmie i naszej inwencji twórczej jak to zastosujemy ;).

Dodaj komentarz

Textile jest włączony. Zobacz składnię (wiki.jogger.pl)

code