🇰🇷 한글 설명
Python 2.7~3.5 및 simplejson 2.6.1 이전 버전의 _json 모듈에서 scanstring 함수의 배열 인덱스 오류가 존재합니다. 공격자가 음수 인덱스 값을 사용하여 raw_decode 함수에 접근하면 임의의 프로세스 메모리를 읽을 수 있습니다.
💡 쉬운 설명
Python의 JSON 처리 함수가 음수 숫자를 잘못 처리하여 컴퓨터의 민감한 메모리 정보가 노출될 수 있습니다. 이를 악용하면 프로그램이 보관 중인 비밀번호나 데이터를 훔칠 수 있습니다.
🇺🇸 원문 (English)
Array index error in the scanstring function in the _json module in Python 2.7 through 3.5 and simplejson before 2.6.1 allows context-dependent attackers to read arbitrary process memory via a negative index value in the idx argument to the raw_decode function.
📍 영향받는 시스템
Python 2.7.x, 3.0.x~3.5.x 및 simplejson < 2.6.1
⚔️ 공격 벡터
JSON 문자열에 음수 인덱스 값을 포함시켜 raw_decode 함수 호출 시 메모리 오버플로우 유발
🛡️ 대응 방법
Python을 3.5.1 이상 또는 3.4.4 이상으로 업그레이드, simplejson을 2.6.1 이상으로 업데이트
🔧 검증 코드
출력된 Python 버전이 2.7.18 이상(2.x), 또는 3.4.4 이상(3.4), 또는 3.5.1 이상(3.5)이면 패치됨
python -c "import sys; print(sys.version)" | grep -oE '[0-9]+\.[0-9]+\.[0-9]+'