
GitLab Patches Critical File-Read Flaw Under Active Probe
GitLab released patches for a maximum-severity file-read flaw actively probed in the wild, and also fixed a critical GitLab EE deserialization bug.
GitLab has released security updates that fix a maximum-severity file-read vulnerability that was already drawing live probes within hours of its public disclosure. GitLab is a widely used platform for hosting source code and managing the entire software development process, and this flaw affects both its free Community Edition and paid Enterprise Edition. The vulnerability, tracked as CVE-2026-85706, has a CVSS score of 10.0, the highest possible rating on the standard scale used to measure how serious a security weakness is. GitLab said the problem comes from improper path confinement and missing authentication enforcement in the repository commits API, a programming interface that lets outside tools ask the GitLab server for information about code commits. In plain terms, an unauthenticated attacker, someone who has not logged in, could trick the server into reading files that should remain private.
The affected releases are all versions of GitLab Community Edition (CE) and Enterprise Edition (EE) from 18.7 before 19.1.8, from 19.2 before 19.2.6, and from 19.3 before 19.3.2. WatchTowr, a preemptive exposure management firm, said it began seeing active in-the-wild probes at 06:00 UTC on September 11, 2026. Those probes show that attackers are already testing the flaw against internet-facing GitLab servers. An external attacker who exploits it can read log files and GitLab-specific configuration files, which often contain credentials, secrets and other sensitive information. Path traversal, the technique behind this flaw, works by manipulating a file location in a request so the server returns a file outside the folder it intended to allow.
watchTowr's head of threat intelligence, Jake Knott, said this is the second critical GitLab vulnerability in recent weeks. The earlier one was CVE-2026-19478, a GraphQL code injection flaw that was almost immediately actively exploited. According to Knott, the new file-read issue requires just one condition to exploit: at least one public project must exist on the GitLab instance. That makes many self-managed GitLab deployments potentially reachable, because public projects are common for open source or collaboration. Attackers are drawn to GitLab because unauthorized access can expose source code, CI/CD secrets (the credentials used by automated build and delivery systems), credentials and the ability to inject code into build pipelines, which can then poison anything downstream.
GitLab also patched a second critical vulnerability in the same releases. CVE-2026-87719 is an insecure deserialization bug in GitLab Enterprise Edition with a CVSS score of 9.9. Deserialization is the process of turning stored data back into a usable object; if this is done unsafely, an attacker can make the server reveal data it should not. In this case, an authenticated user with Duo Chat access could use a specially crafted GraphQL subscription argument to bypass serialization and perform server object lookup. That could expose Advanced Search instance configurations and sensitive credentials. The fixed versions are 19.3.2, 19.2.6, and 19.1.8, and they address both CVE-2026-85706 and CVE-2026-87719.
Organizations that run self-managed GitLab instances exposed to the internet should apply these patches as soon as possible, or limit public access if it is not required. watchTowr warned that based on the history, the transition to indiscriminate mass exploitation is likely not far away, and defenders have limited time to act. The firm recommended reviewing log files for HTTP POST requests, the type of web request used to send data to a server, to /api/v4/projects/{id}/repository/commits/ URIs that contain file.Path parameters. Finding those requests can help identify potential exploitation attempts before they succeed.
For teams that manage self-managed GitLab or other critical web infrastructure, AEU-I provides security-first IT, infrastructure and consulting services that can help assess exposure and apply security updates quickly.
How to Protect Yourself
- If you run your own GitLab website, update the software to the newest fixed version right away.
- If you cannot update yet, take your GitLab site offline or block outside visitors until you can.
- Check your website's activity log for any unusual visits that include the words "file.Path" and alert your IT team if you see them.
- If you have any public GitLab projects that do not need to be public, switch them to private.
- After updating, reset any passwords or secret keys stored in your GitLab settings.
Vulnerabilities & Fixes
- CVE-2026-19478 Prior critical GitLab GraphQL code injection vulnerability referenced by watchTowr as almost immediately actively exploited. View the fix & details →
- CVE-2026-85706 Path traversal vulnerability in GitLab repository commits API with CVSS 10 that allows unauthenticated file reads; fixed in GitLab 19.3.2, 19.2.6, and 19.1.8. View the fix & details →
- CVE-2026-87719 Insecure deserialization bug in GitLab Enterprise Edition with CVSS 9.9 that could disclose configuration and credentials; fixed in the same GitLab versions. View the fix & details →
Terms Explained
- CVSS A scoring system that rates how severe a security vulnerability is, with 10 being the most serious.
- Path traversal A type of attack where someone tricks a system into opening files outside the folder it should normally allow, potentially reading private data.
- API Application programming interface, a set of rules that lets one computer program talk to another.
- Unauthenticated Someone who has not logged in or proven their identity.
- Deserialization The process of turning stored data back into a usable object, which if done unsafely can let an attacker make a server reveal secrets.
- GraphQL A language used to ask a server for very specific pieces of data, often used by modern web apps.
- CI/CD Continuous integration and continuous delivery, the automated steps that build, test and ship software; if compromised, attackers can steal secrets or poison updates.
- GitLab CE/EE The community and enterprise editions of GitLab, a platform for storing code and managing software development.