CUPS copy_model() creates a predictable PPD tempfile without O_EXCL/O_NOFOLLOW (symlink TOCTOU, lp → root)
CVE-2026-55480 is fixed in 15 products on 1 platform, first by ALAS2023-2026-3415, released November 10, 2026. It is not reported as exploited. Patch Radar priority: Routine.
When a printer is added or modified with a model PPD, the cupsd scheduler (running as root) calls copy_model() in scheduler/ipp.c, which writes the driver-generated PPD to a temporary file. The tempfile path is fully predictable (<TempDir>/<con->number>.ppd, where con->number is the sequential client connection id) and is opened with open(tempfile, O_WRONLY | O_CREAT | O_TRUNC, 0600) -- without O_EXCL and without O_NOFOLLOW. TempDir (/var/spool/cups/tmp) is mode 01770 root:lp, i.e. writable by the lp group that print filters run under. An lp-group process can pre-plant a symlink at the predicted path pointing at any root-owned file; root follows the symlink and truncates/overwrites the target, giving an lp - root arbitrary-file-write primitive. The codebase's own cups/tempfile.c opens temporaries safely with O_RDWR|O_CREAT|O_EXCL|O_NOFOLLOW; copy_model() is the inconsistent outlier.
Where it's fixed
| Product | Fixed in | Fix | Released |
|---|---|---|---|
| Linux | |||
| cups · amzn 2023 | 1:2.4.20-1.amzn2023.0.1 | ALAS2023-2026-3415 | Nov 10, 2026 |
| cups-client · amzn 2023 | 1:2.4.20-1.amzn2023.0.1 | ALAS2023-2026-3415 | Nov 10, 2026 |
| cups-client-debuginfo · amzn 2023 | 1:2.4.20-1.amzn2023.0.1 | ALAS2023-2026-3415 | Nov 10, 2026 |
| cups-debuginfo · amzn 2023 | 1:2.4.20-1.amzn2023.0.1 | ALAS2023-2026-3415 | Nov 10, 2026 |
| cups-debugsource · amzn 2023 | 1:2.4.20-1.amzn2023.0.1 | ALAS2023-2026-3415 | Nov 10, 2026 |
| cups-devel · amzn 2023 | 1:2.4.20-1.amzn2023.0.1 | ALAS2023-2026-3415 | Nov 10, 2026 |
| cups-filesystem · amzn 2023 | 1:2.4.20-1.amzn2023.0.1 | ALAS2023-2026-3415 | Nov 10, 2026 |
| cups-ipptool · amzn 2023 | 1:2.4.20-1.amzn2023.0.1 | ALAS2023-2026-3415 | Nov 10, 2026 |
| cups-ipptool-debuginfo · amzn 2023 | 1:2.4.20-1.amzn2023.0.1 | ALAS2023-2026-3415 | Nov 10, 2026 |
| cups-libs · amzn 2023 | 1:2.4.20-1.amzn2023.0.1 | ALAS2023-2026-3415 | Nov 10, 2026 |
| cups-libs-debuginfo · amzn 2023 | 1:2.4.20-1.amzn2023.0.1 | ALAS2023-2026-3415 | Nov 10, 2026 |
| cups-lpd · amzn 2023 | 1:2.4.20-1.amzn2023.0.1 | ALAS2023-2026-3415 | Nov 10, 2026 |
| cups-lpd-debuginfo · amzn 2023 | 1:2.4.20-1.amzn2023.0.1 | ALAS2023-2026-3415 | Nov 10, 2026 |
| cups-printerapp · amzn 2023 | 1:2.4.20-1.amzn2023.0.1 | ALAS2023-2026-3415 | Nov 10, 2026 |
| cups-printerapp-debuginfo · amzn 2023 | 1:2.4.20-1.amzn2023.0.1 | ALAS2023-2026-3415 | Nov 10, 2026 |
Patch Radar data is free to use with attribution. Terms and how to credit it.
Product names, logos and trademarks shown on Patch Radar belong to their respective owners. They are used only to identify the software each security fix applies to and to help readers find their platform. Their use does not imply any affiliation with, or endorsement by, those owners, and Patchblox is not affiliated with any of them.