CVE-2025-11984CVE-2025-11984是GitLab Community Edition(CE)和Enterprise Edition(EE)中的一个中等严重性安全漏洞。该漏洞存在于GitLab的多版本中,从13.1到18.4.6之前的版本、18.5到18.5.4之前的版本以及18.6到18.6.2之前的版本均受影响。漏洞的本质是经过身份验证的用户在特定条件下可以通过操纵会话状态来绕过WebAuthn双因素认证机制。WebAuthn是Web Authentication API的标准,用于实现强制的基于公钥密码学的身份认证,是现代Web应用中重要的二次认证手段之一。该漏洞的CVSS评分为6.8,属于中等严重性等级。虽然攻击者需要具备一定的低权限才能利用此漏洞,但一旦成功,攻击者可以绕过关键的二次认证保护,获得未经授权的系统访问权限,从而可能导致敏感数据泄露或进一步的攻击行为。
该漏洞的技术核心在于GitLab在处理WebAuthn双因素认证时的会话状态管理存在缺陷。攻击者利用会话状态操纵技术,可以在完成初始身份验证后、强制完成WebAuthn验证前,通过修改特定的会话参数或状态变量来绕过认证检查。具体攻击过程涉及以下几个关键环节:首先,攻击者需要拥有一个有效的GitLab账户并进行正常登录流程;其次,在系统要求进行WebAuthn双因素认证时,攻击者通过拦截和修改会话请求中的状态标识符或令牌,诱导服务器认为认证已完成;最后,系统错误地授予攻击者完全访问权限,而无需实际完成WebAuthn验证。CVSS向量显示该漏洞可通过网络远程利用(AV:N),需要低权限用户身份(PR:L),无需用户交互(UI:N),但对机密性(C:H)和完整性(I:H)产生高影响。攻击者利用此漏洞可以绕过二次认证机制,访问受保护的资源或执行未授权操作。