🇰🇷 한글 설명
python-cjson 1.0.5는 cjson.encode 함수에 '[' 또는 ']' 문자 인자를 전달할 때 이를 적절히 처리하지 못한다. 이로 인해 Firefox 브라우저에서 SCRIPT 태그 닫기 문자를 포함한 XSS 공격이 가능해진다. JSON 인코딩 과정에서 특수 문자에 대한 이스케이핑이 불충분하여 공격자가 브라우저를 속여 악의적인 코드를 실행하게 할 수 있다.
💡 쉬운 설명
python-cjson 라이브러리가 특정 특수문자를 JSON으로 변환할 때 제대로 보호하지 못해서, 공격자가 웹사이트를 통해 악성 코드를 사용자 브라우저에서 실행시킬 수 있다. 업그레이드하거나 다른 JSON 라이브러리를 사용하면 해결된다.
🇺🇸 원문 (English)
Dan Pascu python-cjson 1.0.5 does not properly handle a ['/'] argument to cjson.encode, which makes it easier for remote attackers to conduct certain cross-site scripting (XSS) attacks involving Firefox and the end tag of a SCRIPT element.
📍 영향받는 시스템
python-cjson 1.0.5 및 이전 버전
⚔️ 공격 벡터
원격 공격자가 웹 애플리케이션에 특수 문자('[', ']')를 포함한 데이터를 전송하여 부적절하게 인코딩된 JSON이 브라우저에서 실행 코드로 해석되도록 유도
🛡️ 대응 방법
python-cjson을 1.0.5 이후 패치 버전으로 업그레이드하거나 json/ujson 등 안전한 대체 라이브러리 사용
🔧 검증 코드
Version이 1.0.5 이하면 취약함. 패치된 버전으로 업그레이드 필요. 미설치 상태면 영향 없음.
pip show python-cjson 2>/dev/null | grep Version || echo 'Not installed'