Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
gitlab-cve-2026-85706-ioc — CVE-2026-85706 — GitLab 路径遍历 IOC 扫描与检测工具包。通过 IOC 扫描、Sigma、Suricata/Snort 以及 SIEM 检测规则,检测并追踪针对严重的未认证 GitLab CE/EE 路径遍历漏洞的利用行为。 | Kitploit
工具/GitHubGitHub/jithinkrishnanrs/gitlab-cve-2026-85706-ioc
防御工具危害指标 (IOC) 管理漏洞扫描器威胁源与聚合器漏洞分析信息收集Web安全网络安全威胁情报

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
事件响应
日志分析
GitHubjithinkrishnanrs/gitlab-cve-2026-85706-ioc

gitlab-cve-2026-85706-ioc

CVE-2026-85706 — GitLab 路径遍历 IOC 扫描与检测工具包。通过 IOC 扫描、Sigma、Suricata/Snort 以及 SIEM 检测规则,检测并追踪针对严重的未认证 GitLab CE/EE 路径遍历漏洞的利用行为。

查看仓库
16小时6分前尚未审核

CVE-2026-85706 — GitLab 路径遍历 IOC 扫描器与检测工具包

GitLab CE/EE 仓库提交 API 未认证路径遍历(CVSS 3.1:10.0,严重) 状态:已在野活跃利用 · 已列入 CISA KEV(2026-09-11,截止 2026-09-14)· 已由 GitLab 于 2026-09-10 修复

CI License: MIT CVSS CISA KEV GitHub issues GitHub stars

一个免费、开源的事件响应与威胁狩猎工具包,针对 CVE-2026-85706 —— 一个影响 仓库提交 API 的 GitLab 社区版(CE)与企业版(EE) 严重未认证路径遍历漏洞。本仓库为安全团队、SOC 分析师、检测工程师和 GitLab 管理员提供 可直接运行的 IOC(入侵指标)扫描器、Sigma / Suricata / Snort 检测规则、 Splunk / Elastic / OpenSearch 狩猎查询,以及分步修复指南 —— 检测利用尝试、确认补丁状态并快速响应此 GitLab 零日 / n 日漏洞所需的一切。

🔎 想最快知道"我是否受影响?" 请跳转至 快速开始。

🚨 想知道该升级到哪个版本? 请跳转至 修复版本与补丁。


目录

  • 漏洞摘要
  • 为何重要
  • 修复版本与补丁
  • 同一版本中修复的相关漏洞
  • 仓库内容
  • 快速开始
    • 1. 扫描 GitLab 日志中的 IOC
    • 2. 检查你的 GitLab 版本是否已修复
    • 3. 将检测规则部署到 SIEM / IDS
  • 扫描器工作原理
  • 示例输出
  • 入侵指标(IOC)摘要
  • 检测内容
  • 修复
  • 常见问题
  • 局限性与免责声明
  • 贡献
  • 来源与延伸阅读
  • 许可证

漏洞摘要

未认证攻击者可以向 GitLab 的仓库提交 API 发送单个精心构造的 HTTP 请求, 提供包含目录遍历序列(../、URL 编码变体等)的 file.path(或 file_path)参数,使服务器返回预期仓库目录之外的任意文件内容 —— 包括 GitLab 自身的密钥文件、数据库配置、SSH 私钥以及其他敏感服务器端数据。 由于无需任何凭据且请求构造简单,GitLab 和第三方研究人员将其评为最高严重级别 (CVSS 10.0),CISA 也已确认在野活跃利用。

为何重要

  • GitLab 被数千万开发者和远超 10 万家组织用于存储私有源代码、CI/CD 密钥和 基础设施凭据。
  • 成功利用可直接导致源代码窃取、密钥泄露和供应链入侵 —— 攻击者一旦读取 gitlab-secrets.json、database.yml 或 CI/CD runner 令牌,便可转向远比初始 文件读取所暗示的更深层访问。
  • 该漏洞需要零认证和一个 HTTP 请求 —— 实际上不存在大规模扫描的障碍, 且公开披露后一天内即观察到扫描活动。
  • 它现已列入 CISA KEV 目录,意味着美国联邦机构须按加速时间表完成修复 —— 这是一个强烈信号:每个运行自管理 GitLab 的组织,无论所属行业,都应以同样的 紧迫性对待此事。

