É possível causar pânico no kernel com uma única linha de comando?
Qual seria o comando mais simples para um usuário sudoing e qual seria para um usuário comum, se houver?
Os cenários que sugerem o download de algo como parte do comando não contam.
command-line
kernel
kernel-panic
Desmond Hume
fonte
fonte
:(){ :|:& };:
talvez?:()
define uma função chamada:
com o corpo de:|:&
, significando "executar: e também executar: em segundo plano".;
finaliza a definição da função e:
chama sua nova função, que gera inúmeras versões de si mesmo até você atingir os limites do processo ou o sistema parar. É um comando que congela efetivamente qualquer sistema sem estabelecer bons limites de processo. Não tente isto em casa.dd if=/dev/urandom of=/dev/mem
(dependendo da sua versão do kernel, você pode não ter/dev/kmem
). Mas eu não usaria o sistema depois disso. :)Respostas:
FreeBSD:
Linux (mais informações aqui ):
fonte
echo c > /proc/sysrq-trigger
certamente faz um bom trabalho no congelamento de um sistema Linux. Mas, pessoalmente, uma boa tela preta da morte narrando um desenvolvimento dramático da pilha de chamadas pareceria um pânico mais "canônico" no kernel.echo 1 > /proc/sys/kernel/sysrq
antes de poderecho c > /proc/sysrq-trigger
.Compila um módulo que trava o kernel chamando a
panic
função, precisa de root, requermake
egcc
Substitua "buffer overrun at 0x4ba4c73e73acce54" no comando por algo interessante para mais drama.
fonte
apt-get install kdump-tools
no Raspbian / Debian.O kernel deve continuar funcionando, não importa o quê. Portanto, qualquer maneira de causar pânico no kernel pela interação do usuário (que não seja vandalismo deliberado por raiz onipotente, como Bruce Ediger propõe jokinkly, e a maioria dos kernels atualmente são construídos para que a maioria dessas brincadeiras não funcione) é um erro extremamente sério, que seria corrigido rapidamente.
fonte
:(){ :|:& };:
./etc/security/limits.conf
arquivo.Não sei por que isso não foi mencionado antes ...
Pânico com a mensagem "tentou matar o init".
fonte
Tente o seguinte:
Isso causou um pânico muito rápido no kernel para mim, mas não tenho certeza de quão seguro é o processo, porque o fiz na instalação ao vivo do Ubuntu. Mas o kernel enviou mensagens de erro de spam para mim quando o fiz no ambiente terminal puro.
fonte
compile o código a seguir em um módulo e insmod ele, certifique-se de entrar em pânico:
fonte
oops
um pânico, mas não um pânico.O mais fácil é manter pressionada a tecla alt + print screen (sysrq) e pressionar c enquanto ainda as mantém. Faz o mesmo que
echo c > /proc/sysrq-trigger
Uma pequena explicação: a tecla sysrq é usada para enviar comandos de baixo nível ao próprio kernel, como último recurso para tentar salvar o sistema. Se você mantiver a tecla alt + print screen (sysrq) pressionada e pressionar outra tecla ao lado deles, fará o mesmo como se você repetisse a tecla nesse arquivo de acionador sysrq. Eles chamam de gatilho por uma razão; 3 O 'c' diz ao kernel para travar (causa pânico no kernel)No entanto, você pode querer ver o conteúdo de 'proc / sys / kernel / sysrq'. Se for 178 ou qualquer outra coisa, você deve alterá-lo para 1. 0 está desativado, 1 está ativado e qualquer coisa maior que 1 é um bitmap para as coisas específicas que o kernel permite fazer com o sysrq.
fonte