🔍 CVE-2026-34206

6.1
CVSS Score
MEDIUM
2026-03-31
2026-07-24 20:10
✅ 완료

🇰🇷 한글 설명

Captcha Protect는 Traefik 미들웨어로, 서브넷에서 트래픽 급증 시 개별 IP에 봇 방지 챌린지를 추가합니다. 버전 1.12.2 이전에서 클라이언트가 제공한 destination 값이 Go의 text/template을 통해 HTML에 삽입될 때 컨텍스트 이스케이핑이 수행되지 않아 반사형 XSS 취약점이 존재합니다. 공격자는 조작된 destination 값으로 숨겨진 input 속성을 벗어나 챌린지 페이지에 임의 스크립트를 주입할 수 있습니다.

💡 쉬운 설명

웹사이트 봇 차단 페이지에서 URL 파라미터를 통해 악성 스크립트를 삽입할 수 있는 취약점입니다. 공격자가 조작된 링크를 피해자에게 전송하면, 피해자가 링크 클릭 시 해당 스크립트가 피해자의 브라우저에서 실행됩니다.

🇺🇸 원문 (English)

Captcha Protect is a Traefik middleware to add an anti-bot challenge to individual IPs in a subnet when traffic spikes are detected from that subnet. Prior to version 1.12.2, a reflected cross-site scripting (XSS) vulnerability exists in github.com/libops/captcha-protect. The challenge page accepted a client-supplied destination value and rendered it into HTML using Go's text/template. Because text/template does not perform contextual HTML escaping, an attacker could supply a crafted destination value that breaks out of the hidden input attribute and injects arbitrary script into the challenge page. This issue has been patched in version 1.12.2.

📍 영향받는 시스템

libops/captcha-protect (Traefik 미들웨어) 버전 1.12.2 미만

⚔️ 공격 벡터

공격자가 조작된 destination 파라미터가 포함된 URL을 피해자에게 전달하여 챌린지 페이지 렌더링 시 XSS 스크립트 실행 유도

🛡️ 대응 방법

captcha-protect를 버전 1.12.2 이상으로 업그레이드하여 text/template 대신 html/template을 사용하도록 패치 적용

🔧 검증 코드

출력된 버전이 v1.12.2 미만이면 취약, v1.12.2 이상이거나 출력이 없으면 해당 컨테이너에서 미사용 또는 패치 완료

Shell / Script
docker inspect $(docker ps -q) 2>/dev/null | grep -i 'captcha-protect' | grep -oP 'v[0-9]+\.[0-9]+\.[0-9]+'

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N

💻 영향받는 소프트웨어

Git