Technology News
Mari kita membuat trojan. Oh ya, ini full tutorial untuk ilmu semata, jika disalahgunakan saya tidak akan bertanggung jawab. Orang bijak tidak bajak. Bagi yang belum tau apa itu trojan, silakan baca teori trojan yang sangat bagus dan detail di ezine ini. Di kesempatan kali ini, kita akan belajar membuat dan memahami cara kerjanya. Untuk memulai tutorial ini, diharapkan pembaca sudah memiliki program Metasploit Framework yang akan selalu digunakan pada tutorial kali ini. Sebagai catatan, host pemilik trojan dan penyerang akan diperankan oleh (halah kayak pentas drama aja hahah) mesin Linux Slackware dengan IP address 10.100.254.213, sedangkan korban trojan akan diperankan oleh Windows 7 Ultimate dengan IP address 10.100.239.225.
Kita akan full menggunakan Metasploit Framework untuk membuat trojannya. Maka dari itu, tentu saja payload trojan yang akan kita gunakan adalah payload shell dari Metasploitnya. Ada dua tipe koneksi trojan pada metasploit yang kita gunakan pada tutorial ini yaitu bind dan reverse. Pada payload jenis bind, akan dibuka port 4444 pada target dan target yang akan melakukan listen di port komunikasi ini. Jadi command yang dikirim oleh pemilik trojan akan dikirim melalui port 4444.
Untuk percobaan jenis koneksi seperti di atas, berarti kita akan menggunakan payload jenis bind_tcp Metasploit, tetapi agak beda dengan teori gambar di atas, untuk percobaan ini dicoba bukan ke port 4444 tapi ke port 19191:
msfpayload windows/shell/bind_tcp LPORT=19191 X > /tmp/a.exe
Maksud command msfpayload di atas adalah menggenerate payload windows/shell/bind_tcp yang listen di port 19191 dan bertipe exe dan outputnya disimpan di /tmp/a.exe. Selanjutnya file trojan a.exe ini akan dipindahkan ke user Windows untuk di eksekusi. Di bawah ini adalah program a.exe yang telah di eksekusi user Windows:
Sementara itu di box Linux penyerang (pemilik trojan), dipasang exploit handler yang akan berinteraksi dengan port 4444 target:
Pada exploit di atas ini, hanya dilakukan setting host target dan listen portnya (host Windows 10.100.239.225:19191). Yak! tuh dari gambar di atas kita sudah masuk shell Windows kan? Sementara itu netstat di komputer korban adalah sebagai berikut:
Cara seperti ini adalah cara jika pada mesin target tidak memiliki firewall. Kalau saja ada firewall dan firewallnya dikonfigurasi dengan secure, tentu saja koneksi tidak akan tercipta. Dari inbound, tentu saja firewall memfilter koneksi yang datang ke host target (apakah mengizinkan koneksi ke port 19191?). Dari sisi outbound, lagi-lagi firewall tentu memfilter koneksi yang keluar dari target.
Untuk itu ada tipe koneksi kedua, yaitu reverse. Koneksi reverse akan membuat korban yang menginisiasi koneksi ke listen port yang terletak di mesin penyerang sendiri. Solusi agar bisa bypass firewall digambarkan sebagai berikut:
Langsung ke prakteknya saja untuk reverse, dimulai dari tahap membuat trojannya:
Command di atas, sekali lagi menggunakan msfpayload untuk generate trojan shell reverse yang listen di host 10.100.254.213 dengan listen port 80. Hasil generate trojan bernama b.exe. Setelah b.exe di pindahkan ke mesin Windows dan di eksekusi, beginilah netstat Windows target sekarang:
Sementara itu di host penyerang jalankan handlernya dan voila, shell target muncul dan itu berarti payload kita lolos dari filter firewall port 80.
Trojan b.exe juga bisa digunakan untuk hacking di scope WAN/Internet karena mekanisme payload ini menggunakan port 80, port yang umumnya diizinkan firewall untuk masuk atau keluar. Sekian tutorial membuat trojan menggunakan payload pada Metasploit plus logika cara kerja connect bind dan reverse. Dengan menggunakan kreatifitas, trojan a.exe dan b.exe di atas bisa dimodif agar lebih ampuh berdaya guna (pada kesempatan lain akan di bahas), misalnya:
- Dibinding dengan file-binder agar menjadi satu file executable dengan file lain (misalnya disatukan dengan notepad.exe)
- Dienkripsi sehingga bisa lolos dari deteksi signature antivirus
- Template .exe nya dibuat mirip dengan file exe tertentu (misalnya dengan file game minesweeper.exe)
- dan sebagainya
0 komentar:
Posting Komentar