Description
OpenPrinting CUPS is an open source printing system for Linux and other Unix-like operating systems. Prior to 2.4.20, copy_banner() in scheduler/ipp.c uses the attacker-controlled IPP attributes-natural-language value as a directory component beneath DataDir/banners when processing a job-sheets banner. The job-sheets value must first match a registered banner basename, and the traversed path must contain a matching reachable basename; selecting an arbitrary target as demonstrated additionally requires pre-positioned path state such as a symlink with that basename. Subject to the scheduler's filesystem and sandbox access, path separators in the language value can escape the intended banner directory, make the root scheduler open the reachable file, and copy its bytes into a job-sheet spool object that a configured backend can deliver to an attacker-observable endpoint. This issue is fixed in version 2.4.20.
Affected products
openprinting: cups
References5
- github.com/OpenPrinting/cups/security/advisories/GHSA-gq9p-4w7m… ExploitMitigationVendor Advisory
- github.com/OpenPrinting/cups/security/advisories/GHSA-gq9p-4w7m… ExploitMitigationVendor Advisory
- github.com/OpenPrinting/cups/commit/08a8a277ce2a8948a1af3355224… Patch
- github.com/OpenPrinting/cups/commit/6650428234616a97d3298e0e2d4… Patch
- github.com/OpenPrinting/cups/releases/tag/v2.4.20 Release Notes
Metrics
- CVSS 3.1
-
5.3
MEDIUM
Score source: CNA
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N - EPSS — exploit probability
- 0% percentile: 37 · as of 10 November 2026
- CWE
- CWE-22
Could this be exploited in your environment?
A patch closes the known hole. A penetration test shows what an attacker can still reach — with proof.