Sebelumnya pernah dijelaskan bagaimana caranya mengaplikasikan teori from bug to 0day yang dijelaskan red-dragon. Sekarang giliran saya, blue-dragon, akan memberi tau bagaimana cara mengaplikasikan teori from bug to 0day pada LINUX. Check this out.
Pertama-tama saya mau spoiler, kalau tutorial kali ini akan sangat panjang. Untuk itu, saya akan menghilangkan tag CODE kali ini. Yang ada hanyalah skrinsut dan penjelasan step by step.
Yang kalian butuhkan hanyalah:
1. Web server http daemon (Apache dsb)
2. Jmpbuster (http://sprunge.us/XCCi)
3. Gnome Debugger / Gdb (gdb)
Kondisi PC saya:
1. Menggunakan VMWare
2. Mengakses ssh ke PC server (Kioptrix LV 3)
Tutorial:
Pertama koneksikan PC kamu melalui SSH. Untuk mencari tau bagaimana saya mencari password ssh, kamu bisa cek di sini.
[Pic]
Setelah terkoneksi, cari informasi yang berada di dalam server.
[Pic]
Ada yang menarik, yaitu untuk mencapai akses root, kita harus menggunakan perintah 'sudo ht' Mari kita cari keberadaan file 'ht' dan apakah server memiliki gdb. Lalu cari tau tentang 'sudo' pada server ini.
[Tampilan 'ht']
[Pic]
Semuanya sudah lengkap, sekarang saatnya menulis shellcode. Yang pertama, kamu harus melakukan debugging, jika di sini menggunakan OllyDBG, maka kita sekarang menggunakan gdb yang di attach ke program ht.
[Pic]
Perintah ini akan membuat program ht menuliskan huruf "A" pada memori 4400 dengan kode python. Hasilnya bug (tinggal 0day-nya nih :D)
[Pic]
Keliatan, kalo memori 4400 memang vulnerable, saatnya minta bantuan metasploit untuk meng-generate memori buffer overflow 4400.
[Pic]
Copas hasil keluaran ke dalam shellcode:
[Struktur awal shellcode]
#/usr/bin/python
buf="kode_pattern_create"
buf="kode_pattern_offset"
eip="kode_memori_eip"
nop="kode_memori_NOP"
shellcode=(kode_jahat)
print(buf+eip+nop+shellcode) --> semuanya
Awal shellcode
[Pic]
Setelah dimasukkan kode buffer overflow:
[Pic]
Langsung kita debugging lagi shellcode ini untuk menentukan alamat register eip.
[Pic]
Hasil debugging:
[Pic]
Catat info register eip, lalu kita generate offset-nya dengan bantuan metasploit.
[Pic]
Catat kode offset buffer overflow eip untuk digunakan nanti. Sekarang kita mencari alamt eip, dengan jmp buster. Pertama cari jmp buster di internet, lalu letakkan di folder /var/www kamu. Aktifkan apache dan coba download kode jmpbuster dari folder kita:
[Web JmpBuster]
[Download JmpBuster ke /var/www]
[Aktifkan Apache]
[Download JmpBuster dari target]
[Compile JmpBuster]
Setelah JmpBuster di compile, maka sekarang saatnya berburu kode eip. Caranya:
$ ./jmpbuster /usr/local/bin/ht | more
[Pic]
Tekan "Enter" sampai kamu nemuin jmp *%esp yang warnanya berbeda (= Catat address-nya dan letakkan di shellcode kita.
[Pic]
Cara mencatat kode buf ke dua:
"\x41"*4091
Dimana x41 adalah "A" dan 4091 adalah alamat yang mengalami crash, kita harus mengambil alih halaman ini dengan menentukan lokasi NOP. Penulisan NOP:
0xaabbccdd ===> \xdd\xcc\xbb\xaa
Sekarang kita tentukan shellcode. Pertama saya mencoba menggunakan shikata_ga_nai sebagai encoder, tapi malahan ada address yang nilainya \x00 dimana address ini tidak bisa menginjeksi. Akhirnya saya gunakan encoder alpha_mixed. Setelah generate, gunakan kodenya sebagai shellcode dengan terlebih dulu menghapus tanda "+" dan satu spasi di belakang tanda "+"
[Generating shellcode]
[Tampilan akhir shellcode]
Setelah shellcode selesai, eksekusi shellcode dengan izin root dan program ht.
[Pic]
Hasilnya:
[Pic]
Ketik "reset" (tidak akan ada karakter yang keluar). lalu tekan enter, masukkan "ansi" sebagai jawaban default. Lalu tekan enter. Setelah ini, karakter ketikkan kamu akan selalu muncul tiap tombol keyboard ditekan. Kelar nge-root, sekarang testing!!!
[Pic]
Cari shadownya:
[Pic]
Written by:
blue-dragon
Supported by:
red-dragon
November 21, 2011
Related Posts
Mengatasi SET Error => touch: cannot touch `src/logs/set_logfile.log': No such file or directory
Hari ini saya menemui kejanggalan yang terjadi pada SET saya. Error-nya adalah ketika saya mencoba update SET, yang mun...Basic Exploitation
Exploitasi adalah sebuah pemanfaatan vulnerable system yang memungkinkan terjadinya remote system oleh user yang tidak ...NMAP Stealth Screen Shot
Bulan Juli ini, kita akan terus membicarakan tahap Reconnaissance. Reconnaissance adalah tahap pertama dalam siklus pen...[ADVANCE] Metasploit and Ettercap VS Adobe Reader
Jangan pernah jemu mempelajari penetration test. Kali ini saya akan berbagi, bagaimana cara mengeksploit windows XP den...FIX hci0 command tx timeout
Biasanya sebelum kita login ke BackTrack, ada peringatan dari DMESG yang isinya: [138209.666632] usbcore: registered n...Instalasi De-ICE.net di VMware Workstation 8
Telah dijelaskan sebelumnya tentang De-ICE di sini. Cukup menarik bagi kita untuk mecoba meretas De-ICE. So, hal yang k...METASPLOIT vs PostGreSQL
Metasploit merupakan tool pentest yang paling terkenal di dunia. Modules yang disediakan sangat lengkap, dan tools yang...Admin Page Finder [LINUX]
Muter-muter sampe kepala muter 360 derajat, tapi belum menemukan hasil dalam mencari admin page finder untuk linux? Jan...Motif Seorang Hacker
Pertanyaan ini hampir tidak pernah terpikirkan oleh saya, sampai suatu hari, kekasih saya menanyakan hal ini kepada say...[Introduction] Damn Vulnerable Web App - DVWA
Kali ini kita akan mencoba hal baru. Sebelumnya kita telah mempelajari OS Vulnerable by Design. Dimana pentester diuji ...
Subscribe to:
Post Comments (Atom)
emang bangsat juga nih anak,,
ReplyDeletehahahaha
Hahahaha.... >=D
ReplyDeleteClick to see the code!
To insert emoticon you must added at least one space before the code.