🇰🇷 한글 설명
Pillow 10.3.0~12.1.1 버전에서 FITS 이미지 디코딩 시 GZIP 압축 데이터의 크기를 제한하지 않아 발생합니다. 악의적으로 제작된 FITS 파일이 무제한 메모리 소비를 유발하여 서비스 거부(OOM 크래시 또는 성능 저하)를 초래합니다.
💡 쉬운 설명
Pillow라는 사진 처리 프로그램이 특정 형식의 압축된 파일을 열 때 파일 크기를 확인하지 않고 무한정 읽으려고 합니다. 악의적인 파일이 컴퓨터의 모든 메모리를 가득 채워 시스템을 마비시킬 수 있습니다.
🇺🇸 원문 (English)
Pillow is a Python imaging library. Versions 10.3.0 through 12.1.1 did not limit the amount of GZIP-compressed data read when decoding a FITS image, making them vulnerable to decompression bomb attacks. A specially crafted FITS file could cause unbounded memory consumption, leading to denial of service (OOM crash or severe performance degradation). If users are unable to immediately upgrade, they should only open specific image formats, excluding FITS, as a workaround.
📍 영향받는 시스템
Pillow 10.3.0 ~ 12.1.1 (모든 FITS 이미지 처리 시스템)
⚔️ 공격 벡터
특별히 제작된 FITS 형식 이미지 파일 업로드 또는 전송을 통한 decompression bomb 공격
🛡️ 대응 방법
Pillow를 12.1.2 이상으로 즉시 업그레이드하거나, FITS 형식 이미지 처리 비활성화
🔧 검증 코드
표시된 버전이 12.1.1 이하면 취약 상태, 12.1.2 이상이면 패치됨
pip show Pillow | grep Version || python -c "import PIL; print(PIL.__version__)"