BaizeSec 白泽安全实验室 2024年12月10日 15:26 北京
在网络安全领域,浏览器隔离技术一直被视为对抗网络钓鱼和基于浏览器的攻击的有效手段。然而,根据Mandiant的最新研究,攻击者已经找到了一种利用QR码绕过浏览器隔离的攻击方法,从而能够从远程服务器向受害设备发送恶意数据。
浏览器隔离技术:
浏览器隔离技术是一种先进的网络安全解决方案,其核心目的是在用户设备与互联网之间的潜在威胁之间建立一道隔离屏障。这项技术通过在远程服务器上托管浏览器活动,确保用户的本地设备不会直接接触到互联网上的恶意软件和潜在威胁,从而有效降低网络攻击和恶意软件感染的风险。在浏览器隔离环境中,用户的浏览器仅接收经过处理的视觉内容,而不接触实际的网页代码。这意味着,即使用户访问了包含恶意软件的网站,这些恶意内容也无法到达用户的本地设备,因为所有的网页渲染和脚本执行都在远程服务器上完成。这种方法的关键在于,它通过隔离而不是基于特征的检测来保护用户终端系统,提供了一种无需依赖于对某种潜在安全威胁的检测的安全保护。使得攻击者难以通过典型的HTTP请求来远程控制设备,因为返回到本地浏览器的HTTP响应仅包含用于渲染远程浏览器视觉页面内容的流式引擎。
QR码绕过技术:
Mandiant的研究人员展示了一个概念验证(PoC),通过覆盖基于HTTP请求的通信,使用机器可读的QR码来绕过远程、现场和本地浏览器隔离。这种方法允许攻击者从命令和控制(C2)服务器向受害者设备发送指令。在攻击过程中,C2服务器返回一个显示QR码的有效网页,而不是在HTTP请求头或正文中返回C2数据。恶意植入物使用本地无头浏览器渲染页面,抓取屏幕截图,并读取QR码以检索嵌入的数据。通过利用机器可读的QR码,即使在网页在远程浏览器中渲染时,攻击者也能将数据从攻击者控制的服务器发送到恶意植入物。
【图 1 】攻击技术过程流程图
攻击技术过程描述:
恶意植入物通过浏览器隔离的像素流引擎渲染网页,并从页面上显示的QR码中解码命令。
从C2服务器检索包含在QR码中编码的命令数据的有效HTML网页。
远程浏览器将像素流引擎返回到本地浏览器,开始显示从C2服务器获得的渲染页面的视觉流。
植入物等待页面完全渲染,然后抓取包含QR码的本地浏览器的屏幕截图,恶意植入物读取该QR码以在被控制的设备上执行C2命令。
植入物再次通过本地浏览器导航到包含在URL参数中编码的命令输出的新URL。此参数通过远程浏览器传递给C2服务器,服务器像传统的基于HTTP的C2一样解码命令输出。
尽管PoC展示了攻击者如何绕过浏览器隔离,但研究人员也指出了一些限制和挑战。例如,使用最大数据大小的QR码(即2,953字节,177x177网格,错误校正级别“L”)是不可行的,因为本地浏览器渲染的网页的视觉流质量不足以可靠地读取QR码内容。此外,由于使用无头模式的Chrome浏览器以及远程浏览器启动、页面渲染要求和从远程浏览器返回到本地浏览器的视觉内容流的时间,至少需要五秒钟才能可靠地显示和扫描QR码,这引入了C2通道的显著延迟。
参考🔗
https://securityaffairs.com/171809/hacking/bypass-browser-isolation-using-qr-codes.html