文章摘要
研究人员发现微软Azure Entra ID存在第三和第四个登录日志绕过漏洞,攻击者可通过特殊构造的登录请求获取有效令牌且不留下登录日志。这些漏洞虽已修复,但暴露了关键安全日志系统的脆弱性,管理员依赖这些日志检测入侵。作者还探讨了如何使用KQL查询检测此类绕过行为。
文章总结
标题:Azure登录日志绕过漏洞全披露:发现第三与第四种绕过方法
核心内容概述:
安全研究员Nyxgeek披露了两种新的Azure Entra ID(原Azure AD)登录日志绕过漏洞(分别命名为GraphGoblin和Graph**),使得攻击者能够获取有效令牌且活动不会出现在登录日志中。这是作者三年来发现的第三和第四个同类漏洞,前两个漏洞(GraphNinja和GraphGhost)已分别于2024年和2025年被修复。
漏洞详情
GraphGoblin漏洞
- 原理:通过重复提交合法参数值(如
scope=openid openid...重复3.5万次)导致SQL列溢出,使日志记录失败。 - 影响:攻击者可获取完整功能令牌,且登录行为完全不会记录在Entra ID日志中。
- 修复时间:2025年11月21日(微软首次复现失败,需作者提供视频证明后快速修复)。
- 原理:通过重复提交合法参数值(如
Graph漏洞
- 原理:提交超长(5万字符)的User-Agent字段触发数据库溢出。
- 影响:与GraphGoblin类似,可绕过日志记录获取令牌。
- 修复时间:2025年10月9日(微软在作者正式报告前已自行修复)。
历史漏洞回顾
| 漏洞名称 | 修复时间 | 功能描述 | 是否返回令牌 | 微软奖励 | |--------------|----------|--------------------------------------------------------------------------|--------------|----------| | GraphNinja | 2024年5月 | 通过指定外部租户ID验证密码,无日志记录 | 否 | 是 | | GraphGhost | 2025年4月 | 提供无效Client ID导致认证流程失败,但密码验证成功 | 否 | 是 | | GraphGoblin | 2025年11月| 重复参数值溢出SQL列,绕过日志并获取令牌 | 是 | 否 | | Graph** | 2025年10月| 超长User-Agent触发溢出,绕过日志并获取令牌 | 是 | 无 |
微软的争议回应
- 漏洞评级争议:微软将GraphGoblin评为“中度”风险,拒绝发放奖金,尽管其危害性(获取完整令牌)高于此前获奖励的漏洞。
- 修复速度矛盾:虽不承认漏洞重要性,GraphGoblin修复仅耗时两周,远快于前两个漏洞(7个月和5个月)。
防御建议
- E5许可证用户:通过KQL查询比对Graph活动日志与登录日志的
SessionId,检测缺失的登录记录(需付费功能支持)。 - 参考Fabian Bader的检测方案,结合多类登录日志(如服务主体登录)减少误报。
作者质疑
- 测试不足:所有漏洞均通过简单模糊测试发现,质疑微软对核心安全功能(如登录日志)的代码审查力度。
- 透明度缺失:微软未公开漏洞细节或根本原因,且选择性公开漏洞信息,可能掩盖系统性风险。
结语:
Azure Entra登录日志作为关键安全防线,三年内出现四次简单绕过漏洞,暴露微软在基础安全实践上的缺陷。尽管漏洞已修复,但评级与响应的不一致性削弱了用户对云服务安全的信任。
评论总结
以下是评论内容的总结:
对Azure安全性的批评
- 有评论引用报道称联邦网络安全专家将微软云称为"一堆垃圾",但仍批准使用。
"Federal cyber experts called Microsoft’s cloud a 'pile of shit,' approved it anyway" - 用户deathanatos分享个人经历,指出Azure审计日志不可靠,与实际操作不符。
"According to the logs, I had done it. And yet, I also knew that I had not done it."
- 有评论引用报道称联邦网络安全专家将微软云称为"一堆垃圾",但仍批准使用。
对Azure复杂性和设计缺陷的抱怨
- 用户cyberax认为Azure Entra过于复杂,难以理解。
"Azure Entra is an example of making a system so complex that nobody can understand it entirely." - 用户jiggawatts批评日志设计不合理,隐藏用户身份信息,导致管理困难。
"Azure purposefully obscures the identity of users in audit logs!!!"
- 用户cyberax认为Azure Entra过于复杂,难以理解。
对微软支持和服务的不满
- 用户strbean提到微软支持无用,无法解决账单问题。
"Support is useless of course." - 用户fuckinpuppers直接表达对Azure的失望。
"It is shocking how absolutely garbage azure is."
- 用户strbean提到微软支持无用,无法解决账单问题。
对微软市场地位的讨论
- 用户epistasis指出IT管理员偏爱购买微软产品,即使产品存在问题。
"IT admins really love buying Microsoft." - 用户dfedbeef引用漏洞演示,调侃微软的修复效率。
"Absolutely savage lol [If you didn't read the thing, it's one curl command.]"
- 用户epistasis指出IT管理员偏爱购买微软产品,即使产品存在问题。
与其他云服务的比较
- 用户cyberax比较Azure与Google Cloud和AWS,认为后者更简单或更可控。
"Google Cloud is simplistic in comparison. AWS is full of legacy complexity but it's fairly self-contained."
- 用户cyberax比较Azure与Google Cloud和AWS,认为后者更简单或更可控。
总结:评论普遍对Azure的安全性、复杂性和支持服务表示不满,但也提到微软在市场中的强势地位。部分用户分享了具体的使用问题,尤其是日志和审计功能的缺陷。