修复版本与补丁

GitLab 于 2026-09-10 在以下版本中修复了 CVE-2026-85706:

  • 19.3.2
  • 19.2.6
  • 19.1.8

任何处于这些分支中更早补丁级别 —— 或完全处于更早主/次版本分支 —— 的自管理 GitLab CE/EE 实例,都应被视为易受攻击并立即升级。GitLab.com 的 SaaS 服务由 GitLab 直接修复,无需客户操作。完整的分步升级与事件响应指南请参见 docs/remediation.md。

升级说明: 在单节点 GitLab 实例上,升级到这些版本会涉及停机,因为数据库 迁移需在 GitLab 重启前完成。多节点实例可按照 GitLab 文档化的零停机升级流程 应用补丁而无需停机。19.3.2 版本还包含在升级完成后运行的后部署迁移 —— 请将此纳入维护窗口的考量。


同一版本中修复的相关漏洞

CVE-2026-85706 是一次共修复 17 个漏洞的关键 GitLab 安全发布中的头条问题。 同一发布中的另外两个问题值得一并跟踪,因为它们影响相似的攻击面和凭据/密钥 泄露风险:

实际要点: 如果你正在为 CVE-2026-85706 打补丁,你已经在同一个 19.3.2 / 19.2.6 / 19.1.8 发布中一并引入了上述所有修复 —— 没有理由只为 CVE-2026-85706 打补丁而推迟其余部分。应将其视为需完整应用的一次发布, 而非可独立安排修复的菜单。


仓库内容```

gitlab-cve-2026-85706-ioc/ ├── README.md ← you are here ├── LICENSE ← MIT ├── CHANGELOG.md ├── CONTRIBUTING.md ├── SECURITY.md ├── scanner/ │ ├── gitlab_cve_2026_85706_ioc_scanner.py ← main IOC scanner (stdlib-only Python 3) │ └── requirements.txt ← documents "no dependencies needed" ├── detection/ │ ├── sigma_rule_gitlab_cve_2026_85706.yml ← Sigma rule (SIEM-agnostic) │ ├── network_ids_cve_2026_85706.rules ← Suricata/Snort signatures │ └── siem_hunting_queries.md ← Splunk / Elastic / OpenSearch / grep queries ├── docs/ │ ├── ioc_list.md ← full IOC reference (network, host, post-exploitation) │ ├── remediation.md ← patch & incident-response playbook │ └── timeline.md ← public disclosure & exploitation timeline ├── tests/ │ ├── test_scanner.py ← unit tests (stdlib unittest) │ └── fixtures/sample_production_json.log ← sanitized sample log for testing └── .github/workflows/ci.yml ← GitHub Actions: lint, test, smoke-test on every push

root@kitploit:~
---

## 🚀 快速开始

### 1. 扫描你的 GitLab 日志以查找 IOC

该扫描器是**纯 Python 3 标准库**——无需 `pip install`,因此你可以仅将这一个文件复制到受严格管控的 GitLab 主机上并立即运行。```bash
git clone https://github.com/jithinkrishnanrs/gitlab-cve-2026-85706-ioc.git
cd gitlab-cve-2026-85706-ioc

python3 scanner/gitlab_cve_2026_85706_ioc_scanner.py \
  --production-log /var/log/gitlab/gitlab-rails/production_json.log \
  --api-log /var/log/gitlab/gitlab-rails/api_json.log \
  --nginx-log /var/log/gitlab/nginx/gitlab_access.log \
  --format json --out report.json

退出码 1 表示至少发现了一个潜在 IOC——请立即查看 report.json。退出码 0 表示在您提供的日志中未发现匹配项(参见 Limitations——这并不保证系统未被入侵)。

您还可以使用 --generic-log(可重复使用的标志)将其指向任意/轮转日志,并通过 --format text|json|csv 选择报告格式。

