Mandiant 研究人员发现了一种绕过浏览器隔离技术的突破性方法,利用机器可读的二维码在旨在防止传统攻击方法的环境中建立命令与控制 (C2) 通信。
该技术凸显了远程、内部部署和本地浏览器隔离解决方案中的关键弱点。
浏览器隔离的工作原理
浏览器隔离旨在通过将 Web 浏览与本地系统(通常在安全云、本地或虚拟化环境中运行浏览器)分开来保护用户。
它通过仅向用户传输视觉内容(像素)来防止本地设备与恶意 Web 内容之间的直接交互。
此设置阻碍了依赖于 HTTP 请求和响应操纵的常见 C2 方法,因为攻击者无法直接从隔离环境中访问原始 HTTP 响应。
基于二维码的 C2 漏洞利用
Mandiant 的红队开发了一种绕过这些限制的新策略。
(QR)用代码解决问题:浏览器隔离环境中的 C2
https://cloud.google.com/blog/topics/threat-intelligence/c2-browser-isolation-environments/
攻击者控制的服务器不会在 HTTP 响应中嵌入 C2 命令,而是发送包含二维码的网页。
恶意植入程序会在无头浏览器中呈现该页面,通过像素流捕获二维码的屏幕截图,然后对其进行解码以检索嵌入的命令数据。
C2通信过程如下:
- 植入物启动本地无头浏览器(例如,使用 Puppeteer)。
- 它检索攻击者的网页,该网页通过隔离的浏览器呈现。
- 二维码以像素流的形式直观显示。
- 植入物捕获并解码二维码以提取命令。
- 命令输出通过后续请求中的 URL 参数发送回给攻击者。
Mandiant 的概念验证 (PoC) 实现依赖于无头模式下的 Google Chrome 浏览器,并与 Cobalt Strike 的外部 C2 功能集成。
这种方法用途广泛,适用于所有三种类型的浏览器隔离。
基于二维码的 C2 方法虽然有效,但也有局限性。
首先,二维码最多可以存储 2,953 字节,但流媒体质量问题迫使 Mandiant 将数据限制为 2,189 字节。
其次,由于渲染和处理延迟,每个请求大约需要 5 秒,这使得 SOCKS 代理等高吞吐量操作不切实际。
最后,运行无头浏览器和解码二维码会带来很大的复杂性和延迟。
尽管存在这些限制,但 Mandiant 的演习暴露了浏览器隔离的弱点,尽管它可以有效抵御许多传统威胁,但并非无懈可击。
仅依赖隔离的组织必须考虑这种新的攻击媒介并相应地加强防御。
Mandiant 建议采用多层次的“纵深防御”策略,包括对指示基于二维码的 C2 活动的异常模式进行流量检查以及执行域信誉检查和 URL 扫描。
原文始发于微信公众号(网络研究观):新型 C2 技术利用二维码绕过浏览器隔离
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论