Comment rendre un système instable et se protéger des bombes fork
Par Korben le 1 août 2008

Saviez vous qu’il était très simple de mettre à genou un système linux avec une simple commande que tout le monde peut lancer sans être root ?
Techniquement, ça s’appelle une bombe fork. Ca surcharge votre système (Ddos) en créant un grand nombre de processus, ce qui va monopoliser toutes les ressources disponibles de la machine.
:(){ :|:& };:
Bien que non dangereuse, cette commande peut donc rendre votre système fortement instable, vous obligeant à rebooter la machine.
Pour l’éviter, une seule solution : Limiter la quantité de ressources disponible qu’un groupe ou qu’un utilisateur peu s’octroyer.
Ce se configure dans le fichier /etc/security/limits.conf
Voici ce qu’on peut y trouver :
korben hard nproc 300 @mongroupe hard nproc 300
Dans l’exemple ci dessus, j’ai limité l’utilisateur Korben à 300 processus maximum. Idem avec le groupe d’utilisateurs “mongoupe”.
Une fois cette modification effective, si vous voulez retester la chose, relancez la commande maudite
::(){ :|:& };:
Vous saurez tout de suite si vous avez fait les bons réglages. Vous trouverez plus d’infos sur le fonctionnement du fichier limits.conf ici.
Attention, j’ai parlé de linux car il s’agit ici d’une commande bash mais les systèmes qui utilisent Perl ne sont pas en reste :
perl -e "fork while fork" &
Tout comme ceux utilisant le Python :
import os
while(1):
os.fork()
Et bien sûr Vista ou Windows XP avec un simple .bat peut se retrouver vite saturé de cette façon
:bomb start %0 goto bomb
ou de cette façon :
%0|%0
Et si vous aimez le C (pour le porter sur plusieurs plateformes), voici le petit bout de code à compiler :
#include
int main() { while(1) fork(); }
Bref, que du bonheur ces Fork Bombs ! Faites en bon usage et pensez à vous protéger. (Sous Windows, je n’ai aucune idée de comment éviter cela… alors si vous avez des techniques, n’hésitez pas à les partager avec tout le monde)
[photo]
Je vous recommande aussi la lecture des sujets suivants
- Comment obtenir tous les droits sous XP
- Comment bien compiler un exploit
- VirtualBox 1.5 et la virtualisation seamless
- Après 5 ans, voici une nouvelle version de Perl
- Empêcher le redemarrage après un Windows Update






Greg
J’adore les images d’illustration à chaque fois…
Posté le 1 août 2008 à 22:49:51
plop
pour linux c’est facile il faut utiliser /etc/security/limits.conf qui limite le nombre de process par personne/groupe.
Pour xp ou vista …. ça ne s’utilise pas pour du multiutilisateur/machine donc à part si l’utilisateur veut planter ça propre machine … :-p
Posté le 1 août 2008 à 23:00:50
plop
quelle boulet j’ai pas lu tout le post ….
Désolé ……
Posté le 1 août 2008 à 23:02:52
Korben
@plop: Arf !
Posté le 1 août 2008 à 23:05:28
AbriCoCotier
Ben je croyais que tu étais en vacances Korben !
Posté le 1 août 2008 à 23:11:18
Korben
@AbriCoCotier: bah ouiiiiiii
Posté le 1 août 2008 à 23:36:03
shadeone
aaah les boucles infinies…

la commande que tu cites est apparue dans les années 2000, c’est une version élégante et en une seule ligne de trucs qui circulaient depuis un moment, en plusieurs lignes
au CICT ils s’en souviennent, je peux te l’assurer
Posté le 2 août 2008 à 02:43:59
Enak
Je veux pas prendre le risque de tester ces bombes fork car mon vista est déjà suffisamment instable comme ça.
Mais quelle est la réelle utilité a part se faire planter ou se faire attaquer ?
Posté le 2 août 2008 à 12:25:24
Rahim
EH eh, connu, très connu mais toujours aussi marrant, après, on en fait une petite bombe logique et PAF :D… rooh, je suis méchant…
Posté le 2 août 2008 à 19:43:04
luludusix
il y a une autre manip pour faire crasher win xp ou vista avec cette comande
faite un .bat et metez
start virus.bat
virus.bat
et enrgistrez le virus.bat
et double cliqué et paf un milion de comande vienent sur vos yeux
Posté le 13 août 2008 à 10:53:49
luludusix
et tuent votre xp un un petit bout de temps

et un miliard de comande qui essaient de demarer virus.bat!!!!!
sinon c’est marant ou avec vista on peut faire ça
crer un nimpt.bat
dedans
start nimpt.bat
nimpt.bat et enregistrer n’importe ou
et paf des coomande foolent aparaisent pour killer vista!!
:p
Posté le 15 août 2008 à 16:41:08
Winsa
Une bonne blague à faire entre admin réseaux ! ^^
Posté le 2 septembre 2008 à 02:07:49