🔍 CVE-2025-52885

0.0
CVSS Score
UNKNOWN
2025-10-10
2026-10-19 16:10
✅ 완료

🇰🇷 한글 설명

Poppler 라이브러리의 StructTreeRoot 클래스에서 Use-After-Free(write) 취약점이 발견되었습니다. std::vector의 요소에 대한 원시 포인터를 사용할 때, 벡터의 크기가 재할당되면서 기존 포인터가 무효화되어 발생하는 문제입니다. 25.10.0 미만 버전의 Poppler가 이 취약점에 노출됩니다.

💡 쉬운 설명

PDF를 읽어들이는 프로그램 내부에서 데이터 저장 공간이 늘어날 때, 기존에 가리키던 주소를 잘못 참조하여 발생하는 오류입니다. 이로 인해 프로그램이 갑자기 종료되거나 해커가 악성 코드를 실행할 위험이 있습니다.

🇺🇸 원문 (English)

Poppler ia a library for rendering PDF files, and examining or modifying their structure. A use-after-free (write) vulnerability has been detected in versions Poppler prior to 25.10.0 within the StructTreeRoot class. The issue arises from the use of raw pointers to elements of a `std::vector`, which can lead to dangling pointers when the vector is resized. The vulnerability stems from the way that refToParentMap stores references to `std::vector` elements using raw pointers. These pointers may become invalid when the vector is resized. This vulnerability is a common security problem involving the use of raw pointers to `std::vectors`. Internally, `std::vector `stores its elements in a dynamically allocated array. When the array reaches its capacity and a new element is added, the vector reallocates a larger block of memory and moves all the existing elements to the new location. At this point if any pointers to elements are stored before a resize occurs, they become dangling pointers once the reallocation happens. Version 25.10.0 contains a patch for the issue.

📍 영향받는 시스템

Poppler versions prior to 25.10.0

⚔️ 공격 벡터

조작된 PDF 파일을 열어 StructTreeRoot 클래스의 메모리 재할당을 유도함으로써 발생

🛡️ 대응 방법

Poppler 라이브러리를 25.10.0 이상의 최신 버전으로 업데이트하십시오.

🔧 검증 코드

출력된 Poppler의 버전이 25.10.0 미만인지 확인하십시오.

Shell / Script
dpkg -l | grep poppler-utils 2>/dev/null || rpm -qa | grep poppler 2>/dev/null

💻 영향받는 소프트웨어

Spring AI Vector Store