本项目旨在以加密方式向受害者浏览器传递浏览器漏洞利用代码。采用椭圆曲线 Diffie-Hellman(secp256k1)进行密钥协商,并使用 AES 进行加密。
通过以加密方式向受害者传递漏洞利用代码(和 shellcode),攻击无法被重放。同时,HTML/JS 源代码经过加密,从而显著增加了逆向分析漏洞利用代码的难度。
如果您不明白我在说什么,请搜索“如何隐藏您的浏览器 0-day 漏洞”,并查看我的演讲。或者可以在 YouTube 上观看:https://www.youtube.com/watch?v=eyMDd98uljI
或者查看 SlideShare 上的幻灯片:https://www.slideshare.net/bz98/how-to-hide-your-browser-0days
加密漏洞传递的想法最初由我在 2015 年 6 月 2 日发布:
https://twitter.com/zh4ck/status/605754804472823808
https://www.mrg-effitas.com/research/generic-bypass-of-next-gen-intrusion-threat-breach-detection-systems/
Angler 漏洞利用工具包的人只是窃取了我的想法,并且实现得很糟糕。

以下说明将帮助您在本地计算机上获取项目副本并运行,用于开发和测试目的。
必需依赖项 - 克隆 IRONSQUIRREL 项目,进入项目目录,并运行以下命令:
sudo apt-get install ruby-dev
bundle install
实际上会安装 nokogiri 和 gibberish gem。
可选依赖项(用于基于 Powershell 的环境感知加密负载交付):Ebowla
https://github.com/Genetic-Malware/Ebowla
ruby IRONSQUIRREL.rb --exploit full_path_to_exploit
ruby IRONSQUIRREL.rb --exploit /home/myawesomeusername/IRONSQUIRREL/exploits/alert.html
之后,从浏览器访问 webserver。 示例输出:
Listening on 2345
GET / HTTP/1.1
GET /sjcl.js HTTP/1.1
GET /dh.js HTTP/1.1
GET /client_pub.html?cl=SOifQJetphU2CvFzZl239nKPYWRGEH23ermGMszo9oqOgqIsH5XxXi1vw4P4YFWDqK6v4o4jIpAVSNZD1x5NTw%3D%3D HTTP/1.1
GET /final.html HTTP/1.1
GET /sjcl.js HTTP/1.1
The end
欢迎提交错误修复、功能请求、评论……
本项目采用 GPL3 许可证 - 详见 LICENSE.md 文件
