🇰🇷 한글 설명
Python 3.x부터 3.10 버전의 lib/http/server.py에서 URI 경로 시작 부분의 중복 슬래시(/)를 적절히 처리하지 못해 발생하는 오픈 리다이렉션 취약점입니다. 이로 인해 공격자가 사용자를 악성 사이트로 유도하거나 정보 유출을 시도할 수 있습니다. 다만, 해당 모듈이 프로덕션 환경용이 아니라는 점 때문에 논란이 있습니다.
💡 쉬운 설명
웹 서버 주소 앞에 슬래시(/)를 여러 개 넣으면 서버가 주소를 잘못 해석하여 엉뚱한 곳으로 연결될 수 있는 문제입니다. 이를 통해 사용자를 가짜 사이트로 유인하여 정보를 빼낼 위험이 있습니다.
🇺🇸 원문 (English)
Python 3.x through 3.10 has an open redirection vulnerability in lib/http/server.py due to no protection against multiple (/) at the beginning of URI path which may leads to information disclosure. NOTE: this is disputed by a third party because the http.server.html documentation page states "Warning: http.server is not recommended for production. It only implements basic security checks."
📍 영향받는 시스템
Python 3.x ~ 3.10 버전의 http.server 모듈
⚔️ 공격 벡터
URI 경로 시작 부분에 여러 개의 슬래시(/)를 삽입하여 리다이렉션 유도
🛡️ 대응 방법
Python 버전을 최신 보안 패치가 적용된 버전으로 업데이트하거나, 해당 모듈을 프로덕션 환경에서 사용하지 않음
🔧 검증 코드
출력된 버전이 3.10 이하인지 확인하여 취약 가능성을 판단합니다.