Description
A server-side request forgery (SSRF) vulnerability was identified in the notebook viewer of GitHub Enterprise Server. The notebook viewer validated the scheme and host of a user-supplied URL but did not validate the port, allowing requests to be directed to internal services listening on other ports of the same appliance. Response bodies were not returned to the requester, but response timing acted as an oracle that allowed instance secrets to be extracted character by character. An extracted secret could then be used in a separate interaction with an internal service to obtain remote code execution on the appliance. Exploitation required network access to the instance and was unauthenticated when private mode was disabled, or required any authenticated user when private mode was enabled. This vulnerability affected GitHub Enterprise Server versions 3.17 through 3.22 and was fixed in versions 3.22.1, 3.21.6, 3.20.8, 3.19.12, 3.18.15, and 3.17.21. This vulnerability was reported through the GitHub Bug Bounty program.
Published: 2026-09-22
Score: 9.3 Critical
EPSS: n/a
KEV: No
Impact: Remote Code Execution
Action: Immediate Patch
AI Analysis

Impact

The vulnerability is a server‑side request forgery in the notebook viewer of GitHub Enterprise Server. When a user supplies a URL, the viewer checks the scheme and host but ignores the port, allowing internal services on other ports of the same appliance to be accessed. The response body is not returned, but response timing can be used as an oracle to extract instance secrets one character at a time. Once a secret is recovered, it can be used in a separate interaction with an internal service to achieve remote code execution on the appliance.

Affected Systems

Affected products are GitHub Enterprise Server, specifically the notebook viewer component, for versions 3.17 through 3.22 inclusive. The issue was addressed in 3.22.1, 3.21.6, 3.20.8, 3.19.12, 3.18.15, and 3.17.21. Administrators should verify that their instance is running a patched version.

Risk and Exploitability

The risk is high, reflected in a CVSS score of 9.3. Exploitation requires network access to the instance; if private mode is disabled it is unauthenticated, otherwise any authenticated user can exploit it. Because the attacker can learn secrets via timing, they can then leverage those secrets to reach internal services and achieve remote code execution. The EPSS score is not available, and the vulnerability is not listed in KEV, but the high severity and potential for full system compromise warrant urgent attention.

Generated by OpenCVE AI on September 22, 2026 at 22:36 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade the GitHub Enterprise Server to a fixed version (3.22.1 or later, or 3.21.6, 3.20.8, 3.19.12, 3.18.15, or 3.17.21 depending on current release channel) as soon as possible.
  • If an immediate upgrade is not possible, disable the notebook viewer feature or restrict its access to trusted users only to prevent SSRF exploitation.
  • Ensure the instance is running with private mode enabled, if applicable, to constrain access requirements and reduce the user‑level attack surface.
  • Monitor network traffic for unusual outbound requests originating from the notebook viewer, and apply network controls such as firewall rules or service segmentation to block unexpected connections to internal ports.

Generated by OpenCVE AI on September 22, 2026 at 22:36 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 22 Sep 2026 23:00:00 +0000

Type Values Removed Values Added
First Time appeared Github
Github enterprise Server
Vendors & Products Github
Github enterprise Server

Tue, 22 Sep 2026 21:00:00 +0000

Type Values Removed Values Added
Description A server-side request forgery (SSRF) vulnerability was identified in the notebook viewer of GitHub Enterprise Server. The notebook viewer validated the scheme and host of a user-supplied URL but did not validate the port, allowing requests to be directed to internal services listening on other ports of the same appliance. Response bodies were not returned to the requester, but response timing acted as an oracle that allowed instance secrets to be extracted character by character. An extracted secret could then be used in a separate interaction with an internal service to obtain remote code execution on the appliance. Exploitation required network access to the instance and was unauthenticated when private mode was disabled, or required any authenticated user when private mode was enabled. This vulnerability affected GitHub Enterprise Server versions 3.17 through 3.22 and was fixed in versions 3.22.1, 3.21.6, 3.20.8, 3.19.12, 3.18.15, and 3.17.21. This vulnerability was reported through the GitHub Bug Bounty program.
Title GitHub Enterprise Server notebook viewer vulnerable to Server-side request forgery
Weaknesses CWE-208
CWE-918
References
Metrics cvssV4_0

{'score': 9.3, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N'}


Subscriptions

Github Enterprise Server
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_P

Published:

Updated: 2026-09-22T20:43:53.715Z

Reserved: 2026-08-21T18:51:48.052Z

Link: CVE-2026-77987

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-09-22T21:17:32.653

Modified: 2026-09-22T21:17:32.653

Link: CVE-2026-77987

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-22T22:45:17Z

Weaknesses
  • CWE-208

    Observable Timing Discrepancy

  • CWE-918

    Server-Side Request Forgery (SSRF)