Skip to content
Noroxi
CVE-2026-85706· NVD / CVE Program· CNA GitLab

Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal') in GitLab

GitLab has remediated an issue in GitLab CE/EE affecting all versions from 18.7 before 18.11.12, 19.0 before 19.0.9, 19.1 before 19.1.8, 19.2 before 19.2.6, and 19.3 before 19.3.2 that, under certain conditions, an unauthenticated user could have read arbitrary files from the GitLab server due to improper path confinement and missing authentication enforcement in the repository commits API.

CriticalCVSS 10.0 · v3.1KEVWeaponized Fix available
Published
Sep 11, 2026
Updated
Sep 24, 2026
EPSS
91.4% · 100th percentile▲ 82
Follow this CVE

Sign in to follow · You’ll be notified if a followed record enters KEV, gets an exploit or is updated.

Report tools

JSON

Action score

97

Now

Patch today or shut off access.

CVSS
40 / 40 · 10.0 / 10
CISA KEV
30 / 30 · Listed
EPSS
27 / 30 · 91.4%

CISA SSVC decision

Exploitation
active
Automatable
yes
Technical impact
total

Vulnrichment: CISA's decision-tree inputs.

CNA vs NVD score

NVD
—
CNA · GitLab
10.0
NVD has not scored this yet; the score shown is the CNA’s.

The score given by the assigning authority versus NVD’s independent score. A gap means the severity is contested.

Actively exploited in the wild

CISA added this to its Known Exploited Vulnerabilities catalog on Sep 11, 2026. That signals real attacks, not theory.

Remediation deadline for government agencies: Sep 14, 2026.

Affected systems

VendorProduct
gitlabgitlab

Affected versions

NVD version ranges (for catalog products). Add the product to your stack with a version and matching uses these.

  • gitlab gitlab18.7.0 and later · before 18.11.12
  • gitlab gitlab19.0.0 and later · before 19.0.9
  • gitlab gitlab19.1.0 and later · before 19.1.8
  • gitlab gitlab19.2.0 and later · before 19.2.6
  • gitlab gitlab19.3.0 and later · before 19.3.2

Versions reported by the vendor

Affected version ranges reported by the assigning authority (GitLab). Independent of NVD's CPE analysis and usually ahead of it.

  • GitLab GitLab

    • 18.7 and later · before 18.11.12affected · semver
    • 19.0 and later · before 19.0.9affected · semver
    • 19.1 and later · before 19.1.8affected · semver
    • 19.2 and later · before 19.2.6affected · semver
    • 19.3 and later · before 19.3.2affected · semver

Other highest-scoring records for the same primary product.

  • CVE-2021-22205An issue has been discovered in GitLab CE/EE affecting all versions starting from 11.9.KEV
    100Now
  • CVE-2023-7028Weak Password Recovery Mechanism for Forgotten Password in GitLabKEV
    97Now
  • CVE-2021-22175When requests to the internal network for webhooks are enabled, a server-side request forgery vulnerability in GitLab affecting all versionsKEV
    85Now
  • CVE-2021-39935An issue has been discovered in GitLab CE/EE affecting all versions starting from 10.5 before 14.3.6, all versions starting from 14.4 beforeKEV
    71This week
  • CVE-2022-2992A vulnerability in GitLab CE/EE affecting all versions from 11.10 prior to 15.1.6, 15.2 to 15.2.4, 15.3 to 15.3.2 allows an authenticated us
    65This week
  • CVE-2022-2884A vulnerability in GitLab CE/EE affecting all versions from 11.3.4 prior to 15.1.5, 15.2 to 15.2.3, 15.3 to 15.3 to 15.3.1 allows an an auth
    62This week

Remediation

Which version to upgrade to

Fix versions compiled from the vendor, package registries and Microsoft. Verify the vendor's note before upgrading.

Product / packageFixed versionSource
GitLab GitLab18.11.12Vendor (CNA)
GitLab GitLab19.0.9Vendor (CNA)
GitLab GitLab19.1.8Vendor (CNA)
GitLab GitLab19.2.6Vendor (CNA)
GitLab GitLab19.3.2Vendor (CNA)

Exploit status

Weaponized

A ready exploit tool or active in-the-wild use is known for this vulnerability. This should be your top priority.

