嘶吼RoarTalk 02-18
「深蓝洞察」2024年度最难以阻挡的攻防趋势
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_caijing1.html

 

1、往期回顾:「深蓝洞察」2024 年度最别开生面的安全新生态

2、往期回顾:「深蓝洞察」2024 年度最具含 " 金 " 量的绕过

3、往期回顾:「深蓝洞察」2024 年度最具想象空间的新应用

4、往期回顾:「深蓝洞察」2024 年度最狂躁不安的漏洞

5、往期回顾:「深蓝洞察」2024 年度最 " 隐 " 人注目的安全趋势

6、往期回顾:「深蓝洞察」2024 年度最悲剧的后门

近年来,漏洞攻防不断演进。从多年前仅需一个栈溢出就能攻破系统,到如今需要运用各种精妙的手法来突破系统的层层防御。" 盾 " 与 " 矛 " 始终处于动态对抗:每当新的防御措施出现,新的攻击手段随之而来。防御机制的升级促使攻击者寻找新的突破口,而攻击方法的创新又推动着防御技术的进一步发展。

以下为本期《深蓝洞察 | 2024 年度安全报告》的第七篇。

愈发坚韧的 " 盾 "

每个防御机制的提出都是对内存漏洞利用的精准打击。多年前,ASLR 的引入显著提高了漏洞利用的难度和复杂性。时至今日,绕过 ASLR 仍然是大多数漏洞利用的首要步骤。到了 2024 年,针对内存破坏的防御机制更是层出不穷。

2023 年推出的 Google Pixel 8 支持了被称为 " 内存问题终极武器 " 的 Memory Tagging Extension(MTE)特性,其是 ARM v8.5 新增的一个硬件特性,MTE 将指针与其内存利用 tag 进行匹配,以此来阻止内存的非法访问。同时,这也是 MTE 首次走入消费者群体。2024 年的 1 月,DARKNAVY 的安全研究员发布了关于 MTE 对软件安全性影响的研究。研究表明,MTE 有效缓解了堆内存漏洞(如 UAF、堆越界读写等),在线性溢出场景下几乎完全消除了漏洞利用的可能性。作为 UAF 漏洞的长期受害者,Google 也为 Chrome 提出了 MiraclePtr 机制,更是自信地宣称:受 MiraclePtr 保护的 UAF 不再视为安全漏洞。

Linux 作为使用最广泛的操作系统之一,其内核近几年也引入了各种防御措施以阻止内存破坏的利用。为了缓解内核中的堆内存破坏问题,Linux Kernel 中引入 "SLAB VIRTUAL"、"RANDOM_KMALLOC_CACHES"、"AUTOSLAB" 等一系列防御机制。为了加强用户态程序的安全性,Linux Kernel 6.10 新增系统调用 mseal(memory seal),允许开发人员在程序运行时保护内存区域免受非法修改。

那么如此多的防御机制是否阻止了某些利用呢?

2024 年 11 月,苹果披露了两个针对 WebKit 的在野利用,但这些利用仅限于 Intel 芯片的 Mac 设备。为什么 2024 年的漏洞只在较早的系统版本上被利用?这很可能与 M 系列芯片的先进防御机制有关,这些机制阻止了攻击者的利用。

WebKit 漏洞披露

从软件到硬件,从用户态到内核态,在防御机制的层层铁壁下,内存漏洞已难以突出重围。种种迹象表明,内存漏洞似乎正走向终结。

未来之 " 矛 "

漏洞不会消失,安全问题依然存在,那么在内存漏洞式微的时代,一个 "powerful" 的漏洞及其利用又是什么样呢?

2024 年 6 月,Meta Red Team 披露了漏洞 CVE-2024-31317,该漏洞允许攻击者以任意应用身份执行任意代码,并可在 Android 9 及更高版本上实现利用,实现 Android 通杀。

值得一提的是,CVE-2024-31317 并不是一个内存破坏漏洞,而是发生在 Zygote 的命令注入漏洞。Zygote 是 Android 系统上的核心组件之一,它会孵化出 Android 中 Java 世界的所有进程,system_server 也不例外。

Zygote 功能展示

