¿Es posible provocar un kernel panic con una sola línea de comando?
¿Cuál sería el comando más directo para un usuario de sudoing y cuál sería para un usuario normal, si lo hubiera?
Los escenarios que sugieren descargar algo como parte del comando no cuentan.
command-line
kernel
kernel-panic
Desmond Hume
fuente
fuente
:(){ :|:& };:
¿tal vez?:()
define una función llamada:
con el cuerpo de:|:&
, que significa "ejecutar: y también ejecutar: en segundo plano".;
finaliza la definición de la función y:
llama a su nueva función, que genera infinitas versiones nuevas de sí misma hasta que alcanza los límites del proceso o el sistema se detiene. Es un comando que congela efectivamente cualquier sistema sin establecer buenos límites de proceso. No intentes esto en casa.dd if=/dev/urandom of=/dev/mem
(dependiendo de la versión de su núcleo, es posible que no tenga/dev/kmem
). Pero no usaría el sistema después de eso. :)Respuestas:
FreeBSD:
Linux (más información aquí ):
fuente
echo c > /proc/sysrq-trigger
seguro que hace un buen trabajo al congelar un sistema Linux. Pero personalmente, una vieja pantalla negra de la muerte que narra sobre un desarrollo dramático de la pila de llamadas se sentiría como un pánico del núcleo más "canónico".echo 1 > /proc/sys/kernel/sysrq
antes de poder hacerloecho c > /proc/sysrq-trigger
.Compila un módulo que bloquea el núcleo al llamar a la
panic
función, necesita root, requieremake
ygcc
reemplaza el "desbordamiento de búfer en 0x4ba4c73e73acce54" en el comando con algo interesante para más drama.
fuente
apt-get install kdump-tools
en Raspbian / Debian.El núcleo está destinado a seguir funcionando sin importar qué. Entonces, cualquier forma de causar un pánico en el núcleo por la interacción del usuario (aparte del vandalismo deliberado por parte de una raíz todopoderosa, como Bruce Ediger propone jokinkly, y la mayoría de los núcleos de hoy en día están construidos para que la mayoría de esas bromas no funcionen en primer lugar) error extremadamente grave, que se solucionaría rápidamente.
fuente
:(){ :|:& };:
./etc/security/limits.conf
archivo.No sé por qué esto no se mencionó antes ...
Pánico con el mensaje "intentó matar a init".
fuente
Prueba esto:
Esto provocó un pánico muy rápido en el kernel para mí, pero no estoy seguro de cuán seguro es el proceso porque lo hice en la instalación en vivo de Ubuntu. Pero el núcleo me envió mensajes de error de spam cuando lo hice en el entorno de terminal puro.
fuente
compile el siguiente código en un módulo e insmodéelo, asegúrese de que entre en pánico:
fuente
oops
pánico, pero no pánico.Lo más fácil es mantener presionada la tecla alt + imprimir pantalla (sysrq) y presionar c mientras las mantiene presionadas. Hace lo mismo que
echo c > /proc/sysrq-trigger
una pequeña explicación: la tecla sysrq se usa para enviar comandos de bajo nivel al núcleo mismo, como último recurso. para intentar salvar el sistema. Si mantiene presionada la tecla alt + print (sysrq) y presiona otra tecla junto a ellas, hace lo mismo que si hiciera eco de la tecla en ese archivo sysrq-trigger. Lo llaman disparador por una razón; 3 La 'c' le dice al kernel que se bloquee (provoca un pánico en el kernel)Sin embargo, es posible que desee ver el contenido de 'proc / sys / kernel / sysrq'. Si es 178 o cualquier otra cosa, debe cambiarlo a 1. 0 está deshabilitado, 1 está habilitado y cualquier cosa mayor que 1 es un mapa de bits para las cosas específicas que el núcleo permite hacer con sysrq.
fuente