
#PaperCut CVE-2026-81578 + CVE-2026-82078 Defense Toolkit 2 3 Un toolkit **difensivo** per verificare e comprendere l'esposizione alla catena
Un kit difensivo per verificare e comprendere l'esposizione alle vulnerabilità remote code execution pre-autenticazione concatenate in PaperCut:
Quando concatenate: Internet → nessuna autenticazione → manipolazione della configurazione → caricamento non sicuro di classi → esecuzione arbitraria di Java → esecuzione di comandi sull'host.
| File | Scopo |
|---|
papercut-exposure-checker.py | Rilevamento difensivo approfondito: versione vs patch, esposizione web, scansione payload IOC, scansione anomalie di configurazione, scansione payload .class rilasciati |
papercut-cve-prevention.md | Riferimento che mostra i pattern di codice vulnerabili vs sicuri sia per CWE-306 che per il caricamento non sicuro di classi |
Lo scanner va oltre il controllo della versione. Rileva gli artefatti di attacco effettivi osservati in natura (avviso Huntress / PaperCut):
< 24.1.10, < 25.0.13, < 26.0.5).--log) — rileva gli artefatti dell'attaccante in server.log:
jdbc:derby:memory:pwn (DB Derby in memoria usato nella catena di gadget)No suitable driver found for jdbc:no:xdatabase error looking up cardIDwhoami & ver, whoami & ver & tasklist)--config) — segnala le impostazioni di ricerca utente esterna modificate dall'attaccante:
jdbc:h2, jdbc:derby:memory)INIT/CALL (suggerimenti di gadget Derby→H2)--lib) — rileva file .class rilasciati dall'attaccante in server/lib (osservati: Udydn.class, Moo97.class).# Verifica l'esposizione web di un server PaperCut (non distruttivo)
python3 papercut-exposure-checker.py --url https://print.server:9191
# Valuta una versione di build rispetto alle build patchate
python3 papercut-exposure-checker.py --version 25.0.11.75758
# Scansiona un log del server per gli IOC pubblicati (artefatti di payload)
python3 papercut-exposure-checker.py --log /usr/local/papercut/server/logs/server.log
# Scansiona il file di configurazione per le impostazioni di ricerca utente modificate dall'attaccante
python3 papercut-exposure-checker.py --config /usr/local/papercut/server/server.properties
# Scansiona la directory lib per payload .class rilasciati
python3 papercut-exposure-checker.py --lib /usr/local/papercut/server/lib
# Scansione approfondita completa + report HTML/JSON
python3 papercut-exposure-checker.py \
--url https://print.server:9191 \
--version 25.0.11.75758 \
--log /usr/local/papercut/server/logs/server.log \
--config /usr/local/papercut/server/server.properties \
--lib /usr/local/papercut/server/lib \
--html report.html --json report.json
pc-app.exe (post-sfruttamento)server.log mancante, troncato o eliminatoNo suitable driver found, errori specifici di lookup CardIDNota: L'assenza di IOC NON dimostra che un server sia pulito.
Questo kit è esclusivamente difensivo. Non sfrutta nulla e deve essere utilizzato solo su server che sei autorizzato a testare. Il riferimento di prevenzione mostra pattern di codice corretti/sicuri per l'apprendimento e l'indurimento — mai per attaccare.
Prima dell'uso in produzione, verifica i numeri di build esatti della
Emergency Patch Release 2 dall'avviso del fornitore e aggiorna PATCHED_BUILDS
nello scanner (vengono utilizzati valori segnaposto).