🔍 CVE-2026-96640

0.0
CVSS Score
UNKNOWN
2026-10-21
2026-10-22 16:46
✅ 완료

🇰🇷 한글 설명

Pillow 라이브러리의 PdfParser.linearize_page_tree() 함수가 PDF의 /Pages 그래프를 처리할 때 중복된 간접 참조를 추적하지 않는 취약점입니다. 공격자가 조작한 PDF를 사용하여 Image.save()로 페이지를 추가할 경우, 공유된 서브트리가 중복 확장되어 CPU 자원을 과도하게 소모하는 서비스 거부(DoS) 상태를 유발할 수 있습니다.

💡 쉬운 설명

이미지 처리 프로그램인 Pillow가 특수하게 만들어진 PDF 파일을 읽을 때, 똑같은 페이지를 무한히 복제하려는 시도를 막지 못합니다. 이로 인해 컴퓨터의 계산 능력을 순식간에 다 써버려 시스템이 멈출 수 있습니다.

🇺🇸 원문 (English)

Pillow is a Python imaging library. From 5.1.0 until 13.0.0, PdfParser.linearize_page_tree() in src/PIL/PdfParser.py treats a PDF /Pages graph as a tree without tracking duplicate indirect references. When Image.save(..., format="PDF", append=True) processes an attacker-controlled existing PDF whose /Kids arrays repeatedly reference the same child /Pages node, Pillow expands the shared subtree as distinct pages. A compact malformed PDF can therefore create exponentially many page references and consume disproportionate CPU before the append completes. This issue is fixed in version 13.0.0.

📍 영향받는 시스템

Pillow 5.1.0 버전부터 13.0.0 미만 버전

⚔️ 공격 벡터

공격자가 조작한 PDF 파일을 Pillow의 Image.save(..., append=True) 기능을 통해 처리하도록 유도

🛡️ 대응 방법

Pillow 라이브러리를 13.0.0 이상의 최신 버전으로 업데이트

🔧 검증 코드

출력된 버전 번호가 13.0.0보다 낮으면 취약한 상태이며, 13.0.0 이상이면 안전합니다.

Shell / Script
pip show Pillow | grep Version

💻 영향받는 소프트웨어

Python