2. 检查您的 GitLab 版本是否已修补```bash

python3 scanner/gitlab_cve_2026_85706_ioc_scanner.py --check-version 19.2.3

→ GitLab 19.2.3 is VULNERABLE to CVE-2026-85706. Upgrade to 19.2.6 or later immediately...

python3 scanner/gitlab_cve_2026_85706_ioc_scanner.py --check-version 19.2.6

→ GitLab 19.2.6 is PATCHED for CVE-2026-85706 (fixed in 19.2.6).

root@kitploit:~
### 3. 将检测规则部署到你的 SIEM / IDS

- 将 [`detection/sigma_rule_gitlab_cve_2026_85706.yml`](https://github.com/jithinkrishnanrs/gitlab-cve-2026-85706-ioc/blob/main/detection/sigma_rule_gitlab_cve_2026_85706.yml)
  导入到你的 Sigma 兼容流水线中(通过 `sigma-cli` 接入 Splunk、Elastic
  Detection Rules、Microsoft Sentinel、Chronicle 等)。
- 将 [`detection/network_ids_cve_2026_85706.rules`](https://github.com/jithinkrishnanrs/gitlab-cve-2026-85706-ioc/blob/main/detection/network_ids_cve_2026_85706.rules)
  部署到 Suricata 或 Snort —— **先以仅告警模式运行**,并根据你的环境调整
  SID/阈值,然后再启用阻断。
- 从
  [`detection/siem_hunting_queries.md`](https://github.com/jithinkrishnanrs/gitlab-cve-2026-85706-ioc/blob/main/detection/siem_hunting_queries.md)
  复制/粘贴现成的查询语句,适用于 Splunk(SPL)、Elastic/Kibana(KQL + DSL)、OpenSearch(PPL)以及纯
  `ripgrep`/`grep` 排查。

---

## 扫描器工作原理

`gitlab_cve_2026_85706_ioc_scanner.py` 会解析 GitLab 的结构化 JSON 日志
(`production_json.log`、`api_json.log`)以及通用的 combined 格式
反向代理访问日志,并标记出与 CVE-2026-85706 公开披露的利用模式相匹配的请求:

1. **端点匹配** —— 请求路径命中易受攻击的端点族:
   `/api/v4/projects/:id/repository/commits` 及其子资源。
2. **参数匹配** —— 查询字符串、表单正文或 JSON 正文中存在 `file.path` / `file_path` / `path` 风格的
   参数。
3. **载荷匹配** —— 该参数的值包含路径遍历
   序列(`../`、URL 编码、双重编码、超长 UTF-8 以及
   分号路径段变体)**或**引用了已知的敏感
   目标文件(`/etc/passwd`、`gitlab-secrets.json`、`secrets.yml`、
   `database.yml`、SSH 私钥等)。
4. **认证上下文** —— 扫描器会检查 `PRIVATE-TOKEN`、
   `Authorization` 或非空的 `user_id` 字段,以判断该
   请求是否经过认证,从而匹配本 CVE 核心的**未认证 / 认证前**
   利用条件。
5. **速率启发式** —— 独立于载荷匹配,在短时间内对 commits API 发起异常大量请求的源 IP
   会被标记为疑似脚本化侦察。

发现结果会被评为 **CRITICAL / HIGH / MEDIUM**,并导出为
结构化 JSON、CSV 或人类可读文本以供排查。

## 示例输出```text
CVE-2026-85706 IOC Scan Report — 2 finding(s)
============================================================
[CRITICAL] 2026-09-11T02:14:33.120Z src=203.0.113.9 method=POST auth=False
    path: /api/v4/projects/42/repository/commits/HEAD
    matched: ../../../../etc/passwd
    reason: path-traversal sequence in file path parameter; known sensitive/system file referenced; unauthenticated request (matches pre-auth exploitation condition)
    log: production_json.log

[CRITICAL] 2026-09-11T02:16:45.501Z src=203.0.113.9 method=POST auth=False
    path: /api/v4/projects/17/repository/commits/abc123
    matched: ..%2f..%2f..%2fopt%2fgitlab%2fembedded%2fservice%2fgitlab-rails%2fconfig%2fsecrets.yml
    reason: path-traversal sequence in file path parameter; unauthenticated request (matches pre-auth exploitation condition)
    log: production_json.log

