An improper verification of cryptographic signature vulnerability was identified in GitHub Enterprise Server that allowed SAML SSO authentication to be bypassed resulting in unauthorized provisioning of users and access to the instance. Exploitation required the encrypted assertions feature to be enabled, and the attacker would require direct network access as well as a signed SAML response or metadata document. This vulnerability affected all versions of GitHub Enterprise Server prior to 3.15 and was fixed in versions 3.11.16, 3.12.10, 3.13.5, and 3.14.2. This vulnerability was reported via the GitHub Bug Bounty program.
The vulnerability lies in improper verification of cryptographic signature (CWE-347) in the SAML SSO mechanism. To carry out the attack, additional conditions must be met: encrypted assertions feature must be enabled on the instance, the attacker must have direct network access to the server, and must possess a signed SAML response or metadata document. Meeting these requirements allows the attacker to forge the authentication process and bypass access controls.
An attacker can unauthorized create user accounts (provisioning) and gain unauthorized access to GitHub Enterprise Server instance, including potentially code repositories and sensitive data stored in the system.
GitHub Enterprise Server should be updated to version 3.11.16, 3.12.10, 3.13.5, or 3.14.2 (depending on the branch in use). As an interim workaround, disabling the SAML encrypted assertions feature can be considered until the patch is deployed.
All versions of GitHub Enterprise Server older than 3.15 with the SAML encrypted assertions feature enabled.
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:H/VA:L/SC:H/SI:H/SA:L/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:U/V:C/RE:M/U:RedGitHub Enterprise Server
APPGithub< 3.11.163.12.0 – 3.12.10 (excl.)3.13.0 – 3.13.5 (excl.)3.14.0 – 3.14.2 (excl.)
Related vulnerabilities
SSRF z path traversal w GitHub Enterprise Server — dostęp do wewnętrznych usług
XML Signature Wrapping w GitHub Enterprise Server — fałszowanie SAML
Authentication bypass w GitHub Enterprise Server via SAML SSO
Command injection w GitHub Enterprise Server — eskalacja do admina SSH
Command injection w GitHub Enterprise Server — przejęcie dostępu SSH admina