深度剖析 CVE-2025-21756:Linux 内核漏洞触发 Root 提权全流程 | 微软Telnet服务器存在严重漏洞
深度剖析 CVE-2025-21756:Linux 内核漏洞触发 Root 提权全流程 | 微软Telnet服务器存在严重漏洞
e安在线 e安在线 2025-04-30 02:48
深度剖析 CVE-2025-21756:Linux 内核漏洞触发 Root 提权全流程
安全研究员Michael Hoefler最新研究揭示了CVE-2025-21756漏洞的全貌,这是一个影响Linux内核vsock子系统的释放后重用(Use-After-Free,UAF)漏洞。该漏洞源于vsock_remove_sock()函数几行代码的行为修改,最终导致本地权限提升(LPE)和内核代码执行的完整攻击路径。
Hoefler解释道:”当内核中对象的引用计数器归零时,该对象会被释放给对应的内存管理器。理想情况下,在释放vsock对象后,我们可以触发某种UAF来获得更好的攻击原语并提升权限。”
01
漏洞成因与利用限制
该漏洞的根本原因在于传输重分配期间对套接字绑定状态处理不当。具体而言,vsock代码错误地减少了已解绑套接字的引用计数器,导致vsock对象被过早释放。补丁分析指出:”传输重分配会触发vsock_remove_sock,进而调用vsock_remove_bound错误地减少vsock对象的引用计数器。”这引入了危险的UAF条件,攻击者可利用其获得强大的攻击原语。
初期利用尝试导致内核崩溃,显示
AppArmor
通过Linux安全模块(LSM)钩子在套接字释放时清除了sk_security指针,阻碍了直接
函数指针
破坏。Hoefler强调:”内核给了我们一个悬垂指针,但AppArmor确保我们在能利用它之前就会崩溃。”因此,攻击者必须寻找不受AppArmor保护的内核函数继续利用。
02
绕过防护机制
为绕过内核地址空间布局随机化(kASLR)且不依赖受AppArmor保护的函数,Hoefler转向了不受保护的
netlink
诊断工具vsock_diag_dump()功能。通过用精心构造的管道缓冲区回收已释放的vsock套接字,并利用vsock_diag_dump作为侧信道,Hoefler暴力破解了有效的skc_net指针,从而绕过kASLR。
Hoefler回忆道:”在陷入困境时,我求助于kernelctf社区,@h0mbre建议使用vsock_diag_dump作为侧信道暴力破解skc_net指针。”这使得攻击者能够以已知内存偏移完全控制悬垂套接字对象。
03
最终攻击链
为实现代码执行,Hoefler利用了不受AppArmor保护的vsock_release()函数。攻击可劫持sk->sk_prot->close函数指针并转向ROP(面向返回编程)链:”我们最感兴趣的是对sk->sk_prot->close(sk, 0)的调用。由于我们控制着sk,所以需要一个指向函数指针的有效指针。”
最终的ROP链调用commit_creds(init_cred),为攻击者授予root权限并干净地返回用户空间。
图片来源:Michael Hoefler
微软Telnet服务器曝0点击NTLM认证绕过漏洞,PoC已发暂无补丁
网络安全研究人员发现微软Telnet服务器存在严重漏洞,远程攻击者无需有效凭证即可完全绕过认证机制,获取管理员权限。根据Hacker Fantastic发布的报告,该漏洞涉及微软Telnet认证协议(MS-TNAP),对传统Windows系统构成重大安全威胁,且目前尚无官方补丁。
报告指出:”微软
Telnet
服务器中存在一个关键的0点击远程认证绕过漏洞,攻击者无需有效凭证即可获得包括管理员在内的任意用户访问权限”。该漏洞源于Telnet服务器处理
NTLM
(NT LAN Manager)认证流程时的配置错误。
01
受影响系统范围
该漏洞影响以下广泛使用的微软操作系统版本:
– Windows 2000
-
Windows XP
-
Windows Server 2003
-
Windows Vista
-
Windows Server 2008
-
Windows 7
-
Windows Server 2008 R2
02
漏洞技术原理
漏洞成因在于Telnet服务器错误地初始化NTLM认证凭据并错误处理双向认证。具体表现为服务器在认证握手阶段设置了存在缺陷的SSPI(安全支持提供程序接口)标志:
报告解释称:”服务器使用SECPKG_CRED_BOTH标志初始化NTLM安全机制”,并且”调用AcceptSecurityContext()函数时启用了ASC_REQ_DELEGATE和ASC_REQ_MUTUAL_AUTH标志”。
这种错误配置导致认证关系出现危险逆转——服务器反而向客户端证明自身身份,而非验证客户端身份。
03
漏洞利用过程
Hacker Fantastic发布的概念验证(
PoC
)利用程序通过以下步骤实施攻击:
1. 使用特定标志请求双向认证
-
为目标管理员账户使用NULL空密码
-
操纵SSPI标志触发服务器认证逻辑缺陷
-
发送经过篡改的NTLM Type 3类型消息欺骗服务器
-
最终完全绕过认证,开启具有管理员权限的Telnet会话
报告强调:”攻击者可通过发送双向认证数据包并利用SSPI配置绕过服务端认证,从而获取主机上任意账户的访问权限”
已发布的PoC工具telnetbypass.exe针对本地主机或域内主机,要求目标系统Telnet Server服务处于运行状态。
04
缓解措施建议
令人担忧的是,”目前该漏洞尚无补丁”。建议相关组织立即采取以下防护措施:
– 禁用所有系统上的Telnet Server服务
-
采用SSH等更安全的远程管理方案替代Telnet
-
实施网络层过滤,
仅允许可信IP和网络访问Telnet服务 -
应用控制策略
阻止未经授权的Telnet客户端连接
值得注意的是,为降低大规模利用风险,”该漏洞利用的源代码暂未公开”,目前仅向公众发布了二进制格式的PoC程序。
声明:除发布的文章无法追溯到作者并获得授权外,我们均会注明作者和文章来源。如涉及版权问题请及时联系我们,我们会在第一时间删改,谢谢!文章来源:
FreeBuf