🔍 CVE-2026-6019

6.1
CVSS Score
MEDIUM
2026-04-22
2026-10-26 21:10
✅ 완료

🇰🇷 한글 설명

http.cookies.Morsel.js_output() 함수는 인라인 <script> 스니펫을 생성하며, JavaScript 문자열 컨텍스트를 위해 큰따옴표(")만 이스케이프합니다. 그러나 생성된 script 요소 내부의 HTML 파서에 민감한 시퀀스 </script>는 무력화하지 않습니다. 완화책으로는 쿠키 값을 base64로 인코딩하여 쿠키 값을 이용한 이스케이프를 방지합니다.

💡 쉬운 설명

웹 서버가 쿠키 값을 웹페이지 스크립트에 넣을 때 특정 문자열을 제대로 막지 못합니다. 이를 이용하면 공격자가 악성 스크립트를 페이지에 몰래 삽입할 수 있습니다.

🇺🇸 원문 (English)

http.cookies.Morsel.js_output() returns an inline <script> snippet and only escapes " for JavaScript string context. It does not neutralize the HTML parser-sensitive sequence </script> inside the generated script element. Mitigation base64-encodes the cookie value to disallow escaping using cookie value.

📍 영향받는 시스템

Python http.cookies 모듈의 Morsel.js_output()을 사용하는 Python 애플리케이션 (영향 버전은 CVE 공지 및 Python 보안 권고 확인 필요)

⚔️ 공격 벡터

공격자가 조작된 쿠키 값에 </script> 시퀀스를 포함시켜 js_output() 결과의 스크립트 블록을 조기 종료하고 추가 스크립트를 실행시키는 크로스사이트 스크립팅(XSS) 공격

🛡️ 대응 방법

Python을 보안 패치 버전으로 업데이트하고, 쿠키 값을 base64 등으로 인코딩하거나 js_output() 출력을 신뢰할 수 없는 값과 함께 직접 사용하지 않도록 수정

🔧 검증 코드

출력된 Python 버전을 CVE 공지의 영향 버전 및 패치 버전과 비교하여 취약 여부를 판단하며, 패치 버전 이상이면 해당 취약점이 수정된 것입니다.

Shell / Script
python3 -c "import sys; print(sys.version)"

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Oracle Java SE