CVE-2025-21756:Linux 内核漏洞如何导致完全 root 权限利用,PoC 发布

admin 2025年5月7日00:17:44评论6 views字数 1351阅读4分30秒阅读模式

CVE-2025-21756:Linux 内核漏洞如何导致完全 root 权限利用,PoC 发布

关键词

Linux

CVE-2025-21756:Linux 内核漏洞如何导致完全 root 权限利用,PoC 发布

在最近的分析中,安全研究员 Michael Hoefler 揭露了 CVE-2025-21756 的完整细节,这是一个影响 Linux 内核 vsock 子系统的释放后使用 (UAF) 漏洞。最初只是简单的代码调整——修改了几行 vsock_remove_sock() 的行为——最终阻止了一条通往本地特权提升 (LPE) 和内核代码执行的复杂路径。

当内核中某个对象的引用计数器达到零时,该对象将被释放到其各自的内存管理器。理想情况下,在释放 vsock 对象后,我们将能够触发某种释放后使用 (UAF) 漏洞,以获得更好的原始权限并提升权限,”Hoefler解释道

漏洞源于传输重新分配期间对套接字绑定状态的处理不当。具体而言,vsock 代码错误地减少了已解除绑定套接字的引用计数器,导致 vsock 对象过早释放。

补丁分析指出: “传输重新分配可以触发 vsock_remove_sock,它会调用 vsock_remove_bound,从而错误地减少 vsock 对象上的引用计数器。”这引入了一种危险的 UAF 条件,攻击者可以利用该条件来获取强大的利用原语。

最初的利用尝试导致了内核崩溃,表明 AppArmor — 通过 Linux 安全模块 (LSM) 挂钩 — 在释放套接字时消除了 sk_security 指针,从而阻止了直接函数指针损坏。

Hoefler 强调说: “内核授予我们一个指向套接字的悬空指针 — — 但 AppArmor 确保我们在用它做任何有用的事情之前崩溃。”因此,攻击者必须找到不受 AppArmor 保护的内核函数才能继续利用

为了绕过内核地址空间布局随机化 (kASLR) 而不依赖受 AppArmor 保护的函数,Hoefler 转向了 vsock_diag_dump() 功能,这是一个不受保护的 netlink 诊断工具。

通过使用精心设计的管道缓冲区回收释放的 vsock 套接字并利用 vsock_diag_dump 作为侧信道,Hoefler 暴力破解了有效的 skc_net 指针,从而绕过了 kASLR。

我陷入了困境,于是求助于 kernelctf 社区,@h0mbre 建议使用 vsock_diag_dump 作为侧信道来暴力破解 skc_net 指针,”Hoefler 回忆道。这允许我通过已知的内存偏移量完全控制悬空套接字对象。

为了获得代码执行权限,Hoefler 利用了 vsock_release() 函数。由于该函数未受到 AppArmor 的保护,攻击可以劫持 sk->sk_prot->close 函数指针,并转向 ROP(面向返回编程)链:

我们最感兴趣的是对 sk->sk_prot->close(sk, 0) 的调用。由于我们控制 sk,所以我们需要一个指向函数的有效指针,”他解释道。

最后的 ROP 链调用 commit_creds(init_cred),授予攻击者 root 权限并干净地将执行返回到用户空间。

来源:https://securityonline.info/cve-2025-21756-how-a-tiny-linux-kernel-bug-led-to-a-full-root-exploit-poc-releases/

  END  

原文始发于微信公众号(安全圈):【安全圈】CVE-2025-21756:Linux 内核漏洞如何导致完全 root 权限利用,PoC 发布

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年5月7日00:17:44
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   CVE-2025-21756:Linux 内核漏洞如何导致完全 root 权限利用,PoC 发布https://cn-sec.com/archives/4035370.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息