OESA-2025-2719 (CVE-2025-57812)
Vulnerability from osv_openeuler – Published: 2025-11-22 11:09 – Updated: 2026-08-06 11:09 – Source websiteThis project provides backends, filters, and other software that was once part of the core CUPS distribution but is no longer maintained by Apple Inc. In addition it contains additional filters and software developed independently of Apple, especially filters for the PDF-centric printing workflow introduced by OpenPrinting and a daemon to browse Bonjour broadcasts of remote CUPS printers to make these printers available locally and to provide backward compatibility to the old CUPS broadcasting and browsing of CUPS 1.5.x and older.
Security Fix(es):
CUPS is a standards-based, open-source printing system, and libcupsfilters contains the code of the filters of the former cups-filters package. In CUPS-Filters versions up to and including 1.28.17 and libcupsfilters versions 2.0.0 through 2.1.1, the imagetoraster filter has an out of bounds read/write vulnerability in the processing of TIFF image files. While the pixel buffer is allocated with the number of pixels times a pre-calculated bytes-per-pixel value, the function which processes these pixels is called with a size of the number of pixels times 3. When suitable inputs are passed, the bytes-per-pixel value can be set to 1 and bytes outside of the buffer bounds get processed. An attacker must issue a print job with a crafted TIFF file and control the bytes-per-pixel value of the output format. The vulnerability exists in both CUPS-Filters 1.x and libcupsfilters 2.x. A patch is available in commit b69dfacec7f176281782e2f7ac44f04bf9633cfa.(CVE-2025-57812)
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.(CVE-2025-64503)
| URL | Type | |
|---|---|---|
{
"affected": [
{
"ecosystem_specific": {
"aarch64": [
"cups-filters-1.28.9-6.oe2203sp4.aarch64.rpm",
"cups-filters-debuginfo-1.28.9-6.oe2203sp4.aarch64.rpm",
"cups-filters-debugsource-1.28.9-6.oe2203sp4.aarch64.rpm",
"cups-filters-devel-1.28.9-6.oe2203sp4.aarch64.rpm"
],
"noarch": [
"cups-filters-help-1.28.9-6.oe2203sp4.noarch.rpm"
],
"src": [
"cups-filters-1.28.9-6.oe2203sp4.src.rpm"
],
"x86_64": [
"cups-filters-1.28.9-6.oe2203sp4.x86_64.rpm",
"cups-filters-debuginfo-1.28.9-6.oe2203sp4.x86_64.rpm",
"cups-filters-debugsource-1.28.9-6.oe2203sp4.x86_64.rpm",
"cups-filters-devel-1.28.9-6.oe2203sp4.x86_64.rpm"
]
},
"package": {
"ecosystem": "openEuler:22.03-LTS-SP4",
"name": "cups-filters",
"purl": "pkg:rpm/openEuler/cups-filters\u0026distro=openEuler-22.03-LTS-SP4"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "1.28.9-6.oe2203sp4"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"ecosystem_specific": {
"aarch64": [
"cups-filters-1.28.15-5.oe2403.aarch64.rpm",
"cups-filters-debuginfo-1.28.15-5.oe2403.aarch64.rpm",
"cups-filters-debugsource-1.28.15-5.oe2403.aarch64.rpm",
"cups-filters-devel-1.28.15-5.oe2403.aarch64.rpm",
"cups-filters-1.28.15-5.oe2403sp1.aarch64.rpm",
"cups-filters-debuginfo-1.28.15-5.oe2403sp1.aarch64.rpm",
"cups-filters-debugsource-1.28.15-5.oe2403sp1.aarch64.rpm",
"cups-filters-devel-1.28.15-5.oe2403sp1.aarch64.rpm",
"cups-filters-1.28.15-5.oe2403sp2.aarch64.rpm",
"cups-filters-debuginfo-1.28.15-5.oe2403sp2.aarch64.rpm",
"cups-filters-debugsource-1.28.15-5.oe2403sp2.aarch64.rpm",
"cups-filters-devel-1.28.15-5.oe2403sp2.aarch64.rpm"
],
"noarch": [
"cups-filters-help-1.28.15-5.oe2403.noarch.rpm",
"cups-filters-help-1.28.15-5.oe2403sp1.noarch.rpm",
"cups-filters-help-1.28.15-5.oe2403sp2.noarch.rpm"
],
"src": [
"cups-filters-1.28.15-5.oe2403.src.rpm",
"cups-filters-1.28.15-5.oe2403sp1.src.rpm",
"cups-filters-1.28.15-5.oe2403sp2.src.rpm"
],
"x86_64": [
"cups-filters-1.28.15-5.oe2403.x86_64.rpm",
"cups-filters-debuginfo-1.28.15-5.oe2403.x86_64.rpm",
"cups-filters-debugsource-1.28.15-5.oe2403.x86_64.rpm",
"cups-filters-devel-1.28.15-5.oe2403.x86_64.rpm",
"cups-filters-1.28.15-5.oe2403sp1.x86_64.rpm",
"cups-filters-debuginfo-1.28.15-5.oe2403sp1.x86_64.rpm",
"cups-filters-debugsource-1.28.15-5.oe2403sp1.x86_64.rpm",
"cups-filters-devel-1.28.15-5.oe2403sp1.x86_64.rpm",
"cups-filters-1.28.15-5.oe2403sp2.x86_64.rpm",
"cups-filters-debuginfo-1.28.15-5.oe2403sp2.x86_64.rpm",
"cups-filters-debugsource-1.28.15-5.oe2403sp2.x86_64.rpm",
"cups-filters-devel-1.28.15-5.oe2403sp2.x86_64.rpm"
]
},
"package": {
"ecosystem": "openEuler:24.03-LTS",
"name": "cups-filters",
"purl": "pkg:rpm/openEuler/cups-filters\u0026distro=openEuler-24.03-LTS"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "1.28.15-5.oe2403sp2"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"ecosystem_specific": {
"aarch64": [
"cups-filters-1.28.15-5.oe2403sp1.aarch64.rpm",
"cups-filters-debuginfo-1.28.15-5.oe2403sp1.aarch64.rpm",
"cups-filters-debugsource-1.28.15-5.oe2403sp1.aarch64.rpm",
"cups-filters-devel-1.28.15-5.oe2403sp1.aarch64.rpm"
],
"noarch": [
"cups-filters-help-1.28.15-5.oe2403sp1.noarch.rpm"
],
"src": [
"cups-filters-1.28.15-5.oe2403sp1.src.rpm"
],
"x86_64": [
"cups-filters-1.28.15-5.oe2403sp1.x86_64.rpm",
"cups-filters-debuginfo-1.28.15-5.oe2403sp1.x86_64.rpm",
"cups-filters-debugsource-1.28.15-5.oe2403sp1.x86_64.rpm",
"cups-filters-devel-1.28.15-5.oe2403sp1.x86_64.rpm"
]
},
"package": {
"ecosystem": "openEuler:24.03-LTS-SP1",
"name": "cups-filters",
"purl": "pkg:rpm/openEuler/cups-filters\u0026distro=openEuler-24.03-LTS-SP1"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "1.28.15-5.oe2403sp1"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"ecosystem_specific": {
"aarch64": [
"cups-filters-1.28.15-5.oe2403sp2.aarch64.rpm",
"cups-filters-debuginfo-1.28.15-5.oe2403sp2.aarch64.rpm",
"cups-filters-debugsource-1.28.15-5.oe2403sp2.aarch64.rpm",
"cups-filters-devel-1.28.15-5.oe2403sp2.aarch64.rpm"
],
"noarch": [
"cups-filters-help-1.28.15-5.oe2403sp2.noarch.rpm"
],
"src": [
"cups-filters-1.28.15-5.oe2403sp2.src.rpm"
],
"x86_64": [
"cups-filters-1.28.15-5.oe2403sp2.x86_64.rpm",
"cups-filters-debuginfo-1.28.15-5.oe2403sp2.x86_64.rpm",
"cups-filters-debugsource-1.28.15-5.oe2403sp2.x86_64.rpm",
"cups-filters-devel-1.28.15-5.oe2403sp2.x86_64.rpm"
]
},
"package": {
"ecosystem": "openEuler:24.03-LTS-SP2",
"name": "cups-filters",
"purl": "pkg:rpm/openEuler/cups-filters\u0026distro=openEuler-24.03-LTS-SP2"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "1.28.15-5.oe2403sp2"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"ecosystem_specific": {
"aarch64": [
"cups-filters-1.26.1-7.oe2003sp4.aarch64.rpm",
"cups-filters-debuginfo-1.26.1-7.oe2003sp4.aarch64.rpm",
"cups-filters-debugsource-1.26.1-7.oe2003sp4.aarch64.rpm",
"cups-filters-devel-1.26.1-7.oe2003sp4.aarch64.rpm"
],
"noarch": [
"cups-filters-help-1.26.1-7.oe2003sp4.noarch.rpm"
],
"src": [
"cups-filters-1.26.1-7.oe2003sp4.src.rpm"
],
"x86_64": [
"cups-filters-1.26.1-7.oe2003sp4.x86_64.rpm",
"cups-filters-debuginfo-1.26.1-7.oe2003sp4.x86_64.rpm",
"cups-filters-debugsource-1.26.1-7.oe2003sp4.x86_64.rpm",
"cups-filters-devel-1.26.1-7.oe2003sp4.x86_64.rpm"
]
},
"package": {
"ecosystem": "openEuler:20.03-LTS-SP4",
"name": "cups-filters",
"purl": "pkg:rpm/openEuler/cups-filters\u0026distro=openEuler-20.03-LTS-SP4"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "1.26.1-7.oe2003sp4"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"ecosystem_specific": {
"aarch64": [
"cups-filters-1.28.9-6.oe2203sp3.aarch64.rpm",
"cups-filters-debuginfo-1.28.9-6.oe2203sp3.aarch64.rpm",
"cups-filters-debugsource-1.28.9-6.oe2203sp3.aarch64.rpm",
"cups-filters-devel-1.28.9-6.oe2203sp3.aarch64.rpm"
],
"noarch": [
"cups-filters-help-1.28.9-6.oe2203sp3.noarch.rpm"
],
"src": [
"cups-filters-1.28.9-6.oe2203sp3.src.rpm"
],
"x86_64": [
"cups-filters-1.28.9-6.oe2203sp3.x86_64.rpm",
"cups-filters-debuginfo-1.28.9-6.oe2203sp3.x86_64.rpm",
"cups-filters-debugsource-1.28.9-6.oe2203sp3.x86_64.rpm",
"cups-filters-devel-1.28.9-6.oe2203sp3.x86_64.rpm"
]
},
"package": {
"ecosystem": "openEuler:22.03-LTS-SP3",
"name": "cups-filters",
"purl": "pkg:rpm/openEuler/cups-filters\u0026distro=openEuler-22.03-LTS-SP3"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "1.28.9-6.oe2203sp3"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"database_specific": {
"severity": "Medium"
},
"details": "This project provides backends, filters, and other software that was once part of the core CUPS distribution but is no longer maintained by Apple Inc. In addition it contains additional filters and software developed independently of Apple, especially filters for the PDF-centric printing workflow introduced by OpenPrinting and a daemon to browse Bonjour broadcasts of remote CUPS printers to make these printers available locally and to provide backward compatibility to the old CUPS broadcasting and browsing of CUPS 1.5.x and older.\r\n\r\nSecurity Fix(es):\n\nCUPS is a standards-based, open-source printing system, and libcupsfilters contains the code of the filters of the former cups-filters package. In CUPS-Filters versions up to and including 1.28.17 and libcupsfilters versions 2.0.0 through 2.1.1, the imagetoraster filter has an out of bounds read/write vulnerability in the processing of TIFF image files. While the pixel buffer is allocated with the number of pixels times a pre-calculated bytes-per-pixel value, the function which processes these pixels is called with a size of the number of pixels times 3. When suitable inputs are passed, the bytes-per-pixel value can be set to 1 and bytes outside of the buffer bounds get processed. An attacker must issue a print job with a crafted TIFF file and control the bytes-per-pixel value of the output format. The vulnerability exists in both CUPS-Filters 1.x and libcupsfilters 2.x. A patch is available in commit b69dfacec7f176281782e2f7ac44f04bf9633cfa.(CVE-2025-57812)\n\ncups-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\u2019s `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.(CVE-2025-64503)",
"id": "OESA-2025-2719",
"modified": "2026-08-06T11:09:50Z",
"published": "2025-11-22T11:09:50Z",
"references": [
{
"type": "ADVISORY",
"url": "https://www.openeuler.org/zh/security/security-bulletins/detail/?id=openEuler-SA-2025-2719"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2025-57812"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2025-64503"
}
],
"schema_version": "1.7.2",
"severity": [
{
"score": "CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L",
"type": "CVSS_V3"
}
],
"summary": "cups-filters security update",
"upstream": [
"CVE-2025-57812",
"CVE-2025-64503"
]
}
Sightings
| Author | Source | Type | Date | Other |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.
The approach is described in our paper Mapping CVEs to MITRE ATT&CK Techniques: A Curated Gold-Set Classifier and the Limits of LLM-Assisted Label Expansion.
Browse all ATT&CK techniques and the vulnerabilities related to each.
Related by attack behaviour
Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.