user@linuxtrack:~ $ python -c 'print("Soyez les bienvenus !")'

Vous n'êtes pas identifié(e).

#1 04-08-2013 09:50:33

IceF0x
#! Gourou Linux

se protéger des forks bomb

== Description ==

Un fork bomb pour ceux qui ne le savent pas est une attaque par déni de service, en clair il s'agit d'un truc qui créé un grand nombre de processus en un cours lapse de temps pour saturer la liste des processus du système d'exploitation. Inutile de préciser que lorsque cela arrive, votre machine est complètement inutilisable, un ralentissement du système et des logiciels est alors constaté, puis ils deviennent inutilisable.

Ce genre de "gadget" est utilisé pour les attaques de serveurs, mais il arrive que ce soit l'utilisateur qui le créé lui même en se trompant dans une programmation ou qui le mette en copiant collant un script.

== Exemple ==

Certains se demande a quoi ressemble un fork bomb

Ne faites aucune des commandes qui suivent, sinon votre système en subira les conséquences, ce sont des exemples pour vous montrez a quoi peut ressembler un fork bomb.

Pour le shell bash

:(){ :|:& };:

En perl dans le terminal

perl -e "fork while fork" &

== Explication ==

:()

- défini une fonction appelée :.
Cette fonction n'accepte pas d'argument.
La syntaxe de la fonction en bash est la suivante:

foo(){
 arg1=$1
 arg2=$2
 echo 'Bar..'
 #do_something on $arg argument
}

Le bomb fork() est défini comme suit:

:(){
 :|:&
};:

Donc votre fonction se nomme ":" est est dans sa propre fonction soumise à se rappeler elle même par le biais d'un pipe "|" ensuite on utilise un "&" pour la faire tourner en arrière plan.
Ensuite on met fin à la définition de la fonction avec ";" et on la rappelle par son nom ":".

Voici le code plus lisible pour un humain:

bombe () {
  bombe | bombe &
 }; Bombe

== Configuration ==

Ce protéger de cela n'est pas très compliqué sur Ubuntu (cela est valable pour tous les GNU/linux, bien sur, adapter la commande pour éditer le fichier suivant votre système), il suffit de limiter un nombre de processus que l'utilisateur peut exécuter lors d'une session.

Il suffit d'éditer le fichier etc/security/limits.conf

dans le terminal :

gksudo gedit /etc/security/limits.conf

Si vous utilisez gedit comme éditeur de texte, mais vim, nano ou leafpad feront très bien l'affaire.

ajouter cette ligne dans le fichier qui vient de s'ouvrir

*              hard    nproc           500

juste avant la ligne la fin du fichier

* veux dire dans tout les domaine, hard défini le type, nproc défini l'élément et 500 la valeur, c'est à dire correspond au nombre de processus que vous acceptez, vous pouvez le modifier si vous savez ce que vous faites.

redémarrer  et dans le terminal faites cette commande :

ulimit -u

si la réponse est 500, votre changement a bien été pris en compte  :ok:

== Voir aussi ==

  * **(en)** http://www.cyberciti.biz/faq/understand … fork-bomb/
  * **(en)** http://www.cyberciti.biz/tips/linux-lim … ocess.html


Utiliser des logiciels propriétaires, c'est comme les plats préparés, on est incapable de dire les conservateurs qu'ils contiennent, on dira toujours que c'est bon, mais ça ne remplacera jamais le repas fait maison par sa maman.
]:D #! Crunchbang & Archlinux GNU/Linux User ]:D

Hors ligne

#2 16-08-2013 21:33:34

Yzeew
Membre d'or

Re : se protéger des forks bomb

Merci , très intéressant comme info..  perso je ne connaissais pas " forks bomb " hmm


>> Good things come to those who, Wait.. <<

>> sip:yzeew@ekiga.net << and >> #Pouni3 <<

Hors ligne

#3 03-09-2013 20:14:02

penthium2
Modérateur

Re : se protéger des forks bomb

très agréable et plus facile a comprendre que la page wikipedia.


vi est mon ami pour la vie
Viperr
Ph'nglui nglw-nafh Cthulhu R'lyeh wgah-nagl fhtagn

Hors ligne

Pied de page des forums