(由 tests/fixtures/ 中的已清理样本 fixture 生成。)


入侵指标(IOC)摘要

完整详情(包括基于主机和利用后的指标)见 docs/ioc_list.md。主要网络指标:

  • 对 /api/v4/projects/<id>/repository/commits* 的请求
  • 包含 ../、%2e%2e%2f、..%2f、%252e%252e%252f 或类似 路径遍历序列的 file.path / file_path 参数
  • 对 /etc/passwd、/etc/shadow、gitlab-secrets.json、 secrets.yml、database.yml、id_rsa、.env 或 /opt/gitlab/embedded/service/gitlab-rails/config/secrets.yml 的引用

检测内容

修复

完整处置手册见 docs/remediation.md。 摘要:

  1. 立即修补至 GitLab 19.3.2 / 19.2.6 / 19.1.8 或更高版本。
  2. 如果无法立即修补,移除公网暴露(仅限 VPN 访问)作为临时措施 —— 目前没有完整的变通方案。
  3. 对任何自披露(2026-09-10)以来面向互联网的易受攻击实例 假定已遭入侵,并轮换密钥:GitLab secrets 文件、 数据库凭据、SSH 密钥、个人访问令牌、CI/CD 变量 以及 runner 注册令牌。
  4. 在修补前后使用本仓库的工具狩猎你的日志。
  5. 调查任何被标记的发现,若确认遭到利用,则启动事件响应。

常见问题

GitLab.com(SaaS)是否受影响? GitLab.com 无需客户采取任何行动 —— GitLab 会直接修补其 SaaS 平台。本工具适用于自管理的 GitLab CE/EE 实例。

利用此漏洞是否需要认证? 不需要 —— 这正是该 CVE 被评为 CVSS 10.0 的原因。它是针对单个 API 端点的未认证路径遍历漏洞。

是否有公开的漏洞利用 / PoC? 截至本文撰写时,尚未确认有公开的概念验证,但已观察到主动扫描/探测 活动。本仓库不包含也不链接漏洞利用代码 —— 原因见 CONTRIBUTING.md,并请始终查阅 官方 GitLab CVE-2026-85706 公告 以获取最新的厂商指导。

扫描器能否确定地告诉我是否遭到入侵? 没有任何工具能保证这一点。它基于你提供的日志执行尽力而为的检测。 参见局限性与免责声明。

我需要什么样的日志保留期? GitLab 的默认日志轮转可能无法将日志保留至披露日期(2026-09-10)。 如果你的主机日志已经轮转,请从集中式 SIEM/日志归档中提取 —— 参见 detection/siem_hunting_queries.md 中的说明。

本仓库是否适用于 GitLab Helm/Kubernetes 或 Docker 部署? 适用,只要你能将 production_json.log / api_json.log(或 你的 ingress/反向代理访问日志)导出为扫描器可读取的文件; 对于三种命名日志类型之外的任何内容,请使用 --generic-log。

具体哪些版本受影响? GitLab CE/EE 18.7 至(不含)19.1.8、19.2 至(不含) 19.2.6,以及 19.3 至(不含)19.3.2。早于 18.7 分支的任何版本 同样不受支持/已终止生命周期,应视为易受攻击并无论如何都应升级。

这是否真的被利用了,还是仅仅“存在风险”? 已确认遭到利用。watchTowr Labs 在 GitLab 公开披露约 24 小时后 观察到首批在野利用尝试,CISA 随后将 CVE-2026-85706 加入其 KEV 目录,正是因为其确认了真实世界的利用 —— 这不是理论性 或“仅负责任披露”的发现。

CISA BOD 26-04 的“取证分诊”认定对我意味着什么? CISA 将该 CVE 标记为需要根据第 26-04 号约束性操作指令进行取证分诊, 这意味着对于联邦系统而言,其假设是易受攻击的、面向互联网的实例 可能在被修补之前就已被访问 —— 而不仅仅是理论上的暴露。 同样的假设对任何组织来说都是合理的默认做法:将修补视为事件响应 流程的第一步,而非终点。完整的假定入侵检查清单(密钥轮换、 凭据审查、CI/CD 审计)见 docs/remediation.md。

