🇰🇷 한글 설명
GitHub Enterprise Server 관리 콘솔 로그인 페이지의 /setup/unlock 엔드포인트에서 redirect_to 파라미터가 HTML 속성으로 제대로 검증되지 않아 반사형 HTML 주입이 가능합니다. 공격자는 관리자를 특제 링크로 유인한 후 폼 요소를 주입하여 관리자 자격증명을 탈취할 수 있습니다.
💡 쉬운 설명
GitHub 관리 페이지의 로그인 화면에서 특정 링크를 통해 가짜 로그인 폼을 표시할 수 있는 취약점입니다. 관리자가 그 가짜 폼에 암호를 입력하면 공격자에게 탈취됩니다.
🇺🇸 원문 (English)
A reflected HTML injection vulnerability was identified in the GitHub Enterprise Server Management Console login page that could allow credential theft. The redirect_to query parameter on the /setup/unlock endpoint was reflected into an HTML attribute without proper sanitization, enabling an attacker to inject a form element that could capture administrator credentials. Exploitation required an administrator to click a crafted link and enter their credentials. This vulnerability affected GitHub Enterprise Server versions 3.19.1 through 3.19.5 and 3.20.0 through 3.20.1, and was fixed in versions 3.19.6 and 3.20.2. This vulnerability was reported via the GitHub Bug Bounty program.
📍 영향받는 시스템
GitHub Enterprise Server 3.19.1-3.19.5, 3.20.0-3.20.1
⚔️ 공격 벡터
관리자에게 특제 redirect_to 파라미터를 포함한 /setup/unlock URL을 이메일 등으로 전송하여 자격증명 탈취
🛡️ 대응 방법
GitHub Enterprise Server를 3.19.6 또는 3.20.2 이상으로 업그레이드
🔧 검증 코드
응답에서 X-GitHub-Request-ID 헤더가 표시되면 GitHub Enterprise Server가 실행 중임을 확인할 수 있습니다. 정확한 버전은 /api/v3/meta 엔드포인트에서 확인 가능합니다.
curl -s -I https://your-github-enterprise/setup/unlock 2>/dev/null | grep -i 'x-github-request-id'