Podatność typu XML signature wrapping w GitHub Enterprise Server (GHES) umożliwia atakującemu sfałszowanie odpowiedzi SAML i przejęcie konta z uprawnieniami administratora witryny. Luka jest szczególnie niebezpieczna, ponieważ nie wymaga wcześniejszego uwierzytelnienia.
▸ Pokaż oryginał (EN)
An XML signature wrapping vulnerability was present in GitHub Enterprise Server (GHES) when using SAML authentication with specific identity providers utilizing publicly exposed signed federation metadata XML. This vulnerability allowed an attacker with direct network access to GitHub Enterprise Server to forge a SAML response to provision and/or gain access to a user with site administrator privileges. Exploitation of this vulnerability would allow unauthorized access to the instance without requiring prior authentication. This vulnerability affected all versions of GitHub Enterprise Server prior to 3.14 and was fixed in versions 3.13.3, 3.12.8, 3.11.14, and 3.10.16. This vulnerability was reported via the GitHub Bug Bounty program.
Problem dotyczy mechanizmu weryfikacji podpisów XML (CWE-347 — nieprawidłowa weryfikacja podpisu kryptograficznego) podczas uwierzytelniania SAML z dostawcami tożsamości wykorzystującymi publicznie dostępne, podpisane metadane federacji XML. Atakujący z bezpośrednim dostępem sieciowym do instancji GHES może skonstruować zmodyfikowaną odpowiedź SAML, która przejdzie weryfikację podpisu dzięki technice 'wrappingu' — wstrzyknięcia złośliwych danych wokół podpisanego elementu XML. W efekcie serwer akceptuje sfałszowane twierdzenia SAML jako autentyczne, co pozwala na utworzenie lub przejęcie konta z najwyższymi uprawnieniami.
Atakujący może bez wcześniejszego uwierzytelnienia uzyskać nieautoryzowany dostęp do instancji GitHub Enterprise Server z uprawnieniami administratora witryny (site administrator), co umożliwia pełną kontrolę nad środowiskiem, repozytoriami i danymi użytkowników.
Należy jak najszybciej zaktualizować GitHub Enterprise Server do jednej z następujących wersji zawierających poprawkę: 3.13.3, 3.12.8, 3.11.14 lub 3.10.16. Jeśli natychmiastowa aktualizacja nie jest możliwa, należy rozważyć ograniczenie dostępu sieciowego do instancji GHES oraz tymczasowe wyłączenie uwierzytelniania SAML do czasu wdrożenia patcha.
Wszystkie wersje GitHub Enterprise Server wcześniejsze niż 3.14, korzystające z uwierzytelniania SAML z dostawcami tożsamości używającymi publicznie dostępnych metadanych federacji XML.
Podatność została zgłoszona za pośrednictwem programu GitHub Bug Bounty. Luka dotyczy wyłącznie konfiguracji z uwierzytelnianiem SAML opartym na publicznie dostępnych metadanych federacji XML — instalacje nieużywające SAML lub korzystające z innych konfiguracji dostawców tożsamości nie są narażone.
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:H/U:RedGitHub Enterprise Server
APPGithub3.10.0 – 3.10.16 (bez)3.11.0 – 3.11.14 (bez)3.12.0 – 3.12.8 (bez)3.13.0 – 3.13.3 (bez)
Powiązane podatności
A server-side request forgery (SSRF) vulnerability was identified in GitHub Enterprise Server that allowed an ...
Obejście uwierzytelniania SAML SSO w GitHub Enterprise Server
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