同一 GitLab 版本中还修复了其他内容吗? 是的 —— 2026 年 9 月 10 日的版本共修复了 17 个安全问题, 包括第二个严重级别问题(GitLab EE 中 GraphQL 订阅序列化器的 不安全反序列化)以及一个高级别的 Unicode 转换包装器中的 缓冲区溢出。参见 同一版本中修复的相关漏洞。 由于这些漏洞都随相同的 19.3.2 / 19.2.6 / 19.1.8 版本发布, 针对 CVE-2026-85706 的修补同时也修复了它们。

局限性与免责声明

  • 本工具仅执行尽力而为的检测。未发现任何结果并不证明 系统未遭入侵 —— 日志可能已轮转、被攻击者篡改,或者相关字段 可能未在你的日志配置中启用。
  • 发现结果本身并不证明利用成功 —— 在宣布事件之前,请始终 结合你自己的网络环境(已知扫描器、合法自动化)手动验证匹配项。 参见 docs/ioc_list.md 中的误报说明。
  • 本项目与 GitLab Inc. 无关联,也未获其认可。如需权威的厂商 指导,请始终查阅 GitLab 的官方安全发布说明和公告。
  • 本仓库不包含任何漏洞利用或概念验证代码。它严格来说是一个 防御性检测与修复工具包 —— 项目范围政策见 CONTRIBUTING.md。

贡献

欢迎贡献新的 IOC、检测规则移植、误报报告 以及扫描器改进 —— 指南见 CONTRIBUTING.md(包括 禁止漏洞利用代码的政策和数据清理要求)。

来源与延伸阅读

  • GitLab,Critical Patch Release: 19.3.2, 19.2.6, 19.1.8(2026-09-10)—— 官方厂商公告、17 项安全修复的完整表格,以及 升级/停机说明
  • watchTowr Labs,Rapid Reaction: GitLab Path Traversal Vulnerability (CVE-2026-85706)(2026-09-11)—— 首份关于在野探测的报告, 约在披露后 24 小时
  • SecurityWeek,GitLab Vulnerability Exploited One Day After Disclosure (2026-09-11)—— 精确的受影响版本范围(18.7–19.1.8、19.2–19.2.6、 19.3–19.3.2)以及主动利用的确认
  • BleepingComputer,GitLab urges users to patch max severity path traversal flaw(2026-09-11)—— 研究者致谢(HackerOne 账号 “s3ntago”)及披露背景
  • CISA 已知被利用漏洞(KEV)目录 —— CVE-2026-85706 条目,添加于 2026-09-11,修复截止日期 2026-09-14
  • CISA / GBHackers,CISA Warns of Critical GitLab Vulnerability Exploited in Attacks(2026-09-11/12)—— CWE-35 分类及第 26-04 号约束性 操作指令的取证分诊指导
  • Horizon3.ai Attack Research —— CVE-2026-85706 技术文章
  • Field Effect,GitLab fixes critical vulnerability as internet-wide probing begins —— 缓解与资产清点指导
  • 独立研究者报告(dev.to)关于观察到的主动扫描 活动及攻击流程分析(2026-09-11/12)

完整引用详情及更多背景见 docs/timeline.md。

许可证

基于 MIT 许可证发布。检测内容(Sigma、 Suricata/Snort 规则、SIEM 查询)按原样提供用于防御目的; 在将其用于实际运营之前,请根据你自己的环境调整阈值和 误报处理方式。


关键词

CVE-2026-85706 GitLab CVE-2026-85706 GitLab path traversal GitLab vulnerability GitLab IOC GitLab indicators of compromise GitLab security advisory GitLab exploit detection GitLab CVSS 10.0 GitLab CISA KEV GitLab repository commits API vulnerability GitLab unauthenticated file read GitLab arbitrary file read path traversal CVE 2026

