🇰🇷 한글 설명
CPython의 ssl.match_hostname 함수가 SSL 인증서의 와일드카드를 부정확하게 처리하여 공격자가 위조된 인증서로 서버를 가장할 수 있는 취약점입니다. 호스트명 검증 로직의 결함으로 중간자 공격이 가능해집니다.
💡 쉬운 설명
Python이 인증서의 도메인 이름을 확인할 때 규칙을 제대로 적용하지 못해, 가짜 인증서로도 진짜인 척할 수 있게 되는 문제입니다. 인터넷 통신 중 누군가 당신의 데이터를 도청하거나 변조할 위험이 있습니다.
🇺🇸 원문 (English)
The ssl.match_hostname function in CPython (aka Python) before 2.7.9 and 3.x before 3.3.3 does not properly handle wildcards in hostnames, which might allow man-in-the-middle attackers to spoof servers via a crafted certificate.
📍 영향받는 시스템
Python 2.7.9 이전, Python 3.x 3.3.3 이전 버전 사용 시스템
⚔️ 공격 벡터
중간자(MITM) 공격으로 위조된 SSL 인증서 제시 시 부정확한 와일드카드 검증 우회
🛡️ 대응 방법
Python을 2.7.9 이상 또는 3.3.3 이상으로 업그레이드
🔧 검증 코드
명령어가 Python 버전을 출력하면 취약한 버전이고, 출력이 없으면 패치된 버전입니다.
python --version 2>&1 | grep -E 'Python (2\.(7\.[0-8]|[0-6]\.[0-9])|3\.[0-2]\.[0-9]|3\.3\.[0-2])'