Linux 内核中存在 8 年历史的安全漏洞的详细信息已经浮出水面,研究人员称其“像肮脏的管道一样令人讨厌”。
该安全漏洞被西北大学的一组学者称为DirtyCred ,它利用了一个以前未知的漏洞 ( CVE-2022-2588 ) 将权限提升到最高级别。
“DirtyCred 是一种内核利用概念,它将非特权内核凭证与特权凭证交换以提升特权,”研究人员林振鹏、吴宇航和邢新宇指出。“DirtyCred 没有覆盖内核堆上的任何关键数据字段,而是滥用堆内存重用机制来获得特权。”
这需要三个步骤——
-
释放带有漏洞的正在使用的非特权凭证
-
通过触发特权用户空间进程(例如 su、mount 或 sshd)在已释放的内存插槽中分配特权凭据
-
以特权用户身份操作
据研究人员称,这种新颖的利用方法将脏管道提升到了一个新的水平,使其更加通用和有效,可以在任何版本的受影响内核上运行。
研究人员说:“首先,这种利用方法不是与特定漏洞绑定,而是允许任何具有双重释放能力的漏洞展示类似脏管的能力。”
“其次,虽然它就像脏管道一样可以绕过所有内核保护,但我们的利用方法甚至可以展示出脏管道所不具备的主动逃离容器的能力。”
Dirty Pipe被追踪为 CVE-2022-0847(CVSS 评分:7.8)并影响从 5.8 开始的 Linux 内核版本,是指管道子系统中的一个安全漏洞,它允许低权限进程写入任意可读文件,从而导致权限提升。
该可利用漏洞是根据 2016 年发现的Dirty Cow漏洞基于它们的相似性而得名的。
鉴于对象是根据其类型而非特权进行隔离的,研究人员建议使用虚拟内存将特权凭证与非特权凭证隔离,以防止交叉缓存攻击。
https://github.com/markakd/dirtycred