🇰🇷 한글 설명
Grav 2.1.7 미만 버전에서 정보 노출 취약점이 발견되었습니다. 기본 웹 서버 설정이 문서 루트에서만 .git 디렉토리를 차단하기 때문에, 공격자가 하위 디렉토리에 위치한 .git 저장소에 접근하여 Git 설정, 참조 및 객체를 탈취할 수 있습니다. 이를 통해 공개되지 않은 히스토리나 커밋된 비밀 정보를 복구할 수 있습니다.
💡 쉬운 설명
웹사이트의 설정 오류로 인해 숨겨져 있어야 할 소스코드 관리 기록(.git)이 외부로 노출될 수 있는 문제입니다. 공격자는 이 기록을 통해 개발자가 실수로 남긴 비밀번호나 중요한 내부 정보를 찾아낼 수 있습니다.
🇺🇸 원문 (English)
Grav before 2.1.7 contains an information disclosure vulnerability because bundled nginx, lighttpd, IIS, and Caddy 2 configurations block .git only at document root. Unauthenticated attackers can request nested repositories such as user/.git to retrieve Git config, refs, and objects, reconstructing unpublished history or committed secrets.
📍 영향받는 시스템
Grav version < 2.1.7
⚔️ 공격 벡터
인증되지 않은 공격자가 특정 경로(예: user/.git)로 직접 HTTP 요청을 보내 데이터를 탈취
🛡️ 대응 방법
Grav를 2.1.7 이상 버전으로 업데이트하거나, 웹 서버 설정에서 모든 하위 디렉토리의 .git 접근을 차단하도록 수정
🔧 검증 코드
명령어 실행 결과 'VULNERABLE'이 출력되면 .git 설정 파일에 접근 가능한 취약한 상태이며, 'SAFE'가 출력되면 안전한 상태입니다.
curl -I -s https://<target-url>/user/.git/config | grep -q '200 OK' && echo 'VULNERABLE' || echo 'SAFE'