Escreva algum código que cause pânico no BSOD ou no kernel!
Regras:
- No Windows, você deve causar um BugCheck (tela azul da morte), no Linux (ou em outros sistemas * nix), você deve causar um pânico no kernel.
- Não deve danificar o sistema (ou seja, ele deve funcionar na reinicialização)
- Drivers no modo kernel são permitidos.
- Indique as informações do seu SO e versão.
- Explique como a falha é causada.
- Não é contra as regras usar ferramentas projetadas especificamente para causar uma falha, mas isso não é muito criativo!
- Voto mais alto ganha.
popularity-contest
Polinomial
fonte
fonte
1/0
um arquivo chamadodriver.c
não constitui um driver válido no modo kernel. Independentemente disso, o vencedor é baseado em votos positivos, não no tamanho do código.Respostas:
Bash, kernel Linux 2.6.20 x86
Aviso: o comando a seguir pode causar danos permanentes ao seu sistema.
Produzirá o seguinte ( tente aqui ). Depois disso, o script trava.
Aqui está outra exceção encontrada com o mesmo comando:
fonte
sudo rm -Rf /
. As chances de causar danos permanentes ao sistema usando esse método são menores do que as chances de, digamos, forçar brutalmente a saída de um conjunto de letras de músicas com base no hash do texto.C, 16 caracteres, para P5 x86
Lembre-se do bug F00F todo mundo? Ajudei a trancar uma máquina ou duas no passado com este pequeno programa. (Sim, eu tenho jogado golfe por tanto tempo.)
É verdade que não é exatamente o que foi solicitado, e só funciona nos antigos passos dos chips Pentium P5. Mas a seu favor, é multiplataforma, trabalhando em Linux e Windows!
fonte
QBASIC, 38 caracteres
Não tenho certeza de como você definiria um pânico no BSOD ou no Kernel no DOS, mas isso provavelmente é bem próximo. Quando executada, a tela fica em branco e a máquina não responde a nada, nem mesmo Ctrl + Alt + Delete. Você precisa reiniciar com uma reinicialização completa ou ciclo de energia para ligar novamente a máquina. Isso está sendo executado no DOS 6.22 no VirtualBox. Não sei exatamente por que causa o travamento do sistema, mas basicamente o programa está gravando (POKE) na memória para a qual não há negócios gravando.
fonte
COMMAND.COM
código do programa armazenados em endereços com pouca memória. Fonte: img.tfd.com/cde/MEMMAP.GIFsh (no JSLinux)
O Linux oferece ao processo init proteção especial contra sinais . No entanto, notei que no JSLinux,
/sbin/init
é um script de shell que executa outros binários (os mais simbolizados/bin/busybox
).Esse loop while "infinito" é reiniciado
sh
conforme necessário:No entanto, e se
/bin/true
nem sempre retornar um código de saída 0?/bin
está no sistema de arquivos raiz somente leitura, mas o Linux permite alterar isso usando montagens "bind":E temos:
fonte
Bash no Linux, 27 caracteres
Ou se você tiver permissões sudo:
fonte
sh: can't create /proc/sysrq-trigger: nonexistent directory
para mim. (embora isto seja em jsLinux, então eu provavelmente deve testar em uma caixa real)GTB , 13 caracteres
Executado a partir de uma calculadora TI-84
Se a maior parte da RAM estiver livre, ela travará com
ERR:MEMORY
Caso contrário, a RAM da calculadora está tão entupida que se desliga e a limpa.
fonte
+
,++
,++++
, etc. noStr0
. Isso me deuERR:MEMORY
, mas a tentativa de exibirStr0
o valor caiu instantaneamente com meus 84+. Além disso, isso me fez perder todos os meus programas.Lote (Windows 98)
Este é realmente um ovo de Páscoa BSOD do Windows 98 ...
fonte
No shell bash,
Não tenho tanta certeza se isso conta aqui, mas se você deixar a CPU sobreaquecer por tempo suficiente e travar o sistema e reiniciar com segurança sem causar danos, é claro que se você fizer isso o tempo todo, ocorrerá algum dano ao sistema.
fonte
/dev/mem
ou/dev/kmem
como desejar da raiz.Ruby (executado como root), 36 ou 40 caracteres (dependendo das correspondências para
/p*/s*r
)Veja http://www.kernel.org/doc/Documentation/sysrq.txt e procure
'c'
(incluindo aspas!) Para ver por que funciona.EDIT: versão mais longa que funciona se você tiver outras coisas correspondentes
/p*/s*r
EDIT 2: Intencionalmente exagero.
fonte
no PowerShell
fonte
Linux bash
Limpe toda a memória e cause um pânico infinito no kernel.
Experimente aqui .
fonte
s/zero/urandom/
.Lote, 15 bytes
Simplesmente transborda a memória em tempo linear, inicializando
cmd.exe
centenas e centenas e centenas e centenas e centenas e centenas e centenas e centenas e centenas e centenas e centenas e centenas e centenas e centenas e centenas e centenas e centenas e centenas e centenas e centenas e centenas e centenas e centenas e centenas e centenas e centenas e centenas e centenas e centenas e centenas de vezes.Há um mortal (mas provavelmente não concorrentes) programa de 24 bytes que inicia -se uma e outra vez, transbordando, assim, a memória no tempo logarítmica (ou seja, atualizar sua RAM não atrasar o acidente). Suponha que o código abaixo esteja localizado em
C:\a.bat
:.
Sinceramente, tenho medo de experimentar.
fonte
:() { : | : & }; :
@0
vez deC:\a.bat
?