SVG Smuggling:利用图片投递的恶意载荷

SVG Smuggling:利用图片投递的恶意载荷

背景

鉴于邮件具备应用广泛和携带附件等多种优势,恶意分子利用钓鱼邮件进行恶意载荷传播已成为qakbot等勒索病毒的主要方式。然而,随着邮件防御能力的提升,恶意载荷传播方式也在不断演变。本文将详细讨论一种利用SVG图片进行恶意载荷传递的新型攻击技术。


01 SVG介绍

SVG(Scalable Vector Graphics)是一种在网页中较为常见的图像文件类型,和普通的图像文件不同,SVG使用XML进行编写,通过数学方程和几何元素来定义图像,文件大小相对较小,并且可以在不失真的情况下任意缩放,这是一个简单的SVG示例:

//显示一个红色的正方形<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100">  <rect x="0" y="0" width="100" height="100" fill="red" /></svg>


此外,SVG图像可以与其他Web技术(如HTML、CSS和JavaScript)无缝集成,为创建交互式和响应式的图形提供了便利。利用这一特性,攻击者可以通过SVG文件构造复杂的显示效果、并且植入JavaScript代码,下面的SVG文件示例显示一张图片并且在打开文件时进行弹框。

<svg height="100%" version="1.1" viewBox="0 0 1700 863" width="100%" xml:space="preserve"   xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">    <image height="863" id="Image" width="1700" xlink:href="data:image/png;base64,aaaaaaaaaa..."/>    <script type="text/javascript">      <![CDATA[        alert('hello world');            ]]>    </script></svg>


02 SVG Smuggling

在探讨SVG Smuggling前有必要了解HTML Smuggling技术,HTML Smuggling是一种被广泛使用的恶意载荷投递技术,攻击者通常通过HTML附件进行载荷投递,当受害者浏览该HTML附件时,浏览器会自动执行附件中的脚本,并释放嵌入在HTML附件中的恶意文件。这种技术为攻击者提供了一种隐藏和传播恶意代码的方法。


恶意文件通常会被编码嵌入HTML文件中,这种技术可以欺骗大多数病毒检测设备的静态扫描。此外,由于受害者的浏览器位于防火墙之后,动态生成的恶意文件并不会产生新的访问流量,因此可以有效地绕过防火墙、全流量设备和沙箱等对恶意文档的检测。

Qakbot等勒索病毒非常擅长利用HTML Smuggling技术进行恶意载荷投递。为了避免恶意载荷被沙箱捕获,攻击者在HTML附件中添加了鼠标移动的事件监听,并且在受害者打开HTML附件时不直接释放恶意文件,而是通过SVG来进行第二阶段的隐藏和传递。这种技术使恶意活动更加隐蔽,加大了检测和阻止的难度。


SVG Smuggling:利用图片投递的恶意载荷

图:显示诱导内容的恶意html文件


SVG Smuggling:利用图片投递的恶意载荷

图:恶意html嵌入脚本代码


SVG Smuggling和HTML Smuggling的原理类似。如下图所示,通过在SVG代码中插入恶意JavaScript代码来触发文件释放,从而实现将编码在文件中的恶意文件在用户打开时自动释放。


当受害者打开带有恶意SVG文件的浏览器时,其中嵌入的恶意JavaScript代码会被执行。该代码会解码隐藏在SVG文件中的恶意文件,并触发相应的操作,使得攻击者能够在用户不知情的情况下传递恶意载荷,由于SVG格式的特殊性,SVG Smuggling可以绕过一些针对HTML附件的安全检测机制。


SVG Smuggling:利用图片投递的恶意载荷

图:嵌入恶意代码的SVG文件


03 攻击思考

SVG文件可以通过双击打开,并且默认被认为是无害的文件格式。然而,由于SVG本身支持使用HTML语法构造特殊的诱导显示内容,因此存在将其作为独立恶意载荷投递利用的可能性。


如下图所示,攻击者可以将SVG文件构造成看似“邀请函”的形式。当受害者打开该SVG文件时,会自动释放一个恶意的ZIP文件。配合特定的邮件话术和社会工程学技巧,攻击者可以诱导受害者打开这个恶意的ZIP文件。然而,直接使用SVG Smuggling存在一些限制。释放的ZIP文件名会被自动命名为随机的UUID,并且尝试释放其他文件类型时会自动丢失文件后缀。这也是为什么Qakbot勒索病毒在SVG Smuggling之前使用HTML Smuggling技术的一个原因。


SVG Smuggling:利用图片投递的恶意载荷

图:打开SVG文件后伪装成邀请函


04 检测防御

由于该类型的载荷投递技术利用了看似无害的SVG图像文件,并且恶意载荷编码在文件中,无需经过网络请求直接在打开后释放,传统的安全防护设备难以形成有效检测。因此,为了有效检测和防御类似的恶意载荷投递技术,需要采取更为全面的安全措施。包括:行为分析与异常检测、安全日志和事件管理、安全培训和意识等。


绿盟一体化终端安全管理系统(UES)

绿盟一体化终端安全管理系统(UES)通过对系统行为的实时监控和深度分析,能够精确识别出利用HTML Smuggling及 SVG Smuggling变种的新型载荷投递相关的异常行为模式。一旦发现有可疑的攻击行为,UES将第一时间发出警报,并提供相应的处置措施,帮助管理员及时做出反应并采取必要的防护措施。


SVG Smuggling:利用图片投递的恶意载荷



绿盟轻量化安全意识测评服务(InSAAS)

绿盟轻量化安全意识测评服务InSAAS覆盖各类型新型恶意样本攻击模拟,帮助企业开展定期的安全培训和意识活动,以增加用户对恶意载荷投递技术的认识。从实战攻击的角度教育用户如何识别和防范钓鱼邮件、恶意下载链接和不明来源的文件。

SVG Smuggling:利用图片投递的恶意载荷


SVG Smuggling:利用图片投递的恶意载荷

绿盟科技天元实验室专注于新型实战化攻防对抗技术研究。

研究目标包括:漏洞利用技术、防御绕过技术、攻击隐匿技术、攻击持久化技术等蓝军技术,以及攻击技战术、攻击框架的研究。涵盖Web安全、终端安全、AD安全、云安全等多个技术领域的攻击技术研究,以及工业互联网、车联网等业务场景的攻击技术研究。通过研究攻击对抗技术,从攻击视角提供识别风险的方法和手段,为威胁对抗提供决策支撑。


SVG Smuggling:利用图片投递的恶意载荷

M01N Team公众号

聚焦高级攻防对抗热点技术

绿盟科技蓝军技术研究战队

SVG Smuggling:利用图片投递的恶意载荷

官方攻防交流群

网络安全一手资讯

攻防技术答疑解惑

扫码加好友即可拉群

原文始发于微信公众号(M01N Team):SVG Smuggling:利用图片投递的恶意载荷

版权声明:admin 发表于 2023年9月6日 下午6:05。
转载请注明:SVG Smuggling:利用图片投递的恶意载荷 | CTF导航

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...