下载工具
CVE IDCVE-2026-85706
厂商 / 产品GitLab 社区版(CE)与企业版(EE),自管理部署
漏洞类别路径遍历(CWE-35),属于更广泛的路径名限制不当家族(CWE-22)
受影响组件仓库提交 API(/api/v4/projects/:id/repository/commits...)
根本原因受影响 API 端点中路径限制不当,且缺少身份验证强制
受影响版本GitLab CE/EE 18.7 至(不含)19.1.8、19.2 至(不含)19.2.6、19.3 至(不含)19.3.2
是否需要认证否 —— 未认证,认证前利用
攻击向量网络,单个 HTTP 请求
CVSS 3.1 评分10.0(严重)
影响GitLab 服务器上的任意文件读取 —— 配置文件、密钥、令牌、源代码,可能还包括 SSH 密钥和数据库凭据
报告者外部安全研究员(HackerOne 用户名 "s3ntago"),通过 GitLab 的 HackerOne 漏洞赏金计划提交
披露 / 修复2026 年 9 月 10 日 —— 属于一次关键 GitLab 安全发布,共修复 17 个漏洞(参见相关漏洞)
CISA KEV于 2026 年 9 月 11 日加入;联邦文职机构修复截止日期为 2026 年 9 月 14 日;CISA 已将该 CVE 标记为需依据约束性操作指令(BOD)26-04 进行取证排查,反映出易受攻击系统可能在打补丁前已被访问的可能性
利用状态已确认在野观察到活跃扫描 / 探测 —— watchTowr 报告称,在公开披露后约 24 小时内即出现首批在野利用尝试,评估大规模利用很可能随之而来
公开 PoC撰写本文时未确认公开可用
GitLab.com / DedicatedGitLab.com(SaaS)在披露时已完成修复;GitLab Dedicated 客户无需采取行动。仅自管理 CE/EE 实例需要采取行动
漏洞严重性备注
CVE-2026-85706 —— 仓库提交 API 中的路径遍历严重(CVSS 10.0)未认证任意文件读取 —— 本仓库的重点
GraphQL 订阅序列化器中的不安全反序列化(GitLab EE)严重仅影响 GitLab EE;此类反序列化缺陷视可利用性可能潜在地导致远程代码执行
Unicode 转换包装器中的缓冲区溢出(GitLab EE)高
计划流水线执行策略测试允许开发者访问受保护的 CI/CD 变量高凭据/密钥泄露风险,与本仓库修复指南中"保护你的 CI/CD 密钥"响应行动相关
Markdown JSON 表格渲染器中的跨站脚本(CE/EE)高
CI/CD 环境变量作用域匹配器中的授权不当(CE/EE)高
GraphQL 复杂度限制器中的拒绝服务(CE/EE)高
SAML SSO 登录限制强制中的认证不当(CE/EE)中
Workhorse senddata 发射器中的凭据保护不足(CE/EE)中
受保护环境审批规则与合规框架中的若干其他授权绕过和访问控制问题(EE)中
  • 上述请求缺少有效的 PRIVATE-TOKEN / Authorization 头 或已认证会话
  • 短时间内来自单一源 IP 对 commits API 的异常高请求量
  • 文件平台用途
    detection/sigma_rule_gitlab_cve_2026_85706.ymlSigma(SIEM 无关)基于日志的检测规则,可转换为 Splunk、Elastic、Sentinel、Chronicle、QRadar 等
    detection/network_ids_cve_2026_85706.rulesSuricata / Snort用于内联 IDS/IPS 传感器的网络层签名
    detection/siem_hunting_queries.mdSplunk、Elastic/Kibana、OpenSearch、grep/ripgrep用于手动/临时调查的即用型狩猎查询
    GitLab patch 19.3.2
    GitLab patch 19.2.6
    GitLab patch 19.1.8
    GitLab secrets exposure
    GitLab CI/CD credential theft
    Sigma rule GitLab
    Suricata rule GitLab
    Snort rule GitLab
    Splunk GitLab hunting
    GitLab incident response
    GitLab threat hunting
    self-managed GitLab security