CVE-2026-18730: Server-side request forgery vulnerability in GitHub Enterprise Server Manage API leaked a replayable gateway-agent bearer token
A server-side request forgery (SSRF) vulnerability was identified in GitHub Enterprise Server that allowed an unauthenticated attacker to cause the Manage API to send crafted outbound requests to an attacker-controlled host. An unauthenticated endpoint parsed an attacker-supplied cluster configuration and issued gateway-to-agent requests whose HMAC authenticated only a timestamp, not the request path or body. An attacker positioned to intercept the outbound request could capture this token and replay it against privileged management agent endpoints. High-availability deployments were not affected due to a topology restriction. This vulnerability affected all versions of GitHub Enterprise Server prior to 3.22 and was fixed in versions 3.17.19, 3.18.13, 3.19.10, 3.20.6, and 3.21.4. This vulnerability was reported via the GitHub Bug Bounty program.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
GitHub Enterprise Server (Manage API)to a version that resolves this vulnerability.Fixed in 3.17.19 - Upgrade
Upgrade
GitHub Enterprise Server (Manage API)to a version that resolves this vulnerability.Fixed in 3.18.13 - Upgrade
Upgrade
GitHub Enterprise Server (Manage API)to a version that resolves this vulnerability.Fixed in 3.19.10 - Upgrade
Upgrade
GitHub Enterprise Server (Manage API)to a version that resolves this vulnerability.Fixed in 3.20.6 - Upgrade
Upgrade
GitHub Enterprise Server (Manage API)to a version that resolves this vulnerability.Fixed in 3.21.4 - Operational
If the token may have been intercepted and replayed, rotate any credentials/secrets used by privileged management agent endpoints after upgrading GitHub Enterprise Server to one of the fixed versions listed (3.17.19, 3.18.13, 3.19.10, 3.20.6, 3.21.4).
Event History
Frequently Asked Questions
Which deployments are exposed?
GitHub Enterprise Server deployments that are not configured for high availability are affected if they run a version prior to 3.22 and have not received the applicable fixed release. High-availability deployments are not affected because of a topology restriction.
What does an attacker need to exploit this issue?
An unauthenticated attacker can supply a crafted cluster configuration to trigger outbound Manage API requests to an attacker-controlled host. To obtain the replayable bearer token, the attacker must be positioned to intercept the outbound gateway-to-agent request.
Which releases contain the fix?
The issue is fixed in GitHub Enterprise Server versions 3.17.19, 3.18.13, 3.19.10, 3.20.6, and 3.21.4. It affects all versions prior to 3.22 that do not include the relevant fix.