Podatność w GitHub Enterprise Server umożliwia obejście uwierzytelniania SAML SSO poprzez nieprawidłową weryfikację podpisu kryptograficznego. W efekcie atakujący może nieautoryzowanie tworzyć konta użytkowników i uzyskać dostęp do instancji serwera.
▸ Pokaż oryginał (EN)
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.
Luka polega na niepoprawnej weryfikacji podpisu kryptograficznego (CWE-347) w mechanizmie SAML SSO. Aby przeprowadzić atak, muszą być spełnione dodatkowe warunki: na instancji musi być włączona funkcja szyfrowanych asercji (encrypted assertions), a atakujący musi posiadać bezpośredni dostęp sieciowy do serwera oraz dysponować podpisaną odpowiedzią SAML lub dokumentem metadanych. Spełnienie tych wymagań pozwala atakującemu na sfałszowanie procesu uwierzytelniania i pominięcie kontroli dostępu.
Atakujący może nieautoryzowanie tworzyć konta użytkowników (provisioning) oraz uzyskać nieuprawniony dostęp do instancji GitHub Enterprise Server, w tym potencjalnie do repozytoriów kodu i wrażliwych danych przechowywanych w systemie.
Należy zaktualizować GitHub Enterprise Server do wersji 3.11.16, 3.12.10, 3.13.5 lub 3.14.2 (w zależności od używanej gałęzi). Jako doraźne obejście można rozważyć wyłączenie funkcji szyfrowanych asercji SAML do czasu wdrożenia patcha.
Wszystkie wersje GitHub Enterprise Server starsze niż 3.15 z włączoną funkcją szyfrowanych asercji SAML (encrypted assertions).
Podatność została zgłoszona za pośrednictwem programu GitHub Bug Bounty. Exploitation wymaga spełnienia kilku warunków jednocześnie: włączonej funkcji encrypted assertions, bezpośredniego dostępu sieciowego do instancji oraz posiadania podpisanej odpowiedzi SAML lub dokumentu metadanych — co obniża praktyczne ryzyko masowej eksploitacji.
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 (bez)3.13.0 – 3.13.5 (bez)3.14.0 – 3.14.2 (bez)
Powiązane podatności
A server-side request forgery (SSRF) vulnerability was identified in GitHub Enterprise Server that allowed an ...
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