🔍 CVE-2019-9636

9.8
CVSS Score
CRITICAL
2019-03-08
2026-10-14 07:16
✅ 완료

🇰🇷 한글 설명

Python 2.7.x 및 3.x 버전의 NFKC 정규화 과정에서 유니코드 인코딩을 부적절하게 처리하여 발생하는 취약점입니다. 특수하게 제작된 URL을 통해 인증 정보나 쿠키가 의도하지 않은 다른 호스트로 전송될 수 있는 정보 노출 위험이 있습니다.

💡 쉬운 설명

잘못된 주소 형식을 이용해 사용자의 비밀번호나 로그인 정보(쿠키)를 해커의 서버로 몰래 보내버릴 수 있는 보안 결함입니다. 주소를 해석하는 과정에서 오류가 발생하여 엉뚱한 곳으로 정보를 전달하게 됩니다.

🇺🇸 원문 (English)

Python 2.7.x through 2.7.16 and 3.x through 3.7.2 is affected by: Improper Handling of Unicode Encoding (with an incorrect netloc) during NFKC normalization. The impact is: Information disclosure (credentials, cookies, etc. that are cached against a given hostname). The components are: urllib.parse.urlsplit, urllib.parse.urlparse. The attack vector is: A specially crafted URL could be incorrectly parsed to locate cookies or authentication data and send that information to a different host than when parsed correctly. This is fixed in: v2.7.17, v2.7.17rc1, v2.7.18, v2.7.18rc1; v3.5.10, v3.5.10rc1, v3.5.7, v3.5.8, v3.5.8rc1, v3.5.8rc2, v3.5.9; v3.6.10, v3.6.10rc1, v3.6.11, v3.6.11rc1, v3.6.12, v3.6.9, v3.6.9rc1; v3.7.3, v3.7.3rc1, v3.7.4, v3.7.4rc1, v3.7.4rc2, v3.7.5, v3.7.5rc1, v3.7.6, v3.7.6rc1, v3.7.7, v3.7.7rc1, v3.7.8, v3.7.8rc1, v3.7.9.

📍 영향받는 시스템

Python 2.7.0 ~ 2.7.16, Python 3.0 ~ 3.7.2

⚔️ 공격 벡터

특수하게 조작된 유니코드 URL을 사용하여 인증 데이터 및 쿠키를 탈취

🛡️ 대응 방법

Python 버전을 v2.7.17 이상 또는 v3.5.10, v3.6.13, v3.7.10 이상의 최신 보안 패치 버전으로 업데이트

🔧 검증 코드

출력된 Python 버전을 확인하여 취약한 범위(2.7.16 이하 또는 3.7.2 이하)에 해당하는지 체크

Shell / Script
python --version 2>/dev/null || python3 --version 2>/dev/null

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Python