sudo-rs身份验证绕过漏洞分析(CVE-2025-64517)

本文详细分析了sudo-rs身份验证绕过漏洞CVE-2025-64517,该漏洞在启用targetpw或rootpw选项时错误记录用户UID,导致认证绕过,影响版本0.2.5至0.2.9,已发布0.2.10修复版本。

概述

CVE-2025-64517 是一个在sudo-rs中发现的中等严重性漏洞。sudo-rs是用Rust编写的内存安全的sudo和su实现。

漏洞描述

当启用 Defaults targetpw(或 Defaults rootpw)时,系统使用目标账户(或root账户)的密码而不是调用用户的密码进行身份验证。sudo-rs从版本0.2.5开始到版本0.2.10之前,在认证时间戳中错误地记录了调用用户的UID,而不是认证用户的UID。

当时间戳仍然有效时,在同一终端上任何后续的 sudo 调用都会使用该时间戳,即使策略要求重新认证,也可能绕过新的身份验证。一个高权限用户(能够通过sudo以其他用户或root身份运行命令)如果知道他们被允许运行命令的某个账户的密码,就能够以策略允许他们运行命令的任何其他账户身份运行命令,即使他们不知道这些账户的密码。

这种情况的一个常见实例是,用户仍然可以使用自己的密码以root身份运行命令(sudo 的默认行为),实际上否定了 targetpwrootpw 选项的预期行为。

受影响版本

  • 受影响版本:0.2.5 至 0.2.9
  • 不受影响版本:0.2.10及以上,0.2.5之前版本

解决方案

  • 将sudo-rs更新到版本0.2.10或更高版本
  • 应用任何必要的配置更改
  • 验证认证日志中的异常情况
  • 如果适用,重新启动受影响的服务

CVSS评分

CVSS 3.1评分:4.4(中危)

攻击向量:本地 攻击复杂度:低 所需权限:高 用户交互:无 影响范围:不变 机密性影响:无 完整性影响:高 可用性影响:无

相关资源

CWE分类

CWE-287:不恰当的身份验证

该漏洞与认证机制实现不当相关,导致攻击者可能绕过预期的身份验证检查。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计