Tulis beberapa kode yang menyebabkan BSOD atau kernel panik!
Aturan:
- Pada Windows, Anda harus menyebabkan BugCheck (Layar Biru Kematian), di Linux (atau sistem * nix lainnya), Anda harus menyebabkan kepanikan kernel.
- Tidak boleh merusak sistem (artinya harus bekerja saat reboot)
- Driver mode kernel diizinkan.
- Nyatakan informasi OS dan versi Anda.
- Jelaskan bagaimana kecelakaan itu disebabkan.
- Itu tidak melanggar aturan untuk menggunakan alat yang secara khusus dirancang untuk menyebabkan kerusakan, tetapi melakukannya tidak terlalu kreatif!
- Suara terbanyak menang.
popularity-contest
Polinomial
sumber
sumber
1/0
file yang disebutdriver.c
bukan merupakan driver mode kernel yang valid. Apapun, pemenang didasarkan pada upvotes, bukan panjang kode.Jawaban:
Bash, x86 Linux 2.6.20 kernel
Peringatan: perintah berikut dapat menyebabkan kerusakan permanen pada sistem Anda.
Akan menampilkan yang berikut ( coba di sini ). Setelah ini, skrip hang.
Berikut adalah pengecualian lain yang ditemukan dengan perintah yang sama:
sumber
sudo rm -Rf /
. Kemungkinan menyebabkan kerusakan permanen pada sistem menggunakan metode ini kurang dari peluang, katakanlah, brute-forcing output dari serangkaian lirik lagu berdasarkan hash dari teks.C, 16 karakter, untuk P5 x86
Ingat bug F00F semua orang? Saya membantu mengunci satu atau dua mesin pada hari itu dengan program kecil ini. (Ya, saya sudah bermain golf selama itu.)
Memang, itu tidak cukup apa yang diminta, dan itu hanya bekerja pada steppings lama dari chip P5 Pentium. Tetapi dalam mendukungnya, ini cross-platform, bekerja pada Linux dan Windows!
sumber
QBASIC, 38 Karakter
Tidak yakin bagaimana Anda akan mendefinisikan panik BSOD atau Kernel di DOS, tapi ini mungkin cukup dekat. Ketika menjalankan layar hanya kosong, dan mesin tidak menanggapi apa pun, bahkan Ctrl + Alt + Delete. Anda harus memulai ulang dengan hard reset atau siklus daya untuk menjalankan mesin lagi. Ini berjalan pada DOS 6.22 di bawah VirtualBox. Tidak yakin persis mengapa hal itu menyebabkan sistem crash, tetapi, pada dasarnya program ini menulis (POKE) ke memori yang tidak ada tulisan bisnisnya.
sumber
COMMAND.COM
kode program yang disimpan dalam alamat memori rendah. Sumber: img.tfd.com/cde/MEMMAP.GIFsh (dalam JSLinux)
Linux memberi init proses perlindungan khusus terhadap sinyal . Namun, saya perhatikan bahwa di JSLinux,
/sbin/init
adalah skrip shell yang mengeksekusi binari lainnya (paling mirip dengan/bin/busybox
).Loop "tak terbatas" ini dimulai ulang
sh
sesuai kebutuhan:Namun, bagaimana jika
/bin/true
tidak selalu mengembalikan kode keluar 0?/bin
ada pada sistem file root read-only, namun Linux memungkinkan kita mengubahnya dengan menggunakan mount "bind":Dan kita mendapatkan:
sumber
Bash di Linux, 27 karakter
Atau jika Anda memiliki izin sudo:
sumber
sh: can't create /proc/sysrq-trigger: nonexistent directory
bagi saya. (Meskipun ini dalam jsLinux, jadi saya mungkin harus menguji pada kotak nyata)GTB , 13 karakter
Dieksekusi dari kalkulator TI-84
Jika sebagian besar RAM gratis, itu akan rusak
ERR:MEMORY
Jika tidak, RAM kalkulator sangat tersumbat sehingga mati dan membersihkannya selain itu.
sumber
+
,++
,++++
, dll diStr0
. Itu memberi sayaERR:MEMORY
, tetapi mencoba untuk menampilkanStr0
nilai langsung crash 84+ saya. Juga, ini membuat saya kehilangan semua program saya.Batch (Windows 98)
Ini sebenarnya adalah Telur Paskah BSOD dari Windows 98 ...
sumber
Dalam bash shell,
Saya tidak begitu yakin apakah ini diperhitungkan di sini, tetapi jika Anda membiarkannya berjalan cukup lama, CPU menjadi terlalu panas dan sistem macet, dan ia melakukan boot ulang dengan aman tanpa membahayakan, tentu saja jika Anda melakukannya sepanjang waktu akan ada beberapa kerusakan sistem.
sumber
/dev/mem
atau/dev/kmem
seperti yang saya inginkan dari root.Ruby (jalankan sebagai root), 36 atau 40 karakter (tergantung kecocokan untuk
/p*/s*r
)Lihat http://www.kernel.org/doc/Documentation/sysrq.txt dan cari
'c'
(termasuk tanda kutip!) Untuk mengetahui mengapa ia bekerja.EDIT: Versi yang lebih panjang yang berfungsi jika Anda memiliki hal-hal lain yang cocok
/p*/s*r
EDIT 2: Pembunuhan berlebihan yang disengaja.
sumber
di PowerShell
sumber
Linux bash
Kosongkan seluruh memori dan menyebabkan panik kernel yang tak terbatas.
Coba di sini .
sumber
s/zero/urandom/
.Batch, 15 byte
Hanya meluap memori dalam waktu linier dengan memulai
cmd.exe
ratusan dan ratusan dan ratusan dan ratusan dan ratusan dan ratusan dan ratusan dan ratusan dan ratusan dan ratusan dan ratusan dan ratusan dan ratusan dan ratusan dan ratusan dan ratusan dan ratusan dan ratusan dan ratusan dan ratusan dan ratusan kali.Ada program 24-byte yang lebih mematikan (tapi mungkin tidak bersaing) yang memulai sendiri berulang-ulang, sehingga meluap memori dalam waktu logaritmik (yaitu meningkatkan RAM Anda tidak menunda crash). Misalkan kode di bawah ini terletak di
C:\a.bat
:.
Jujur saya takut untuk mencobanya.
sumber
:() { : | : & }; :
@0
bukanC:\a.bat
?