🇰🇷 한글 설명
Dozzle 10.5.2 이전 버전의 기본 배포에서 /api/notifications/test-webhook 엔드포인트가 인증 없이 접근 가능하며, 공격자가 임의의 URL로 HTTP POST 요청을 발송할 수 있습니다. 공격자는 제어 가능한 헤더와 URL을 통해 내부 서버로 요청을 보내고, 대상 서버의 응답(최대 1MB)을 획득하여 정보를 유출할 수 있습니다.
💡 쉬운 설명
Dozzle의 특정 기능이 누구나 사용 가능해서 공격자가 다른 서버로 원하는 요청을 보낼 수 있습니다. 그 서버의 응답을 공격자가 받아볼 수 있어서 민감한 정보를 탈취할 수 있습니다.
🇺🇸 원문 (English)
Dozzle is a realtime log viewer for docker containers. Prior to 10.5.2, in a default dozzle deploy (the documented quickstart, no DOZZLE_AUTH_PROVIDER set), POST /api/notifications/test-webhook is reachable without authentication and forwards an attacker-controlled URL into a WebhookDispatcher that sends an HTTP POST to the supplied URL with attacker-controlled request headers, and returns the response status code AND up to 1MB of the response body to the caller, when the target replies non-2xx. This vulnerability is fixed in 10.5.2.
📍 영향받는 시스템
Dozzle < 10.5.2 (기본 배포, DOZZLE_AUTH_PROVIDER 미설정)
⚔️ 공격 벡터
POST /api/notifications/test-webhook에 인증 없이 임의의 URL과 헤더를 포함한 요청 전송
🛡️ 대응 방법
Dozzle을 10.5.2 이상으로 업그레이드하거나 DOZZLE_AUTH_PROVIDER를 설정하여 인증 활성화
🔧 검증 코드
반환된 버전이 10.5.2 이상이면 안전하고, 10.5.2 미만이면 취약합니다.
curl -s http://localhost:8080/api/health 2>/dev/null | jq '.version' || echo 'Not accessible'