Back to Intelligence

CVE-2026-81578 & CVE-2026-82078: PaperCut NG/MF Added to CISA KEV — Detection and Remediation Guide

SA
Security Arsenal Team
August 31, 2026
12 min read

On August 31, 2026, CISA added two PaperCut NG/MF vulnerabilities to its Known Exploited Vulnerabilities (KEV) Catalog — the strongest public signal available that threat actors are weaponizing these flaws right now, not theorizing about them:

  • CVE-2026-81578 — PaperCut NG/MF Missing Authentication for Critical Function
  • CVE-2026-82078 — PaperCut NG/MF Unsafe Reflection

If you run PaperCut NG or MF anywhere in your environment — and if you're in education, healthcare, legal, or managed print services, you almost certainly do — treat this as an active incident-response trigger, not a routine patch ticket. PaperCut servers hold a privileged position in the network: they typically run with elevated service accounts, broker authentication against Active Directory or LDAP, and sit at the intersection of every user and every print job in the enterprise. A compromised print server is a compromised identity plane waiting to happen.

For Federal Civilian Executive Branch (FCEB) agencies, Binding Operational Directive (BOD) 26-04 makes remediation mandatory on an accelerated timeline. For everyone else, KEV inclusion should carry the same operational weight: these vulnerabilities are a documented, repeatable initial-access pathway for malicious actors.


Technical Analysis

Affected Products

  • PaperCut NG and PaperCut MF application servers, across supported platforms (Windows and Linux deployments).
  • The vulnerable component is the PaperCut Application Server web interface, which by default listens on TCP 9191 (HTTP) and TCP 9192 (HTTPS).

At the time of this writing, CVSS scores have not been formally published in the source advisory; defenders should monitor the NVD entries and PaperCut's security bulletin for scoring and fixed-version confirmation. Do not wait for a score to act — KEV listing supersedes severity math.

CVE-2026-81578 — Missing Authentication for Critical Function (CWE-306)

This flaw class means exactly what it says: the application exposes a function that performs a security-critical operation without requiring the caller to authenticate. From a defender's perspective, this is the worst-case web application defect on an internet- or intranet-reachable management console:

  • No credentials required. The attacker needs only network reachability to the PaperCut web interface.
  • Low complexity. Missing-auth flaws are trivially scriptable and are among the first vulnerability classes mass-scanners target after public disclosure.
  • High blast radius. Depending on the exposed function, impact can range from configuration disclosure and session hijacking to full remote code execution in the service account's context.

CVE-2026-82078 — Unsafe Reflection (CWE-470)

PaperCut's application server is Java-based, and unsafe reflection flaws in Java web applications are a well-trodden path to code execution. Unsafe use of reflection means the application instantiates or invokes classes/methods based on attacker-influenced input. In practical terms, an attacker who can control the reflection target can pivot from "influence application logic" to "invoke dangerous application internals" — frequently chaining into arbitrary code execution without ever touching a file upload or memory corruption primitive.

