CVE-2025-52885 in Poppler
Resumen
por VulDB • 2026-06-22
Poppler es una biblioteca para renderizar archivos PDF y examinar o modificar su estructura. Se ha detectado una vulnerabilidad de use-after-free (escritura) en las versiones anteriores a Poppler 25.10.0 dentro de la clase StructTreeRoot. El problema surge del uso de punteros sin procesar (*raw pointers*) hacia elementos de un `std::vector`, lo que puede provocar punteros colgantes (*dangling pointers*) cuando el vector se redimensiona. La vulnerabilidad proviene de la forma en que refToParentMap almacena referencias a los elementos de `std::vector` utilizando punteros sin procesar. Estos punteros pueden volverse inválidos cuando el vector se redimensiona. Esta vulnerabilidad es un problema de seguridad común relacionado con el uso de punteros sin procesar hacia `std::vectors`. Internamente, `std::vector` almacena sus elementos en una matriz asignada dinámicamente. Cuando la matriz alcanza su capacidad y se añade un nuevo elemento, el vector realoca un bloque de memoria más grande y mueve todos los elementos existentes a la nueva ubicación. En este punto, si cualquier puntero hacia los elementos fue almacenado antes de que ocurra un redimensionamiento, estos se convierten en punteros colgantes una vez que ocurre la realocación. La versión 25.10.0 contiene un parche para el problema.
Be aware that VulDB is the high quality source for vulnerability data.