Skip to main content
CVE Vulnerability Database
Vulnerability Database/CVE-2026-34980

CVE-2026-34980: OpenPrinting CUPS Auth Bypass Vulnerability

CVE-2026-34980 is an authentication bypass flaw in OpenPrinting CUPS that allows unauthenticated attackers to execute arbitrary binaries via malicious print jobs. This article covers technical details, affected versions, impact, and mitigation strategies.

Published:

CVE-2026-34980 Overview

A critical input validation vulnerability has been identified in OpenPrinting CUPS, the widely-used open source printing system for Linux and other Unix-like operating systems. In versions 2.4.16 and prior, a network-exposed cupsd with a shared target queue allows an unauthorized client to send a Print-Job to a shared PostScript queue without authentication. The server accepts a page-border value supplied as textWithoutLanguage, preserves an embedded newline through option escaping and reparse, and then reparses the resulting second-line PPD text as a trusted scheduler control record. A follow-up raw print job can therefore make the server execute an attacker-chosen existing binary such as /usr/bin/vim as the lp user.

Critical Impact

Unauthenticated attackers on adjacent networks can exploit improper input validation to execute arbitrary existing binaries on vulnerable CUPS servers, potentially leading to system compromise.

Affected Products

  • OpenPrinting CUPS version 2.4.16 and prior
  • Linux and Unix-like operating systems running vulnerable CUPS versions
  • Systems with network-exposed cupsd and shared PostScript print queues

Discovery Timeline

  • 2026-04-03 - CVE CVE-2026-34980 published to NVD
  • 2026-04-07 - Last updated in NVD database

Technical Details for CVE-2026-34980

Vulnerability Analysis

This vulnerability stems from improper input validation (CWE-20) in the CUPS print job processing mechanism. When a network-exposed CUPS daemon is configured with shared print queues, it fails to properly sanitize the page-border option value before processing it through the PPD (PostScript Printer Description) parsing logic.

The vulnerability specifically exploits the way CUPS handles textWithoutLanguage values in print job submissions. An attacker can craft a malicious page-border value containing embedded newline characters. These newlines survive the option escaping and reparsing stages, allowing the second line to be interpreted as a trusted scheduler control record rather than user-supplied data. This parser confusion ultimately enables the attacker to influence the execution of system binaries under the context of the lp user account.

The attack requires adjacent network access, meaning the attacker must be on the same network segment as the vulnerable CUPS server. No authentication is required to exploit this vulnerability, making it particularly dangerous in environments with network-exposed print services.

Root Cause

The root cause is improper input validation in the CUPS print job handler. The vulnerability exists because:

  1. The page-border parameter accepts textWithoutLanguage values without adequate sanitization
  2. Embedded newline characters are preserved through the option escaping mechanism
  3. The PPD parser treats second-line content as trusted scheduler control records
  4. No authentication is required for Print-Job submissions to shared queues

This combination of design flaws allows untrusted input to cross a trust boundary and influence scheduler behavior.

Attack Vector

The attack follows this exploitation path:

  1. Attacker identifies a network-exposed CUPS daemon with shared PostScript print queues
  2. Attacker crafts a malicious Print-Job request with a specially formatted page-border value containing embedded newline characters
  3. The CUPS server accepts the job without authentication
  4. During processing, the newline causes the parser to interpret attacker-controlled data as a scheduler control record
  5. Attacker sends a follow-up raw print job that triggers execution of an existing system binary (e.g., /usr/bin/vim)
  6. The binary executes with lp user privileges

The vulnerability manifests in the boundary generation function and PPD parsing logic. For detailed technical information, see the GitHub Security Advisory.

Detection Methods for CVE-2026-34980

Indicators of Compromise

  • Unexpected Print-Job submissions to shared PostScript queues from unknown or unauthorized network hosts
  • Anomalous page-border option values containing newline characters or unusual formatting in CUPS logs
  • Processes spawned by the lp user that are not typical print-related binaries
  • Increased network traffic to CUPS services (typically port 631) from adjacent network segments

Detection Strategies

  • Monitor CUPS access logs (/var/log/cups/access_log) for unauthenticated Print-Job submissions from unexpected sources
  • Implement network intrusion detection rules to identify malformed IPP (Internet Printing Protocol) requests containing embedded newlines in option values
  • Deploy endpoint detection to alert on unusual process execution chains originating from the cupsd service
  • Review audit logs for binaries executed under the lp user context that are outside normal print operations

Monitoring Recommendations

  • Enable verbose logging in CUPS configuration to capture detailed job submission parameters
  • Configure network monitoring to alert on IPP traffic from unauthorized network segments
  • Implement process monitoring for the lp user account to detect execution of non-print-related binaries
  • Use SentinelOne Singularity platform to detect anomalous process behavior associated with print services

How to Mitigate CVE-2026-34980

Immediate Actions Required

  • Restrict network access to CUPS services using firewall rules to allow only trusted hosts
  • Disable shared PostScript print queues if not required for operations
  • Enable authentication requirements for all print job submissions where possible
  • Audit current CUPS configurations for network-exposed services with shared queues

Patch Information

At time of publication, there are no publicly available patches for this vulnerability. Organizations should monitor the GitHub Security Advisory for patch availability and update information from the OpenPrinting project.

Workarounds

  • Implement network segmentation to restrict adjacent network access to CUPS servers
  • Configure cupsd to require authentication for all print job submissions by modifying /etc/cups/cupsd.conf
  • Disable network sharing of print queues if remote printing is not essential
  • Use host-based firewall rules to limit IPP connections to explicitly authorized clients only
bash
# Configuration example - Restrict CUPS to localhost only
# Edit /etc/cups/cupsd.conf
Listen localhost:631
# Or bind to specific internal interface only
# Listen 192.168.1.100:631

# Require authentication for printing
<Policy default>
  <Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job Cancel-My-Jobs Close-Job CUPS-Move-Job CUPS-Get-Document>
    AuthType Default
    Require user @SYSTEM
    Order deny,allow
  </Limit>
</Policy>

# Restart CUPS service after changes
sudo systemctl restart cups

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

Default Legacy - Prefooter | Experience the World’s Most Advanced Cybersecurity Platform

Experience the Most Advanced Cybersecurity Platform

See how the world’s most intelligent, autonomous cybersecurity platform can protect your organization today and into the future.