Likely Attack Chain (Defender's Model)

Based on the vulnerability classes involved, the realistic exploitation sequence is:

  1. Reconnaissance — scanning for PaperCut's characteristic web interface on ports 9191/9192 (Shodan and Censys make exposed instances trivially enumerable).
  2. Initial access — unauthenticated request to the critical function exposed by CVE-2026-81578, or crafted input driving the unsafe reflection path in CVE-2026-82078.
  3. Code execution — attacker-controlled code runs in the context of the PaperCut service (Java process, frequently running as a privileged service account).
  4. Post-exploitation — command shell spawning from the PaperCut/Java process, payload staging, credential harvesting against the server's AD/LDAP bindings, and lateral movement. Print servers are also commonly repurposed as C2 relays or persistence footholds because they are rarely EDR-instrumented and almost never rebuilt.

Exploitation Status

  • Confirmed active exploitation in the wild — this is the inclusion criterion for the CISA KEV Catalog.
  • KEV-listed: Both CVEs added August 31, 2026.
  • Federal mandate: BOD 26-04 requires FCEB agencies to remediate KEV-listed vulnerabilities on CISA's published due date. Check the KEV catalog entry for the exact deadline and treat it as a hard stop, not guidance.

Detection & Response

The highest-fidelity detection surface for this threat is anomalous child process creation from the PaperCut application server process and unexpected network behavior from the print server. A healthy PaperCut server does not spawn cmd.exe, powershell.exe, whoami.exe, or download cradle behavior — ever.

Sigma Rules

YAML
---
title: PaperCut Application Server Spawning Command Shell or Scripting Engine
id: 8f3a2c91-4d7e-4b5a-9c21-7e6f0a1b2d3e
status: experimental
description: Detects the PaperCut NG/MF application server process spawning command shells, scripting engines, or reconnaissance binaries, consistent with post-exploitation activity following CVE-2026-81578 or CVE-2026-82078 exploitation.
references:
  - https://www.cisa.gov/news-events/alerts/2026/08/31/cisa-adds-two-known-exploited-vulnerabilities-catalog
  - https://attack.mitre.org/techniques/T1059/
author: Security Arsenal
date: 2026/08/31
tags:
  - attack.execution
  - attack.t1059
  - attack.t1190
logsource:
  category: process_creation
  product: windows
detection:
  selection_parent:
    ParentImage|endswith:
      - '\pc-app.exe'
      - '\java.exe'
      - '\javaw.exe'
  selection_child:
    Image|endswith:
      - '\cmd.exe'
      - '\powershell.exe'
      - '\pwsh.exe'
      - '\wscript.exe'
      - '\cscript.exe'
      - '\mshta.exe'
      - '\rundll32.exe'
      - '\whoami.exe'
      - '\net.exe'
      - '\net1.exe'
      - '\nltest.exe'
  filter_java_path:
    ParentImage|contains:
      - '\JetBrains\'
      - '\IntelliJ'
      - '\Android Studio'
  condition: selection_parent and selection_child and not filter_java_path
falsepositives:
  - PaperCut scripting hooks configured by administrators to invoke print scripts — validate parent path is the PaperCut installation directory
  - Java-based applications other than PaperCut; scope parent path to PaperCut install directory in production tuning
level: high
---
title: PaperCut Web Interface Probed for Unauthenticated Administrative Endpoints
id: 2b7e4d15-9a3c-4f68-b1d4-5c8e2a7f9031
status: experimental
description: Detects HTTP requests to PaperCut NG/MF administrative or application endpoints from sources outside expected management networks, consistent with reconnaissance and exploitation attempts against CVE-2026-81578 missing authentication.
references:
  - https://www.cisa.gov/news-events/alerts/2026/08/31/cisa-adds-two-known-exploited-vulnerabilities-catalog
  - https://attack.mitre.org/techniques/T1190/
author: Security Arsenal
date: 2026/08/31
tags:
  - attack.initial_access
  - attack.t1190
  - attack.reconnaissance
  - attack.t1595
logsource:
  category: webserver
detection:
  selection_uri:
    cs-uri|contains:
      - '/app'
      - '/admin'
      - '/api/'
  selection_status:
    sc-status:
      - 200
      - 302
  filter_rfc1918:
    c-ip|startswith:
      - '10.'
      - '192.168.'
      - '172.16.'
  condition: selection_uri and selection_status and not filter_rfc1918
falsepositives:
  - Legitimate remote administration over VPN with public-facing source NAT
  - Authenticated user portal access if PaperCut user web tools are intentionally internet-exposed (they should not be)
level: medium
---
title: Outbound Network Connection from PaperCut Server Process to Rare External Host
id: 4c9d6e27-1b8a-4f35-a2c9-9d3e5f7a1b06
status: experimental
description: Detects outbound connections initiated by the PaperCut application server process, which should have a narrow, well-defined set of external destinations. Unexpected egress is a strong indicator of payload staging or C2 following CVE-2026-81578/CVE-2026-82078 exploitation.
references:
  - https://www.cisa.gov/news-events/alerts/2026/08/31/cisa-adds-two-known-exploited-vulnerabilities-catalog
  - https://attack.mitre.org/techniques/T1071/
author: Security Arsenal
date: 2026/08/31
tags:
  - attack.command_and_control
  - attack.t1071.001
  - attack.exfiltration
logsource:
  category: network_connection
  product: windows
detection:
  selection:
    Image|endswith:
      - '\pc-app.exe'
    DestinationIp|rfc1918: 'false'
  filter_expected:
    DestinationHostname|contains:
      - 'papercut.com'
      - 'windowsupdate.com'
      - 'digicert.com'
  condition: selection and not filter_expected
falsepositives:
  - License server check-ins, update checks, and payment gateway / external database integrations — baseline and allowlist per environment
level: high

KQL — Microsoft Sentinel / Defender

This query hunts the core post-exploitation behavior — the PaperCut service process or its Java runtime spawning shells or reconnaissance tooling — plus suspicious egress from identified print servers. It assumes endpoints are onboarded to Defender for Endpoint; Syslog/CEF-ingested firewall data covers the network side.

KQL — Microsoft Sentinel / Defender
// Hunt 1: PaperCut process spawning suspicious child processes
let suspiciousChildren = dynamic(["cmd.exe", "powershell.exe", "pwsh.exe", "wscript.exe", "cscript.exe", "mshta.exe", "rundll32.exe", "whoami.exe", "net.exe", "net1.exe", "nltest.exe", "certutil.exe", "bitsadmin.exe"]);
DeviceProcessEvents
| where TimeGenerated > ago(14d)
| where InitiatingProcessFileName in~ ("pc-app.exe", "java.exe", "javaw.exe")
| where InitiatingProcessFolderPath has_any ("PaperCut", "papercut")
   or InitiatingProcessFileName =~ "pc-app.exe"
| where FileName in~ (suspiciousChildren)
| project TimeGenerated, DeviceName, InitiatingProcessFileName, InitiatingProcessCommandLine, FileName, ProcessCommandLine, AccountName, InitiatingProcessAccountName
| order by TimeGenerated desc;

// Hunt 2: Outbound connections from PaperCut servers to non-RFC1918 destinations
DeviceNetworkEvents
| where TimeGenerated > ago(14d)
| where InitiatingProcessFileName in~ ("pc-app.exe", "java.exe", "javaw.exe")
| where InitiatingProcessFolderPath has "PaperCut" or InitiatingProcessFileName =~ "pc-app.exe"
| where not(ipv4_is_private(RemoteIP))
| where RemotePort in (80, 443, 8080, 8443)
| summarize ConnectionCount = count(), FirstSeen = min(TimeGenerated), LastSeen = max(TimeGenerated), RemoteIPs = make_set(RemoteIP, 20), Ports = make_set(RemotePort) by DeviceName, InitiatingProcessFileName
| order by ConnectionCount asc;

Note the ascending sort on the second query — legitimate PaperCut egress (licensing, updates) is high-volume and repetitive. C2 and staging from a freshly compromised box is low-and-slow. The rare connections are the ones that matter.

Velociraptor VQL

Use this hunt artifact across your fleet to identify PaperCut servers and surface anomalous process execution and network connections from the application server process — ideal for scoping exposure before patch validation completes.

VQL — Velociraptor
-- Identify PaperCut application server processes and their children/network activity
SELECT Pid, Ppid, Name, Exe, CommandLine, Username, CreateTime
FROM pslist()
WHERE Exe =~ '(?i)papercut|pc-app\.exe'
   OR (Name =~ '(?i)java' AND CommandLine =~ '(?i)papercut')
VQL — Velociraptor
-- Enumerate listening PaperCut web ports and associated outbound connections
SELECT Pid, Name, Status, LocalAddr AS Local, RemoteAddr AS Remote
FROM netstat()
WHERE Local =~ ':(9191|9192)$'
   OR (Name =~ '(?i)pc-app|java' AND Status =~ 'ESTAB' AND NOT Remote =~ '^(10\.|192\.168\.|172\.(1[6-9]|2[0-9]|3[01])\.)')

Remediation & Verification Script

Run this on Windows PaperCut application servers to enumerate the installed version, confirm service status, check web interface exposure, and apply compensating firewall restrictions while patching is scheduled. (Linux equivalent notes follow.)

PowerShell
# PaperCut NG/MF KEV Response — Exposure & Hardening Verification
# CVE-2026-81578 / CVE-2026-82078 | Run elevated on the PaperCut Application Server

# 1. Identify installed PaperCut version
$paths = @("HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*",
           "HKLM:\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*")
Get-ItemProperty $paths -ErrorAction SilentlyContinue |
    Where-Object { $_.DisplayName -match 'PaperCut' } |
    Select-Object DisplayName, DisplayVersion, InstallLocation | Format-List

# 2. Confirm PaperCut Application Server service status
Get-Service -Name "PCAppSvc" -ErrorAction SilentlyContinue |
    Select-Object Name, Status, StartType

# 3. Check whether web ports 9191/9192 are listening and what scope is exposed
Get-NetTCPConnection -State Listen -ErrorAction SilentlyContinue |
    Where-Object { $_.LocalPort -in 9191,9192 } |
    Select-Object LocalAddress, LocalPort, OwningProcess |
    ForEach-Object {
        $_ | Add-Member -NotePropertyName Process -NotePropertyValue (Get-Process -Id $_.OwningProcess).ProcessName -PassThru
    } | Format-Table -AutoSize

# 4. COMPENSATING CONTROL: Restrict admin interface to a management subnet only
# Adjust -RemoteAddress to your approved admin/management CIDR before applying.
$mgmtCIDR = "10.10.5.0/24"   # <-- CHANGE THIS
if (-not (Get-NetFirewallRule -DisplayName "PaperCut Admin Restrict 9191" -ErrorAction SilentlyContinue)) {
    New-NetFirewallRule -DisplayName "PaperCut Admin Restrict 9191" -Direction Inbound -Protocol TCP -LocalPort 9191 -RemoteAddress $mgmtCIDR -Action Allow
    New-NetFirewallRule -DisplayName "PaperCut Admin Restrict 9192" -Direction Inbound -Protocol TCP -LocalPort 9192 -RemoteAddress $mgmtCIDR -Action Allow
    New-NetFirewallRule -DisplayName "PaperCut Admin Block 9191 Other" -Direction Inbound -Protocol TCP -LocalPort 9191 -Action Block
    New-NetFirewallRule -DisplayName "PaperCut Admin Block 9192 Other" -Direction Inbound -Protocol TCP -LocalPort 9192 -Action Block
    Write-Host "[+] Firewall restrictions applied for PaperCut admin ports." -ForegroundColor Green
}

# 5. Quick tripwire: any shells spawned under the PaperCut install directory recently?
Get-WinEvent -FilterHashtable @{LogName='Security'; Id=4688; StartTime=(Get-Date).AddDays(-7)} -ErrorAction SilentlyContinue |
    Where-Object { $_.Message -match 'pc-app\.exe' -and $_.Message -match 'cmd\.exe|powershell\.exe|mshta\.exe' } |
    Select-Object TimeCreated, Message -First 20 | Format-List
Bash / Shell
# Linux PaperCut server verification
# 1. Installed version and service state
cat /opt/papercut/server/VERSION 2>/dev/null; systemctl status pc-app-server --no-pager

# 2. Confirm listening scope of 9191/9192 (0.0.0.0 = exposed to all interfaces)
ss -tlnp | grep -E ':(9191|9192)'

# 3. Check for shells spawned by the PaperCut service user or java process (auditd)
ausearch -ts recent -k exec 2>/dev/null | grep -E 'papercut|java' | grep -E 'cmd|sh|bash|curl|wget'

# 4. Recent outbound connections from the PaperCut process
ss -tnp | grep -E 'pc-app|java' | grep -v -E '10\.|192\.168\.|172\.(1[6-9]|2[0-9]|3[01])\.'

Remediation

  1. Patch immediately. Upgrade PaperCut NG/MF to the latest release referenced in PaperCut's security bulletin for these CVEs. Pull the fixed-version numbers directly from the vendor advisory at https://www.papercut.com/kb/Main/SecurityBulletins — do not rely on third-party aggregation for version truth. KEV listing means the exploit window is already open; "next patch cycle" is not an acceptable answer.

  2. Confirm internet exposure — then eliminate it. Search your attack surface (Shodan/Censys for port:9191 papercut, external scan data, EASM tooling) for any PaperCut interface reachable from the internet. The admin console should never be internet-facing. Restrict TCP 9191/9192 to management networks via host firewall (script above) and perimeter controls.

  3. Hunt before you patch — assume breach posture. Because both CVEs are confirmed exploited, patching without retrospective hunting leaves you blind to pre-patch compromise. Run the Sigma/KQL/VQL content above across a minimum 14-day lookback. Key artifacts of compromise: shells under the PaperCut/Java process, unexpected outbound egress from the print server, new local accounts or service-account anomalies, and web logs showing unauthenticated hits to administrative endpoints returning 200/302.

  4. Protect the identity plane. PaperCut commonly binds to AD/LDAP with a service account and may cache credentials. If you find any evidence of exploitation, rotate the PaperCut service account credentials, any LDAP bind accounts, and any admin console credentials — and review delegated permissions on those accounts.

  5. Meet the federal deadline if applicable. FCEB agencies: BOD 26-04 requires remediation by the due date published in the KEV Catalog entry for these CVEs. Non-federal organizations should adopt the same clock as internal SLA — KEV due dates are calibrated to observed exploitation velocity.

  6. Longer-term hardening. Enroll print servers in EDR coverage (they are chronically under-instrumented), segment them from workstation VLANs, disable unused PaperCut features and external integrations, and subscribe to PaperCut's security notifications so the next bulletin doesn't reach you via CISA.

Print infrastructure is one of the most consistently neglected surfaces in enterprise defense — rarely patched, rarely monitored, and trusted by everything. The threat actors exploiting these two CVEs know that. Close the gap.

Related Resources

Security Arsenal Penetration Testing Services AlertMonitor Platform Book a SOC Assessment vulnerability-management Intel Hub

Is your security operations ready?

Get a free SOC assessment or see how AlertMonitor cuts through alert noise with automated triage.