CVE-2026-3857GitLab CE/EE 存在一个因 CSRF 保护不足而引发的安全漏洞。该漏洞影响了特定版本范围内的所有 GitLab 实例。未经身份验证的攻击者可以利用此漏洞,诱导已认证的用户执行恶意的 GraphQL 变更操作。由于缺乏充分的跨站请求伪造防护机制,攻击者能够代表受害者执行任意 GraphQL 请求,从而可能导致数据泄露或完整性破坏。该问题已在后续版本中得到修复。
该漏洞的根源在于 GitLab 处理 GraphQL 变更请求时缺乏足够的跨站请求伪造(CSRF)防护机制。通常情况下,状态改变的操作(如 mutations)应严格验证请求来源或要求有效的 CSRF Token。然而,在受影响的版本中,GitLab 未能对某些 GraphQL 端点实施此类检查。攻击者无需获取受害者的凭证,只需构造一个恶意的 HTML 页面或脚本,并在其中嵌入指向 GitLab GraphQL API 的恶意请求。当已登录 GitLab 的用户访问攻击者控制的页面时,浏览器会自动携带用户的 Session Cookie 发起请求。由于服务器端未能区分请求是否由用户主动发起,攻击者即可以此身份执行任意 GraphQL 变更操作,如修改用户设置、删除数据或更改仓库权限等,从而对系统的机密性和完整性造成严重影响。