CVE-2026-77987
📛 CVE Title
GitHub Enterprise Server notebook viewer vulnerable to Server-side request forgery
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.
Overview
- State
- PUBLISHED
- Assigner (CNA)
- GitHub_P
- CVSS severity
- CRITICAL
- CVSS score
- 9.3 / 10
- CVSS 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- Effective score
- 9.3 / 10 CRITICAL source: CNA overview
- CWE(s)
-
CWE-918,CWE-208 - Reserved
- 2026-08-21
- Published
- 2026-09-22 20:43 UTC
- Last updated
- 2026-09-22 20:43 UTC
- Source
- https://raw.githubusercontent.com/CVEProject/cvelistV5/main/cves/2026/77xxx/CVE-2026-77987.json
- Linked Threat
- CVE-2026-77987 — GitHub Enterprise Server notebook viewer vulnerable to Server-side request forgery
NVD triage scoring NVD CVE 2.0
Layer NVD adds on top of the CNA's CVE record — published / last-modified timestamps, exploitability / impact subscores, and the FIRST.org EPSS probability that this CVE will be exploited in the wild in the next 30 days.
- NVD published
- 2026-09-22 21:17:32 UTC
- NVD last modified
- 2026-09-22 21:17:32 UTC
NVD / KEV / EPSS data refreshed 2026-09-23 02:40 UTC. Re-run the 🛰 Backfill from NVD button above to refresh.
European Union Vulnerability Database ENISA EUVD
ENISA's official EU repository for curated vulnerability intelligence. Carries a separate identifier (EUVD-YYYY-NNNN) and frequently exposes an earlier-published description + CVSS than NVD does.
- EUVD ID
-
EUVD-2026-84872 - Assigner
- GitHub_P
- Published
- Sep 22, 2026, 8:43:53 PM
- Updated
- Sep 22, 2026, 8:43:53 PM
- EUVD base score (CVSS 4.0)
-
9.3 / 10
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 - EUVD-reported EPSS
- 0.0000
- Vendors
- GitHub
- Products
-
Enterprise Server (3.21.0 <3.21.*)Enterprise Server (3.17.0 <3.17.*)Enterprise Server (3.20.0 <3.20.*)Enterprise Server (3.18.0 <3.18.*)Enterprise Server (3.22.0 <3.22.*)Enterprise Server (3.19.0 <3.19.*)
- Aliases
-
GHSA-5p5v-w43x-q8v7
ENISA 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.
EUVD references (6)
- https://docs.github.com/en/enterprise-server@3.17/admin/release-notes#3.17.21
- https://docs.github.com/en/enterprise-server@3.18/admin/release-notes#3.18.15
- https://docs.github.com/en/enterprise-server@3.19/admin/release-notes#3.19.12
- https://docs.github.com/en/enterprise-server@3.20/admin/release-notes#3.20.8
- https://docs.github.com/en/enterprise-server@3.21/admin/release-notes#3.21.6
- https://docs.github.com/en/enterprise-server@3.22/admin/release-notes#3.22.1
Affected products (1)
| Vendor | Product | Versions | Platforms |
|---|---|---|---|
| GitHub | Enterprise Server |
3.17.0 (affected),
3.18.0 (affected),
3.19.0 (affected),
3.20.0 (affected),
3.21.0 (affected),
3.22.0 (affected)
|
— |
Vendor references (6)
References embedded in the original CVE record by the assigning CNA.
- https://docs.github.com/en/enterprise-server@3.17/admin/release-notes#3.17.21 release-notes
- https://docs.github.com/en/enterprise-server@3.18/admin/release-notes#3.18.15 release-notes
- https://docs.github.com/en/enterprise-server@3.19/admin/release-notes#3.19.12 release-notes
- https://docs.github.com/en/enterprise-server@3.20/admin/release-notes#3.20.8 release-notes
- https://docs.github.com/en/enterprise-server@3.21/admin/release-notes#3.21.6 release-notes
- https://docs.github.com/en/enterprise-server@3.22/admin/release-notes#3.22.1 release-notes
Web references (0)
DuckDuckGo results ranked by threat-intel / vendor advisory domains. Generated by the 🔎 Find references (web) button above — same flow as the Remediations search.
No web references attached yet.
NVD-tagged references (6)
Reference list NVD curates from the CNA record, vendor advisories, and third-party reports. The tag chips below are NVD's analyst-assigned categories.
- https://docs.github.com/en/enterprise-server@3.17/admin/release-notes#3.17.21 product-cna@github.com
- https://docs.github.com/en/enterprise-server@3.18/admin/release-notes#3.18.15 product-cna@github.com
- https://docs.github.com/en/enterprise-server@3.19/admin/release-notes#3.19.12 product-cna@github.com
- https://docs.github.com/en/enterprise-server@3.20/admin/release-notes#3.20.8 product-cna@github.com
- https://docs.github.com/en/enterprise-server@3.21/admin/release-notes#3.21.6 product-cna@github.com
- https://docs.github.com/en/enterprise-server@3.22/admin/release-notes#3.22.1 product-cna@github.com
Remediations (10)
Remediations are stored against the linked Threat row; the list below is deduplicated across both pages.
-
web:cvetodo.com
CVE-2026-77987 is a CVSS 9.3 Remote Code Execution vulnerability in GitHub Enterprise Server. See exploitation status, patch guidance, and technical details.
2026-09-23 15:15 UTC -
web:fixitphill.com
Patch Microsoft Exchange CVE - 2026 -42897 with June 2026 security updates, keep EEMS mitigations during rollout, and verify OWA and mail flow.
2026-09-23 15:15 UTC -
web:learn.microsoft.com
Learning path Learn how Microsoft supports secure software development as part of a cybersecurity solution - Training Secure software development means integrating security into each phase of your development lifecycle, from requirements analysis to maintenance. Microsoft provides many services that can help you develop more secure code and deploy a more secure application in the cloud. This ...
2026-09-23 15:15 UTC -
web:msrc.microsoft.com
The Microsoft Security Response Center (MSRC) investigates all reports of security vulnerabilities affecting Microsoft products and services, and provides the information here as part of the ongoing effort to help you manage security risks and help keep your systems protected.
2026-09-23 15:15 UTC -
web:msrc.microsoft.com
Security Update Guide - Microsoft Security Response Center
2026-09-23 15:15 UTC -
web:senserva.com
Every Microsoft security patch (KB) and the CVEs it fixes, with severity, CVSS, and CISA KEV status. Cross-linked to the CVE reference.
2026-09-23 15:15 UTC -
web:support.microsoft.com
Be aware that the update in the Microsoft Download Center applies to the Microsoft Installer (.msi)-based edition of Office 2016. It doesn't apply to the Office 2016 Click-to-Run editions, such as Microsoft Office 365 Home. (See What version of Office am I using?) How to get and install the update Method 1: Microsoft Update This update is available from Microsoft Update. When you turn on ...
2026-09-23 15:15 UTC -
web:support.sap.com
SAP security Patch Day Bulletin This post shares the information on security notes that remediate vulnerabilities discovered in SAP products. SAP strongly recommends that the customer visits the support portal and applies patches on priority to protect their SAP landscape. On 9th of June 2026 , SAP security patch day saw the release of 15 new security notes.
2026-09-23 15:15 UTC -
web:vulmon.com
GitHub Enterprise Server SSRF Leads to RCE via Port Validation Flaw. An SSRF vulnerability in GitHub Enterprise Server's notebook viewer enables attackers to…
2026-09-23 15:15 UTC -
web:windowsforum.com
Microsoft published CVE - 2026 -62878 on August 11 as a Windows DNS Server Remote Code Execution Vulnerability, putting systems that run the Windows DNS Server role into the immediate patch -and-verify queue.
2026-09-23 15:15 UTC
AI Forensic Analysis
Only Available for Registered Users. Sign in to view.
Raw JSON
The full cvelistV5 record. Download as CVE-2026-77987.json.
{
"containers": {
"cna": {
"affected": [
{
"defaultStatus": "unknown",
"product": "Enterprise Server",
"vendor": "GitHub",
"versions": [
{
"changes": [
{
"at": "3.17.21",
"status": "unaffected"
}
],
"lessThan": "3.17.*",
"status": "affected",
"version": "3.17.0",
"versionType": "semver"
},
{
"changes": [
{
"at": "3.18.15",
"status": "unaffected"
}
],
"lessThan": "3.18.*",
"status": "affected",
"version": "3.18.0",
"versionType": "semver"
},
{
"changes": [
{
"at": "3.19.12",
"status": "unaffected"
}
],
"lessThan": "3.19.*",
"status": "affected",
"version": "3.19.0",
"versionType": "semver"
},
{
"changes": [
{
"at": "3.20.8",
"status": "unaffected"
}
],
"lessThan": "3.20.*",
"status": "affected",
"version": "3.20.0",
"versionType": "semver"
},
{
"changes": [
{
"at": "3.21.6",
"status": "unaffected"
}
],
"lessThan": "3.21.*",
"status": "affected",
"version": "3.21.0",
"versionType": "semver"
},
{
"changes": [
{
"at": "3.22.1",
"status": "unaffected"
}
],
"lessThan": "3.22.*",
"status": "affected",
"version": "3.22.0",
"versionType": "semver"
}
]
}
],
"credits": [
{
"lang": "en",
"type": "finder",
"value": "Seokchan Yoon"
},
{
"lang": "en",
"type": "finder",
"value": "R31n"
}
],
"descriptions": [
{
"lang": "en",
"supportingMedia": [
{
"base64": false,
"type": "text/html",
"value": "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.<br><br>"
}
],
"value": "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."
}
],
"impacts": [
{
"capecId": "CAPEC-664",
"descriptions": [
{
"lang": "en",
"value": "CAPEC-664 Server Side Request Forgery"
}
]
},
{
"capecId": "CAPEC-462",
"descriptions": [
{
"lang": "en",
"value": "CAPEC-462 Cross-Domain Search Timing"
}
]
}
],
"metrics": [
{
"cvssV4_0": {
"Automatable": "NOT_DEFINED",
"Recovery": "NOT_DEFINED",
"Safety": "NOT_DEFINED",
"attackComplexity": "LOW",
"attackRequirements": "NONE",
"attackVector": "NETWORK",
"baseScore": 9.3,
"baseSeverity": "CRITICAL",
"exploitMaturity": "NOT_DEFINED",
"privilegesRequired": "NONE",
"providerUrgency": "NOT_DEFINED",
"subAvailabilityImpact": "NONE",
"subConfidentialityImpact": "NONE",
"subIntegrityImpact": "NONE",
"userInteraction": "NONE",
"valueDensity": "NOT_DEFINED",
"vectorString": "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",
"version": "4.0",
"vulnAvailabilityImpact": "HIGH",
"vulnConfidentialityImpact": "HIGH",
"vulnIntegrityImpact": "HIGH",
"vulnerabilityResponseEffort": "NOT_DEFINED"
},
"format": "CVSS",
"scenarios": [
{
"lang": "en",
"value": "GENERAL"
}
]
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-918",
"description": "CWE-918 Server-Side Request Forgery (SSRF)",
"lang": "en",
"type": "CWE"
},
{
"cweId": "CWE-208",
"description": "CWE-208 Observable Timing Discrepancy",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-09-22T20:43:53.715Z",
"orgId": "82327ea3-741d-41e4-88f8-2cf9e791e760",
"shortName": "GitHub_P"
},
"references": [
{
"tags": [
"release-notes"
],
"url": "https://docs.github.com/en/enterprise-server@3.17/admin/release-notes#3.17.21"
},
{
"tags": [
"release-notes"
],
"url": "https://docs.github.com/en/enterprise-server@3.18/admin/release-notes#3.18.15"
},
{
"tags": [
"release-notes"
],
"url": "https://docs.github.com/en/enterprise-server@3.19/admin/release-notes#3.19.12"
},
{
"tags": [
"release-notes"
],
"url": "https://docs.github.com/en/enterprise-server@3.20/admin/release-notes#3.20.8"
},
{
"tags": [
"release-notes"
],
"url": "https://docs.github.com/en/enterprise-server@3.21/admin/release-notes#3.21.6"
},
{
"tags": [
"release-notes"
],
"url": "https://docs.github.com/en/enterprise-server@3.22/admin/release-notes#3.22.1"
}
],
"source": {
"discovery": "EXTERNAL"
},
"title": "GitHub Enterprise Server notebook viewer vulnerable to Server-side request forgery",
"x_generator": {
"engine": "Vulnogram 0.2.0"
}
}
},
"cveMetadata": {
"assignerOrgId": "82327ea3-741d-41e4-88f8-2cf9e791e760",
"assignerShortName": "GitHub_P",
"cveId": "CVE-2026-77987",
"datePublished": "2026-09-22T20:43:53.715Z",
"dateReserved": "2026-08-21T18:51:48.052Z",
"dateUpdated": "2026-09-22T20:43:53.715Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}