Summary
CVE-2026-17556 is an unauthenticated path traversal vulnerability (CWE-22) in GitHub Enterprise Server that allows a remote attacker to delete arbitrary files and directories on the instance. Because exploitation requires no authentication or user interaction and can be triggered over the network, the issue is rated HIGH severity (CVSS 8.8).
Technical details
- Root cause: The
X-GitHub-Request-IdHTTP header was used unsanitized as a filesystem path segment for upload buffers, allowing path traversal sequences to escape the intended directory. - Trigger conditions: An attacker sends a crafted request supplying a malicious
X-GitHub-Request-Idheader value; no credentials or special privileges are needed. - Attack vector: Network (remote), low complexity, no authentication, no user interaction.
- Impact: Arbitrary file and directory deletion, including storage directories holding Git LFS objects, release assets, attachments, and avatars — causing loss of integrity and availability of stored data.
Affected software
- GitHub Enterprise Server 3.17.0 through 3.17.18 (fixed in 3.17.19)
- GitHub Enterprise Server 3.18.0 through 3.18.12 (fixed in 3.18.13)
- GitHub Enterprise Server 3.19.0 through 3.19.9 (fixed in 3.19.10)
- GitHub Enterprise Server 3.20.0 through 3.20.5 (fixed in 3.20.6)
- GitHub Enterprise Server 3.21.0 through 3.21.3 (fixed in 3.21.4)
Severity
CVSS v4.0 base score: 8.8 (HIGH)
Vector: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:H/SC:N/SI:N/SA:N
Mitigation and recommended actions
- Immediate: Upgrade GitHub Enterprise Server to a fixed release for your branch — 3.17.19, 3.18.13, 3.19.10, 3.20.6, or 3.21.4.
- If no patch can be applied immediately: Restrict network access to the GitHub Enterprise Server instance to trusted networks, and place it behind a proxy or WAF that strips or validates the
X-GitHub-Request-Idrequest header before it reaches the application.
How IONIX identifies potentially affected assets
IONIX matches the following signals against data already collected when it crawled the asset; identifying the technology sends no request beyond that crawl.
- Set-Cookie response header:
_fi_sess - Raw response body:
_fi_sess

