Fork bomba

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

Principem fork bomby je neustávající dělení procesů Fork bomba je jedna z lokálních podob útoku typu odmítnutí služby. Jejím principem je zneužití běžného systémového volání fork, které slouží k spouštění dalšího procesu.

Protože systém má jen omezené množství prostředků, může v něm běžet jen omezené množství procesů. V rámci fork bomby je ovšem spuštěno rychlé a neomezené množení procesů. +more To má za následek jednak postupné zpomalování počítače, kterému dochází volná paměť i procesorový čas, jednak posléze povede k tomu, že některý ze zdrojů dojde. Následkem toho nelze pouštět další procesy a to obvykle znamená, že ani nelze pustit proces (například kill), který by fork bombu ukončil. Jediným řešením, jak obnovit normální chod, tak bývá nové nabootování.

Obrana

Jedním způsobem ochrany před fork bombou je limitovat počet procesů jednoho uživatele. Například v UN*Xových standardních příkazových interpretech je příkaz ulimit, který umožňuje nastavit maximální počet procesů.

Příklady

Bash

Jedním z nejznámějších příkladů fork bomby je následující třináctiznakový příkaz pro bash:

:{ :|:& };:

Ten je možné rozepsat:i

: # bude následovat definice funkce „:“ { # začátek definice : # spusť funkci : | # a její výstup pošli : # další instanci funkce : & # to vše na pozadí, takže konec nadřízené funkce neovlivní běh jejích dětí } # konec definice funkce : # Po definici následuje … : # … spuštění funkce :

Dávkový soubor ve Windows

Fork bomba je též možná vytvořit užitím dávkového souboru ve Windows. Jeho příkaz je: %0|%0 Tento příkaz rekurentně spouští sám sebe (%0 označuje jméno spuštěného souboru) a zahlcuje paměť systému novými procesy, dokud nedojde k pádu systému.

Perl

V Perlu je vytvoření fork bomby také snadné

fork while fork

Kategorie:Útoky typu DoS

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top