🔍 CVE-2018-20406

7.5
CVSS Score
HIGH
2018-12-23
2026-10-15 18:17
✅ 완료

🇰🇷 한글 설명

Python 3.7.1 미만 버전의 Modules/_pickle.c에서 큰 LONG_BINPUT 값으로 인한 정수 오버플로가 발생합니다. 이 문제는 데이터를 두 배로 확장하는 과정에서 잘못 처리되어 메모리 고갈을 유발할 수 있습니다.

💡 쉬운 설명

데이터를 저장하는 과정에서 숫자가 너무 커져 계산 오류가 발생하는 문제입니다. 이로 인해 컴퓨터의 메모리가 부족해져 시스템이 느려지거나 멈출 수 있습니다.

🇺🇸 원문 (English)

Modules/_pickle.c in Python before 3.7.1 has an integer overflow via a large LONG_BINPUT value that is mishandled during a "resize to twice the size" attempt. This issue might cause memory exhaustion, but is only relevant if the pickle format is used for serializing tens or hundreds of gigabytes of data. This issue is fixed in: v3.4.10, v3.4.10rc1; v3.5.10, v3.5.10rc1, v3.5.7, v3.5.7rc1, v3.5.8, v3.5.8rc1, v3.5.8rc2, v3.5.9; v3.6.10, v3.6.10rc1, v3.6.11, v3.6.11rc1, v3.6.12, v3.6.7, v3.6.7rc1, v3.6.7rc2, v3.6.8, v3.6.8rc1, v3.6.9, v3.6.9rc1; v3.7.1, v3.7.1rc1, v3.7.1rc2, v3.7.2, v3.7.2rc1, v3.7.3, v3.7.3rc1, v3.7.4, v3.7.4rc1, v3.7.4rc2, v3.7.5, v3.7.5rc1, v3.7.6, v3.7.6rc1, v3.7.7, v3.7.7rc1, v3.7.8, v3.7.8rc1, v3.7.9.

📍 영향받는 시스템

Python 3.7.1 미만 버전 (3.4, 3.5, 3.6 계열 포함)

⚔️ 공격 벡터

대용량의 특수하게 조작된 pickle 데이터를 처리하도록 유도하여 메모리 자원을 고갈시킴

🛡️ 대응 방법

Python을 v3.4.10, v3.5.10, v3.6.12, v3.7.1 또는 그 이상의 최신 보안 패치 버전으로 업데이트

🔧 검증 코드

출력된 Python 버전이 취약점이 해결된 버전(예: 3.7.1 이상)인지 확인

Shell / Script
python3 --version

📊 CVSS Vector String

CVSS Vector
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

💻 영향받는 소프트웨어

Python