Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Una fork bomb (bomba fork) es una forma de ataque del tipo denial-of-service (DoS) o
denegación de servicio, utilizada contra sistemas basados en Unix. Como su nombre lo
indica, utiliza la operación fork, donde un proceso crea una copia de sí mismo.
La conocida cadena :(){ :|:& };: no es nada más que una función de bash, la cual se ejecuta
recursivamente. Comúnmente, es utilizada por sysadmins para testear limitaciones sobre
usuarios en cuanto a cantidad de procesos que pueden ejecutar en un servidor.
foo(){
arg1=$1
arg2=$2
echo 'Bar...'
#do_something on $arg argument
}
Copy
:(){
:|:&
};:
Copy
& - Pone el llamado de la función en background de manera que los procesos hijos (copias)
no mueran y así se comen los recursos del sistema.
bomb() {
bomb | bomb &
}; bomb
Copy
Un sistema Unix correctamente configurado no debería caerse cuando se dispara una fork
bomb.
Previniendo una fork bomb en Linux
Una posible forma de prevenir el ataque es limitando el numero de procesos que pueden
correr los usuarios. La información de la cantidad máxima actual se puede obtener
ejecutando el siguiente comando:
ulimit -u
Otra forma:
ulimit -a
El número 50922 indica que el usuario puede correr 50922 procesos. Para proteger el
sistema de una fork bomb, es necesario disminuir dicho valor. Para limitar la sesión a, por
ejemplo, 5000 procesos, se utiliza el siguiente comando:
ulimit -S -u 5000
Copy
De esta forma, estaríamos evitando este tipo de ataques. Se puede ver además, corriendo
el comando pgrep, la cantidad límite (actual) the threads:
Copy
Salida de ejemplo:
5002
Copy
Ahora podes comprar la remera forkbomb en la tienda de sysarmy o el sticker pack con la
forkbomb y explicarle a todos que significa!
← Las noticias de Marzo 2021! - Polémica en /var S05E02 SQLite no es una base de datos
de juguete →
Comentarios
sysarmy:~ blog$
© 2021 Powered by Hugo Theme created by panr