文章摘要
Cyata研究团队对广泛使用的HashiCorp Vault进行了深入评估,发现了九个未知的零日漏洞,每个漏洞均通过负责任披露获得CVE编号。这些漏洞包括绕过锁定、规避策略检查和启用冒充等,其中一个甚至允许根级权限提升。团队与HashiCorp密切合作,确保所有问题在公开前得到修复。
文章总结
文章主要内容:
Cyata研究团队对HashiCorp Vault进行了深入的安全评估,发现了九个此前未知的零日漏洞,这些漏洞涉及身份验证、身份管理和授权等核心功能。通过与HashiCorp的紧密合作,所有漏洞在公开披露前均已修复。这些漏洞包括绕过锁定机制、规避策略检查、允许身份冒充,甚至有一个漏洞允许攻击者进行远程代码执行(RCE),从而完全控制系统。
主要发现:
用户密码认证漏洞:在Vault的
userpass认证机制中,发现了多个逻辑漏洞,包括通过大小写变化绕过锁定机制、通过时间差推断有效用户名等,使得攻击者可以在不触发防御机制的情况下进行大规模暴力破解。LDAP认证漏洞:在LDAP认证中,发现了输入格式不匹配导致的锁定机制绕过,以及特定配置下多因素认证(MFA)的绕过漏洞,使得攻击者可以绕过MFA保护。
TOTP MFA漏洞:在Vault的TOTP(基于时间的一次性密码)实现中,发现了多个逻辑漏洞,包括通过空格填充绕过一次性使用限制、通过时间偏差绕过速率限制等,显著降低了MFA的有效性。
证书认证漏洞:在证书认证中,发现了攻击者可以通过修改证书的Common Name(CN)字段来冒充其他机器身份,从而继承相关策略和权限。
权限提升漏洞:发现了管理员用户可以通过策略名称的规范化漏洞,将
root策略分配给自身,从而获得完全的管理权限。远程代码执行漏洞:通过滥用Vault的插件系统,攻击者可以利用审计日志功能将恶意代码写入磁盘,并通过插件接口执行,最终实现远程代码执行。这是Vault首次公开的RCE漏洞。
影响与攻击路径:
这些漏洞单独或组合使用,可以形成多种攻击路径,具体取决于配置和权限。例如,攻击者可以通过userpass认证漏洞枚举有效用户名、绕过锁定机制和MFA保护,最终通过插件接口实现远程代码执行。类似地,LDAP和证书认证漏洞也可以被利用来绕过安全机制,最终获得完全控制权。
披露与响应:
Cyata团队遵循了严格的负责任披露流程,所有漏洞均在公开前报告给HashiCorp,并与其安全团队紧密合作,确保所有问题在公开披露前得到修复。HashiCorp迅速发布了补丁,确保用户能够及时保护其环境。
结论:
这项研究表明,即使在没有内存安全漏洞的情况下,逻辑漏洞仍然可能导致严重的后果。Vault作为保护基础设施的核心工具,其身份验证、策略执行等核心功能的逻辑漏洞可能会被攻击者利用,导致身份冒充、权限提升甚至远程代码执行。Cyata团队通过手动审查和攻击者思维,系统地揭示了这些漏洞,强调了深入行为测试的重要性。
总结:
这项研究不仅揭示了HashiCorp Vault中的严重漏洞,也为安全社区提供了宝贵的经验教训,提醒我们在信任模型的设计和实现中,逻辑漏洞同样需要高度重视。
评论总结
评论内容总结:
正面评价:
- 评论1和评论11对文章表示赞赏,认为其内容丰富且具有启发性。
- "Fantastic work guys. Thank you."(评论1)
- "Impressive. It's worth reading despite the slight AI sheen to the writing, as it's unusually informative relative to most security articles."(评论11)
- 评论1和评论11对文章表示赞赏,认为其内容丰富且具有启发性。
对AI写作的质疑:
- 评论2和评论7对文章的AI写作风格表示怀疑,认为部分内容可能不准确或冗余。
- "Mmm AI writing gotta love it… /s"(评论2)
- "Wait, why would I care this is 'daka' in Hebrew? Is this a hallucination or did they edit poorly?"(评论7)
- 评论2和评论7对文章的AI写作风格表示怀疑,认为部分内容可能不准确或冗余。
对文章内容的批评:
- 评论8和评论14认为文章过于冗长,且语言风格过于简单化。
- "Something feels odd reading the article. It's so verbose like it's trying to explain things like the reader is 5yo."(评论8)
- "Like, of course a language that sucks for writing parsers will end up with a ton of bugs..."(评论14)
- 评论8和评论14认为文章过于冗长,且语言风格过于简单化。
对漏洞的讨论:
- 评论9和评论15详细讨论了文章中提到的多个CVE漏洞,并指出这些漏洞在OpenBao项目中也有影响。
- "The post covers 9 CVEs May-June 2025..."(评论9)
- "We’ve triaged as being affected by 8 of the 9 CVEs..."(评论15)
- 评论9和评论15详细讨论了文章中提到的多个CVE漏洞,并指出这些漏洞在OpenBao项目中也有影响。
对代码质量的批评:
- 评论16对Vault的代码质量表示不满,认为其测试套件不足,存在大量漏洞。
- "The code base is an absolute mess."(评论16)
- 评论16对Vault的代码质量表示不满,认为其测试套件不足,存在大量漏洞。
对用户枚举漏洞的看法:
- 评论13认为用户枚举漏洞并不严重,因为用户名通常是公开的。
- "Its nearly always possible to get usernames elsewhere, they are basically public..."(评论13)
- 评论13认为用户枚举漏洞并不严重,因为用户名通常是公开的。
对文章作者的回应:
- 评论12中作者回应了评论,澄清了漏洞的发现过程,并承认文章的部分内容可能显得“AI化”。
- "Just to clarify - all the vulnerabilities were found manually by a very real human..."(评论12)
- 评论12中作者回应了评论,澄清了漏洞的发现过程,并承认文章的部分内容可能显得“AI化”。
总结:评论中对文章的内容和写作风格存在分歧,部分读者认为其内容丰富且有启发性,而另一些读者则批评其冗长和AI化的写作风格。同时,评论中对文章中提到的漏洞进行了详细讨论,并对Vault的代码质量提出了批评。