🇰🇷 한글 설명
Gitea에서 저장소 가시성 판별 로직이 일관되지 않아 발생하는 취약점입니다. 일부 저장소 목록 조회 엔드포인트가 숨겨진 소유자의 저장소 정보를 노출하여, 직접 접근 시에는 404 오류가 발생하더라도 메타데이터가 유출될 수 있습니다.
💡 쉬운 설명
비공개 설정된 사용자의 저장소 목록이 특정 경로를 통해 몰래 노출될 수 있는 문제입니다. 공격자는 이를 통해 숨겨진 저장소의 존재 여부와 관련 정보를 알아낼 수 있습니다.
🇺🇸 원문 (English)
Gitea uses inconsistent repository visibility predicates, and the condition used by some repository-listing endpoints admits repositories whose owners are hidden from the viewer. Those listings disclose repository metadata even though direct routes correctly deny access with a 404 response. The issue exposes repository existence and listing information across the intended owner-visibility boundary.
📍 영향받는 시스템
Gitea (취약한 버전의 모든 저장소 목록 조회 엔드포인트 사용 버전)
⚔️ 공격 벡터
취약한 저장소 목록 조회 API 엔드포인트에 접근하여 비공개 소유자의 메타데이터 수집
🛡️ 대응 방법
Gitea를 최신 보안 패치가 적용된 버전으로 업데이트하고 저장소 가시성 로직을 수정해야 합니다.
🔧 검증 코드
직접 접근 시 404가 뜨더라도 목록 조회 API에서 데이터가 반환된다면 취약한 상태입니다.
curl -s -I 'https://<gitea-url>/<hidden-owner>/<repo-name>' | grep -E 'HTTP/1.1 404|HTTP/1.1 200'