( https://dawnslab.jd.com/the_return_of_mystique/ )

实际上,Zygote 是通过 command socket 从 system_server 中接收指令,并根据指令孵化出子进程。然而,Zygote 只是盲目地去解析从 system_server 接收到的 buffer,而不做额外的二次校验。因此,如果能够通过某种方式操纵 system_server 在 command socket 中写入攻击者可控的内容,就可以实现命令注入!

研究人员分析发现,denylistexemptions 就提供这种能力。在该机制中,当 hidden_api_blacklist_exemptions 被修改后,新写入的值会在解析后直接写入到 Zygote command socket 中。因此,只要控制该值即可实现命令注入。

下图展示了该漏洞的利用效果之一,启动一个可调试注入的 settings 进程:

CVE-2024-31317 的利用效果之一:启动一个可调试注入的 settings 进程

可以看到该漏洞并不涉及内存破坏,依然影响了众多的安卓系统,这种漏洞本质是程序逻辑层面出现了问题,其影响力不亚于甚至超过传统的内存漏洞。随着内存漏洞利用门槛的持续攀升,非内存破坏类漏洞逐渐成为攻击者实现目标的 " 捷径 ":

2024 年 2 月,著名的 "XZ Utils backdoor" 事件曝光,一位别有用心的开发者在社区潜伏多年,最终成为核心维护者后在项目中植入了隐蔽后门。

2024 年 4 月,全球知名防火墙软件 PAN-OS 被发现存在命令注入漏洞 CVE-2024-3400,攻击者可对运行该系统的设备进行未授权 RCE,并获取系统 root 权限。

2024 年 6 月,DEVCORE 披露了漏洞 CVE-2024-4577,揭示 Windows 环境下运行的 PHP-CGI 存在参数注入漏洞。

2024 年 11 月,watchTowr Labs 披露了 "FortiJump" 漏洞,指出网络管理平台 FortiManager 存在命令注入漏洞。

2024 年 12 月,DEVCORE 的 Orange Tsai 在 Black Hat EU 2024 揭示了 Windows ANSI API 中潜藏的安全隐患。众多软件未能正确处理 Windows 的 "Best-fit" 特性,导致路径 / 文件名、命令行和环境变量的注入问题,并且几乎影响到全球所有 Windows 系统版本。

大胆猜测,内存漏洞难以利用后,未来之 " 矛 " 或许就隐藏在各种逻辑漏洞、供应链攻击之下。

深蓝洞察

当内存安全防御构建起层层壁垒,攻击者的 " 矛 " 已悄然转向更隐蔽的战场。" 没有绝对安全的系统 ",内存安全逐渐成为基础设施的 " 及格线 ",安全防御面临更深层的体系化挑战:如何构建覆盖软件供应链的信任验证机制?如何实现业务逻辑的自动化安全建模?这些问题将是下一代安全对抗的重点。

安全对抗从未终结,只是在不断升级的维度中重塑对抗格局。安全研究者需要以更立体的视角审视安全边界——当内存漏洞走向黄昏时,逻辑漏洞的迷雾正在黎明中显现。

参   考:

[ 1 ] https://en.wikipedia.org/wiki/Address_space_layout_randomization

[ 2 ] https://source.android.com/docs/security/test/memory-safety/arm-mte

[ 3 ] https://www.darknavy.org/blog/strengthening_the_shield_mte_in_memory_allocators/

[ 4 ] https://blog.trailofbits.com/2024/10/25/a-deep-dive-into-linuxs-new-mseal-syscall/

[ 5 ] https://lore.kernel.org/lkml/20230915105933.495735-15-matteorizzo@google.com/

[ 6 ] https://chromium.googlesource.com/chromium/src/+/ddc017f9569973a731a574be4199d8400616f5a5/base/memory/raw_ptr.md

[ 7 ] https://webkitgtk.org/security/WSA-2024-0007.html

[ 8 ] https://support.apple.com/en-us/121752

[ 9 ] https://en.wikipedia.org/wiki/XZ_Utils_backdoor

[ 10 ] https://security.paloaltonetworks.com/CVE-2024-3400

[ 11 ] https://rtx.meta.security/exploitation/2024/06/03/Android-Zygote-injection.html

[ 12 ] https://devco.re/blog/2024/06/06/security-alert-cve-2024-4577-php-cgi-argument-injection-vulnerability-en/

[ 13 ] https://labs.watchtowr.com/hop-skip-fortijump-fortijumphigher-cve-2024-23113-cve-2024-47575/

[ 14 ] https://worst.fit/

[ 15 ] https://blog.flanker017.me/the-new-mystique-bug-cve-2024-31317/

明日,请继续关注《深蓝洞察 | 2024 年度安全报告》第八篇。

宙世代

宙世代

ZAKER旗下Web3.0元宇宙平台

一起剪

一起剪

ZAKER旗下免费视频剪辑工具

相关标签

chrome 安全漏洞 linux arm
相关文章
评论
没有更多评论了
取消

登录后才可以发布评论哦

打开小程序可以发布评论哦

12 我来说两句…
打开 ZAKER 参与讨论