J'ai essayé le code de la bombe à fourche :
:(){:|:&};:
et a fermé la PuTTy. Maintenant, il n'accepte pas les nouvelles connexions (attaque par déni de service).
Comment puis-je m'en remettre ?
J'ai essayé le code de la bombe à fourche :
:(){:|:&};:
et a fermé la PuTTy. Maintenant, il n'accepte pas les nouvelles connexions (attaque par déni de service).
Comment puis-je m'en remettre ?
Vous devrez peut-être redémarrer l'ordinateur.
En supposant que vous ayez accès à la console, vous pouvez essayer d'obtenir l'ID du groupe de processus (PGID) et le tuer avec :
kill -- -PGID
Ou utilisez SIGKILL
代わりに SIGTERM
:
kill -9 -- -PGID
mais il se peut qu'il ne soit pas possible d'obtenir le PGID de manière pratique car le système peut être déjà occupé par les processus bifurqués, ce qui crée un blocage.
Ce blocage peut se produire lorsque le nombre de processus qu'un utilisateur ou un groupe peut posséder n'est pas suffisamment limité, Il est donc préférable de fixer une limite inférieure avant d'essayer quelque chose de destructeur comme une fourche-bombe.
Vous avez utilisé la classique "bombe à fourche" pour épuiser tous les processus de votre système, et maintenant vous ne pouvez pas faire en sorte que le système exécute un processus pour vous aider (et toutes les commandes, programmes, etc. nécessitent un processus à exécuter "dans"). Toute intervention devra venir de l'extérieur du système (par exemple, réinitialiser la VM, mettre le système sous tension, CtrlAltDelete). N'avez-vous pas compris ce que dit le code ?
:(){:|:&};:
:()
Définir une fonction Shell, appelée " :".
{
Commencez la définition de la fonction, qui est :
:
Appelez la fonction " :".
|
Transférer la sortie de " :"
:
à un autre appel à " :"
&
Fork un processus pour mettre le pipeline ( :|:
) en arrière-plan.
}
Fin de la définition de la fonction " :"
;
Fin de l'instruction Shell définissant la fonction " :".
:
Appelez la fonction " :" pour commencer.
Si vous exécutez un code sans le comprendre, vous acceptez les résultats de ce code.
Si vous ne peut pas Connectez-vous à nouveau, vous n'avez aucune chance. Vous pouvez peut-être attendre un out of memory error
Si vous peut se connecter, essayez la commande suivante
pkill -f :
Et comme vous l'avez dit dans vos commentaires
Je l'exécute dans une boîte virtuelle
Réinitialisez la machine via VirtualBox.
Selon este il devrait en théorie être possible d'utiliser Alt+SysRq+f pour se débarrasser des bombes à fourche - bien que, encore une fois, cela ne soit probablement possible que si le noyau est capable d'allouer suffisamment de mémoire pour le tuer.
SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.