Mencari Password Dengan Kali Linux


Kali Linux adalah penerus distro BackTrack. Sama seperti BackTrack, distro ini dilengkapi dengan berbagai tools Linux untuk melakukan penetration testing. Dengan Kali Linux, pengguna yang melakukan pengujian keamanan tidak perlu repot men-install atau membuat kode program/script baru. Efek sampingnya: distro Linux seperti ini juga kerap disalahgunakan oleh script kiddie. Istilah script kiddie adalah sebutan untuk orang yang menjalankan tool dan mengikuti panduan tanpa memahami apa yang dilakukan oleh dirinya. Hal ini berbeda dari hacker yang memahami setiap aksi yang dilakukannya dan mampu membuat tool/script-nya sendiri. Dibutuhkan waktu bertahun-tahun untuk mempelajari jaringan komputer dan sistem komputer; script kiddie mengabaikan kenyataan ini dengan memakai tools atau panduan singkat yang ‘script kiddie’-friendly. Fakta bahwa script kiddie dapat men-download dan menjalankan tools yang ada di Kali Linux secara bebas menunjukkan bahwa ancaman terhadap keamanan komputer semakin besar.

Pada kesempatan ini, saya akan mencoba beberapa tool di Kali Linux yang dapat dipakai untuk mencari password (menguji apakah password aman). Sebagai percobaan, saya akan mencoba mencari password pada router yang saya pakai. Router tersebut (IP 192.168.1.1) memiliki interface web dengan memakai basic authentication dari HTTP.

Untuk mencari password router tersebut, saya dapat memakai tool yang ada di Applications, Kali Linux, Password Attacks, Online Attacks. Saya dapat menggunakan salah satu dari tool berikut ini: burpsuite, hydra, medusa, ncrack, patator, phrasendrescher. Tool tersebut pada dasarnya memiliki fungsi umum yang sama, hanya dibuat oleh pihak yang berbeda. Saya akan memakai tool hydra pada percobaan ini.

Secara garis besar, ada dua cara untuk menemukan sebuah password.

Cara pertama adalah dengan mencoba seluruh kombinasi password yang ada. Cara ini membutuhkan waktu yang sangat lama dan hampir mustahil bila pengguna memakai password yang panjang. Sebagai contoh, anggap saja pengguna membuat password 6 karakter yang terdiri atas huruf A sampai Z. Kombinasi password yang mungkin dapat dihitung dengan rumus 26^6 (26 x 26 x 26 x 26 x 26 x 26) dimana hasilnya adalah 308.915.776 kombinasi. Bila seandainya dalam 1 menit saya dapat memproses 600 kombinasi, maka waktu yang saya butuhkan untuk menemukan password adalah 514.859 menit atau 8.580 jam atau 358 hari. Butuh waktu hampir setahun. Ini masih belum menyertakan karakter seperti huruf kecil, angka dan simbol. Btw, kinerja brute force masih dapat ditingkatkan lagi dengan memakai mesin yang lebih cepat dan mendistribusikannya pada beberapa komputer yang berbeda.

Untuk melakukan brute force dengan hydra, saya dapat memberikan perintah seperti berikut ini:

# hydra -l admin -x 6:6:A 192.168.1.1 http-get /

Pada perintah di atas, saya menganggap nama user selalu adalah admin. Tool tersebut akan mencoba kombinasi 6 karakter dari seluruh huruf kapital A-Z. Bila saya ingin men-pause operasi brute force, saya dapat menekan tombol CTRL+C. Hydra akan membuat file hydra.restore di lokasi direktori yang sedang aktif. Untuk melanjutkan proses brute foce, saya cukup memberikan perintah berikut ini:

# hydra -R

Kesimpulannya: Walaupun teknik brute force memiliki hasil yang lebih pasti, ia membutuhkan waktu yang lama.

Cara kedua adalah dengan menggunakan daftar kata (dictionary attack). Pada metode ini, daripada mencoba kombinasi karakter yang mungkin, saya mencoba menggunakan password yang umum digunakan (misalnya berdasarkan daftar kata di kamus). Kali Linux sudah menyediakan daftar password umum di lokasi /usr/share/wordlists. Saya hanya perlu men-unzip-nya dengan perintah seperti berikut ini:

# cd /usr/share/wordlists/
# gunzip rockyou.txt.gz
# ls -l
total 136644
-rw-r--r-- 1 root root 139921507 Mar  3  2013 rockyou.txt

Selain itu, tool ncrack dilengkapi beberapa daftar password yang dapat saya pakai di tools lainnya. Saya dapat melihatnya dengan perintah seperti berikut ini:

# cd /usr/share/ncrack
# ls -hs
total 923K
6.5K common.usr
3.5K default.usr
512  minimal.usr
512  ncrack-services
402K top50000.pwd
46K  default.pwd
22K  jtr.pwd
385K myspace.pwd
58K  phpbb.pwd

Untuk menggunakan sebuah file berisi daftar kata sebagai password pada hydra, saya memberikan perintah seperti berikut ini:

# hydra -l admin -P /usr/share/wordlists/rockyou.txt 192.168.1.1 http-get /

Teknik ini tidak selalu berhasil, tetapi biasanya dicoba terlebih dahulu sebelum penyerang nekat menggunakan brute force.

Pada kategori Password Attacks, Online Attacks, juga ada tool seperti burpsuite, webscarab, dan zaproxy. Ketiganya adalah aplikasi Java dengan GUI yang bekerja sebagai web proxy yang dilengkapi fasilitas spider, scanner, dan sebagainya. Versi burpsuite yang ada pada Kali Linux adalah versi free edition dengan kemampuan yang lebih terbatas. Walaupun demikian, tab Intruder tetap dapat dipakai untuk mendefinisikan payload berdasarkan HTTP request yang di-capture oleh proxy tersebut. Pilih payload type berupa Brute forcer untuk melakukan brute force atau pilih Runtime file untuk melakukan dictionary attack berdasarkan file daftar kata. Sayangnya, pada versi free edition, terdapat batas waktu saat melakukan eksekusi ‘serangan’.

Kesimpulannya: Gunakan password dengan jumlah karakter yang panjang dan beberapa kombinasi karakter (huruf, angka, dan simbol) untuk menjaga password dari serangan brute force. Jangan memakai password umum seperti abc123, iloveu, h3av3n dan sebagainya karena mereka biasanya sudah terdaftar di kamus yang dipakai untuk dictionary attack. Selain itu, sebagai developer, jangan membolehkan pengguna untuk memasukkan password yang salah berkali-kali tanpa batas (karena bisa saja proses brute force atau dictionary attack sedang berlangsung).

Perihal Solid Snake
I'm nothing...

Apa komentar Anda?

Please log in using one of these methods to post your comment:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

%d blogger menyukai ini: