🇰🇷 한글 설명
GitHub Enterprise Server의 API 엔드포인트가 깊게 중첩된 JSON 페이로드를 검증 없이 처리하여 인증 없이 서비스 거부 공격이 가능한 취약점입니다. 공격자가 리소스 제한이 없는 JSON을 전송하면 CPU와 메모리를 과도하게 소비하여 서비스 중단을 유발할 수 있습니다.
💡 쉬운 설명
깃허브 서버의 API가 복잡한 요청을 제대로 검사하지 않아, 누구나 특별한 권한 없이 문제 있는 요청을 보내 서버를 마비시킬 수 있습니다. 이는 서버의 자원을 과도하게 소비하게 합니다.
🇺🇸 원문 (English)
A denial of service vulnerability was identified in GitHub Enterprise Server that allowed an unauthenticated attacker to cause service disruption by sending crafted requests with deeply nested JSON payloads to an unauthenticated API endpoint. The endpoint parsed user-controlled JSON request bodies without size or depth limits, causing excessive CPU and memory consumption. This vulnerability affected all versions of GitHub Enterprise Server prior to 3.21 and was fixed in versions 3.20.2, 3.19.6, 3.18.9, 3.17.15, and 3.16.18. This vulnerability was reported via the GitHub Bug Bounty program.
📍 영향받는 시스템
GitHub Enterprise Server 3.21 이전 (수정: 3.16.18, 3.17.15, 3.18.9, 3.19.6, 3.20.2 이상)
⚔️ 공격 벡터
인증 없이 API 엔드포인트에 깊게 중첩된 JSON 페이로드를 포함한 요청 전송
🛡️ 대응 방법
GitHub Enterprise Server를 최소 3.16.18, 3.17.15, 3.18.9, 3.19.6, 또는 3.20.2 이상의 패치된 버전으로 업데이트
🔧 검증 코드
명령 결과의 버전이 3.16.18, 3.17.15, 3.18.9, 3.19.6, 3.20.2 이상이면 안전하며, 그 이하면 즉시 업데이트 필요
ghe-version 2>/dev/null | grep -oE '[0-9]+\.[0-9]+\.[0-9]+'