Fork bomb, Malware Wiki, fandom alimenté par Wikia
« Votre ordinateur a été saccagé après plusieurs charges utiles. Maintenant, le profiter Nyan Cat. »
Cette page contient plusieurs questions. Vous pouvez aider les logiciels malveillants Wiki en résolution de ces problèmes.
Le concept derrière la bombe fourche: les processus fourche récursive jusqu'à ce qu'un déni de service ou un accident se produit
Non seulement les bombes à fourche utilisent l'espace dans la table de processus: chaque processus enfant utilise encore le processeur temps et de la mémoire. En raison de cela, le système et les programmes existants ralentissent et deviennent beaucoup plus insensibles et difficile, voire impossible à utiliser.
Exemple bombes à fourche
Comprendre ce qui précède:
Java peut également être utilisé, bien que la bombe fork ne fonctionnera que si l'exécutable javaw est sur le chemin. Cette bombe fourche peut être arrêté de se multiplier en supprimant le fichier de classe utilisé pour l'exécuter, bien que cela ne mettra pas fin toutes les instances de la bombe à fourche qui ont déjà commencé.
Difficulté de guérison
Cependant, dans la pratique, les administrateurs système peuvent supprimer certaines de ces bombes fourchette relativement facilement. Pensez à la bombe à fourche shell illustré ci-dessous:
Une importante « caractéristique » dans ce code signifie qu'un processus de fork bomb qui ne peut plus ne fourchette colle pas autour, mais plutôt des sorties. Si nous essayons assez souvent, par la suite, nous allons commencer un nouveau processus rien do; Chaque nouveau processus, rien ne courons-nous réduit le nombre de processus rampants « bombe » fourchette par un, jusqu'à ce que finalement nous pouvons éradiquer tous, à quel point les processus do-rien ne peut sortir. Le court suivant Z Code Shell sera généralement se débarrasser de la bombe fourchette ci-dessus à environ une minute:
Sinon, l'arrêt ( « gel ») les processus de la bombe peuvent être utilisés de telle sorte qu'un kill / killall ultérieure peut y mettre fin, sans aucune des parties re répliquant en raison de créneaux horaires de processus nouvellement disponibles:
La prévention
Notez qu'une bombe accidentelle fourchette est très improbable d'impliquer plus d'un utilisateur. Un patch du noyau Linux existe - appelé grsecurity - qui permet l'enregistrement dont l'utilisateur a lancé une bombe de fourche. [2]
les systèmes de type Unix ont typiquement un processus de limite, commandé par une commande shell ulimit. [3] Les noyaux Linux définir et appliquer la rlimit RLIMIT_NPROC ( « limite des ressources ») d'un processus. Si un processus tente d'effectuer une fourchette et l'utilisateur qui possède ce processus possède déjà plus de processus de RLIMIT_NPROC, puis la fourche échoue. De plus, sous Linux ou * BSD, on peut modifier le fichier de configuration pam_limits: /etc/security/limits.conf [4] dans le même sens. Cependant, toutes les distributions de Linux ont pas le module pam_limits installé par défaut.
Une autre solution, pas largement pratiquée, consiste à la détection de bombes à fourche par le système d'exploitation. Le module du noyau Linux appelé rexFBD [5] met en œuvre cette stratégie.
Sur FreeBSD l'administrateur système peut imposer des limites à login.conf [6] pour chaque utilisateur, empêchant d'utiliser trop de processus, la mémoire, le temps et d'autres ressources.