Evidence

  • Metasploit module ×1
  • Nuclei detection template ×1
  • Proof-of-concept repository on GitHub ×13

Noroxi does not host or link to exploit code. Metasploit module names and Nuclei template ids are shown (names, not code); Exploit-DB entries and PoC repositories are given as counts only.

Public exploit evidence
SourceKindDate
Metasploit moduleauxiliary/gather/gitlab_file_read_cve_2026_85706GitLab Unauthenticated Arbitrary File Readauxiliary2026-09-10
Nuclei detection templateNuclei template CVE-2026-85706 —
Proof-of-concept repository on GitHubstars:22026-09-11
Proof-of-concept repository on GitHubstars:422026-09-11
Proof-of-concept repository on GitHubstars:02026-09-11
Proof-of-concept repository on GitHubstars:122026-09-11
Proof-of-concept repository on GitHubstars:82026-09-11
Proof-of-concept repository on GitHubstars:12026-09-12
Proof-of-concept repository on GitHubstars:42026-09-12
Proof-of-concept repository on GitHubstars:02026-09-13
Proof-of-concept repository on GitHubstars:12026-09-13
Proof-of-concept repository on GitHubstars:02026-09-14

Research context

For pentesters and researchers: attack profile, score disagreement, timeline, patch commits, credits, variant and chain candidates, bug bounty scope. All derived from existing data; no exploit code.

Timeline

From publication to today: proof of concept, Metasploit module, CISA KEV and fix record. Dates are as reported by the sources.

  1. Metasploit-2 d
  2. First PoC-1 d
  3. CISA KEV-1 d
  4. Published
  5. TodaySep 29, 2026+18 d
EPSS, last 120 days+82% in 7 days

FIRST EPSS daily score; only changes of 0.01 or more are recorded (step chart).

Patch and commit links

Commit, PR and diff links among the references. A starting point for patch-diffing and variant hunting; fixes, not exploits.

No commit or PR link among the references.

Finders, reporters and analysts named in the CNA record. Click a name for that researcher’s other records.

Variant candidates

Same product, same weakness class, within 18 months. If the patch missed the root cause, the sibling bug is here.

  • CVE-2026-1005319 days apartImproper Limitation of a Pathname to a Restricted Directory ('Path Traversal') in GitLab
    35Monitor

Chain candidates

An authentication bypass and a privilege-requiring bug in the same product, published close together: combined they may become an unauthenticated path.

  • CVE-2026-877190 days apartDeserialization of Untrusted Data in GitLab
    39Monitor
  • CVE-2026-9357712 days apartInteger Overflow or Wraparound in GitLab
    39Monitor
  • CVE-2026-887654 days apartImproper Neutralization of Special Elements used in a Command ('Command Injection') in GitLab
    34Monitor
  • CVE-2026-167945 days apartMissing Authorization in GitLab
    17Monitor

Bug bounty scope

The product’s vendor appears in a public program. Matched by name; verify the scope text in the program.

Technical details

Attack conditions

  • Anyone who can reach it over the internet can trigger it.
  • No account or password is required.
  • No user action is required.
  • No special conditions are required; it is repeatable.

If successful

Confidentiality
high · data can be read
Integrity
high · data or configuration can be modified
Availability
none

Impact can extend beyond the vulnerable component (scope changes).

Attack vector
Network
Attack complexity
Low
Privileges required
None
User interaction
None
Scope
Changed
Confidentiality impact
High
Integrity impact
High
Availability impact
None

CVSS vector

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:N

nvd-secondary

Root cause

A user-supplied file name is joined with the allowed directory, but the result is never checked to confirm it is still inside that directory.

A representative example of this vulnerability class. Not the vendor's source code; it shows the faulty pattern and its fix.

Vulnerable

ts
const file = path.join(ROOT, req.query.name);res.sendFile(file);

Fixed

ts
const file = path.resolve(ROOT, req.query.name);if (!file.startsWith(ROOT + path.sep)) {  return res.sendStatus(400);}res.sendFile(file);

Noroxi analysis

No Noroxi analysis for this record yet

We don't hand-write analysis for all 385,000+ vulnerabilities; that wouldn't be honest. For notable, high-impact vulnerabilities our team writes the mechanism, detection and remediation steps.

We use this product, ask for help

Change log

  1. Fix✗ → ✓

For records you follow, these changes also arrive as notifications. →

References

All records