Skip to content
Rush Commerce
Software & Dev3 min read

GitLab CVE-2026-85706: one request reads any file

GitLab patched a CVSS 10 unauthenticated path traversal in its commits API on September 10. Attackers were probing for it by September 11. Patch your self-managed instance now.

If you run self-managed GitLab, stop reading after this paragraph and go check your version. GitLab CVE-2026-85706 is a CVSS 10.0 unauthenticated path traversal in the repository commits API. One HTTP POST, no credentials, and an attacker reads arbitrary files off the server — including the config files where your CI secrets live. GitLab shipped the fix on September 10. Attack traffic showed up the next morning.

What actually happened

GitLab published a critical patch release — 19.3.2, 19.2.6 and 19.1.8 on September 10, closing 17 vulnerabilities. CVE-2026-85706 is the one that scored a perfect 10: improper path confinement plus missing authentication enforcement on POST /api/v4/projects/{id}/repository/commits/, reachable through the file.Path parameter.

Affected builds are CE and EE from 18.7 up to 19.1.7, 19.2.0 to 19.2.5, and 19.3.0 to 19.3.1. The only precondition is that your instance hosts at least one public project — that's the whole entry requirement. watchTowr's threat intel head Jake Knott put it plainly in The Hacker News writeup: one requirement, one public project. watchTowr's honeypot network logged in-the-wild probes starting 06:00 UTC on September 11. CISA added the CVE to its Known Exploited Vulnerabilities catalog the same day and gave federal agencies until September 14.

Two more in the same release deserve your attention: a 9.9 insecure deserialization that leaks Advanced Search credentials through GraphQL, and an 8.5 buffer overflow that reaches remote code execution through a crafted Git project import.

GitLab.com is already patched. GitLab Dedicated needs no action. Self-managed is your problem.

Why this matters for your business

A file-read bug on a Git server is not a file-read bug. It is a credential bug. Your GitLab box holds deploy keys, runner registration tokens, CI/CD variables, database URLs, and the gitlab.rb that ties them together. Read those and an attacker doesn't need another exploit — they push code into your pipeline and your own automation deploys it.

Patch tonight, not this weekend. The KEV listing means exploitation is confirmed, not theoretical. The patch includes database migrations, so single-node installs take downtime while they run. Budget for it instead of postponing.

Then rotate. If your instance was internet-reachable and unpatched between September 10 and whenever you upgrade, treat CI secrets as exposed. Rotate runner tokens, CI variables, and any cloud credentials stored in project settings.

Then audit your public projects. The precondition was one public project. Most shops have one by accident — an old docs repo, a template, something a contractor flipped visibility on in 2023. That accident is your attack surface.

Key takeaways

  • CVE-2026-85706 is a CVSS 10.0 unauthenticated path traversal in GitLab's repository commits API allowing arbitrary file read
  • Fixed September 10 in CE/EE 19.3.2, 19.2.6 and 19.1.8, part of a 17-vulnerability critical patch release
  • Vulnerable: 18.7–19.1.7, 19.2.0–19.2.5, 19.3.0–19.3.1. Exploitation needs only one public project on the instance
  • watchTowr saw in-the-wild probes from 06:00 UTC September 11; CISA added it to KEV the same day with a September 14 federal deadline
  • Same release also fixed a 9.9 deserialization credential leak via GraphQL and an 8.5 RCE via crafted project imports
  • Patch, then rotate runner tokens and CI variables, then audit which of your projects are public

Nobody owns your GitLab patch window? We build CI/CD that keeps secrets out of the server that hosts your code, so a file-read bug is not a breach. See how we set up pipelines, or send us your current setup.

Sources: GitLab Critical Patch Release 19.3.2, 19.2.6, 19.1.8, The Hacker News.

  • #gitlab
  • #cve-2026-85706
  • #path-traversal
  • #ci-secrets
  • #patch-management
TR

Tommy Rush — Founder, Rush Commerce

Operator turned builder. 15+ years running operations — now shipping the systems businesses run on. More

Get The Rush Report weekly — one email, zero fluff.