Linux内核NFT子系统曝高危"双重释放"漏洞 可导致本地提权
内容提要
Linux内核NFT子系统发现严重的双重释放漏洞,影响5.6-rc1至6.13-rc3版本。攻击者可通过特制netlink消息触发内存破坏,实现本地权限提升。建议启用CONFIG_INIT_STACK_ALL_ZERO配置并应用补丁以防止漏洞利用。
关键要点
-
Linux内核NFT子系统发现严重的双重释放漏洞,影响5.6-rc1至6.13-rc3版本。
-
攻击者可通过特制netlink消息触发内存破坏,实现本地权限提升。
-
漏洞位于nft_add_set_elem函数,未初始化的栈变量导致安全缺陷。
-
当CONFIG_INIT_STACK_ALL_ZERO配置禁用时,栈上的未初始化数据会污染元素键值。
-
攻击者通过删除集合元素和整个集合的方式触发双重释放。
-
漏洞影响特定内核配置组合,包括CONFIG_NETFILTER、CONFIG_NF_TABLES和CONFIG_USER_NS。
-
有效的缓解措施包括启用CONFIG_INIT_STACK_ALL_ZERO配置和应用netfilter补丁。
-
该漏洞与CVE-2023-4004相似,强调了内核内存管理中初始化变量的重要性。
延伸问答
Linux内核NFT子系统的双重释放漏洞是什么?
该漏洞允许低权限攻击者通过特制的netlink消息触发内核内存破坏,从而实现本地权限提升。
哪些Linux内核版本受到双重释放漏洞的影响?
受影响的版本包括5.6-rc1至6.13-rc3。
攻击者是如何利用这个漏洞的?
攻击者通过发送特制的netlink消息,先删除集合元素再删除整个集合,从而触发双重释放。
如何缓解Linux内核NFT子系统的双重释放漏洞?
可以通过启用CONFIG_INIT_STACK_ALL_ZERO配置和应用netfilter补丁来缓解该漏洞。
该漏洞与CVE-2023-4004有什么相似之处?
该漏洞与CVE-2023-4004相似,强调了内核内存管理中初始化变量的重要性。
未初始化的栈变量如何导致安全缺陷?
未初始化的栈变量在处理过程中污染元素键值,导致内存破坏和安全缺陷。