CVE-2025-64503

cups-filters contains backends, filters, and other software required to get the cups printing service working on operating systems other than macos. In cups-filters prior to 1.28.18, by crafting a PDF file with a large `MediaBox` value, an attacker can cause CUPS-Filter 1.x’s `pdftoraster` tool to write beyond the bounds of an array. First, a PDF with a large `MediaBox` width value causes `header.cupsWidth` to become large. Next, the calculation of `bytesPerLine = (header.cupsBitsPerPixel * header.cupsWidth + 7) / 8` overflows, resulting in a small value. Then, `lineBuf` is allocated with the small `bytesPerLine` size. Finally, `convertLineChunked` calls `writePixel8`, which attempts to write to `lineBuf` outside of its buffer size (out of bounds write). In libcupsfilters, the maintainers found the same `bytesPerLine` multiplication without overflow check, but the provided test case does not cause an overflow there, because the values are different. Commit 50d94ca0f2fa6177613c97c59791bde568631865 contains a patch, which is incorporated into cups-filters version 1.28.18.
Configurations

Configuration 1 (hide)

OR cpe:2.3:a:openprinting:cups-filters:*:*:*:*:*:*:*:*
cpe:2.3:a:openprinting:libcupsfilters:*:*:*:*:*:*:*:*

History

18 Oct 2026, 20:10

Type Values Removed Values Added
Summary
  • (es) cups-filters contiene backends, filtros y otro software necesario para que el servicio de impresión CUPS funcione en sistemas operativos distintos de macOS. En cups-filters versiones anteriores a 1.28.18, al manipular un archivo PDF con un valor 'MediaBox' grande, un atacante puede hacer que la herramienta 'pdftoraster' de CUPS-Filter 1.x escriba más allá de los límites de un array. Primero, un PDF con un valor de ancho 'MediaBox' grande hace que 'header.cupsWidth' se vuelva grande. A continuación, el cálculo de 'bytesPerLine = (header.cupsBitsPerPixel * header.cupsWidth + 7) / 8' desborda, lo que resulta en un valor pequeño. Luego, 'lineBuf' se asigna con el tamaño pequeño de 'bytesPerLine'. Finalmente, 'convertLineChunked' llama a 'writePixel8', que intenta escribir en 'lineBuf' fuera del tamaño de su búfer (escritura fuera de límites). En libcupsfilters, los mantenedores encontraron la misma multiplicación de 'bytesPerLine' sin verificación de desbordamiento, pero el caso de prueba proporcionado no causa un desbordamiento allí, porque los valores son diferentes. El commit 50d94ca0f2fa6177613c97c59791bde568631865 contiene un parche, que se incorpora en la versión 1.28.18 de cups-filters.

Information

Published : 2025-11-12 22:15

Updated : 2026-10-18 20:10


NVD link : CVE-2025-64503

Mitre link : CVE-2025-64503

CVE.ORG link : CVE-2025-64503


JSON object : View

Products Affected

openprinting

  • cups-filters
  • libcupsfilters
CWE
CWE-787

Out-of-bounds Write