🇰🇷 한글 설명
Open WebUI 0.11.0 미만 버전에서 URL 검증 시 호스트명을 확인한 후 실제 연결 시점에 다시 확인하는 과정에서 발생하는 SSRF 취약점입니다. 공격자가 DNS를 조작하여 검증 단계에서는 공인 IP를, 연결 단계에서는 내부 IP를 응답하게 함으로써 내부 서비스나 클라우드 메타데이터에 접근할 수 있습니다.
💡 쉬운 설명
웹사이트가 주소를 확인할 때 한 번, 실제로 접속할 때 또 한 번 확인하는 허점을 이용한 공격입니다. 이를 통해 공격자는 원래 접근할 수 없는 회사의 내부 시스템이나 중요한 정보에 몰래 접근할 수 있습니다.
🇺🇸 원문 (English)
Open WebUI is an extensible, feature-rich, and user-friendly self-hosted AI platform. Prior to 0.11.0, Open WebUI resolved a hostname during URL validation and rejected private, loopback, and link-local addresses, but the HTTP clients resolved the hostname again at connection time. An authenticated attacker who controlled authoritative DNS for a submitted hostname could answer with a public address during validation and an internal one during connection, reaching cloud metadata, loopback admin APIs, or internal services through URL ingest, chat image_url fetches, image editing, or OAuth profile-picture fetches, with most paths returning the response to the attacker and the OAuth path forwarding the OAuth access token. This issue is fixed in 0.11.0.
📍 영향받는 시스템
Open WebUI versions prior to 0.11.0
⚔️ 공격 벡터
DNS Rebinding을 이용한 SSRF (Server-Side Request Forgery)
🛡️ 대응 방법
Open WebUI를 0.11.0 이상의 최신 버전으로 업데이트하십시오.
🔧 검증 코드
설치된 Open WebUI의 버전을 확인하여 0.11.0 미만인지 확인합니다.
python3 -c 'import requests; print("Check version via API or installed package")' 2>/dev/null