
CVE2PoC è uno strumento che aiuta penetration tester, bug hunter e ricercatori di sicurezza a trovare rapidamente exploit pubblici o PoC correlati a un ID CVE
CVE2PoC è uno strumento che aiuta penetration tester, bug hunter e ricercatori di sicurezza a trovare rapidamente exploit pubblici, proof-of-concept (PoC) e advisory relativi a un CVE ID.
CVE2PoC può essere installato usando pipx o uv.
pipx install git+https://github.com/0liverFlow/cve2poc
uv tool install git+https://github.com/0liverFlow/CVE2PoC
uvx git+https://github.com/0liverFlow/CVE2PoC
L'uso di CVE2PoC è semplice. Puoi usarlo specificando semplicemente un CVE ID.
Fai riferimento al menu di aiuto e alla sezione dimostrativa qui sotto per comprendere meglio le funzionalità dello strumento.
usage: cve2poc.py [-h] [-x] [-d] [-f FILE] [-o OUTPUT] [-l LANGUAGE] [--limit LIMIT] [-t] [--labs CVE ID]
[--bugbounty-reports CVE ID] [--mitigations CVE ID] [--cve2cpe CVE ID] [--cpe2cve CPE] [-s FILE]
[--api-keys] [--no-banner]
[cve]
Uno strumento semplice ma potente per trovare rapidamente PoC correlati a un CVE ID
positional arguments:
cve CVE ID
options:
-h, --help mostra questo messaggio di aiuto ed esce
-x , --examine Esamina il file README di un exploit
-d, --description Mostra la descrizione di un CVE ID
-f FILE, --file FILE Specifica un file contenente un elenco di CVE ID
-o OUTPUT, --output OUTPUT Directory di output per salvare i report
-l LANGUAGE, --language LANGUAGE Filtra i PoC per linguaggio di programmazione
--limit LIMIT Numero di PoC da visualizzare
-t , --threads Numero di thread concorrenti
--labs CVE ID Cerca ambienti Docker preconfigurati e laboratori pratici correlati a un CVE ID
--bugbounty-reports CVE ID Cerca report di Bug Bounty correlati a un CVE ID
--mitigations CVE ID Passi di remediation per correggere una vulnerabilità
--cve2cpe CVE ID Recupera CPE correlati a un CVE ID
--cpe2cve CPE Recupera CVE correlati a un CPE
-s FILE, --save FILE File di output per salvare i risultati di CPE2CVE
--api-keys Configura le tue chiavi API GitHub e NVD (non obbligatorio)
--no-banner Rimuovi il banner
Esegui questo comando per cercare exploit pubblici correlati a un CVE ID:
cve2poc <CVE ID>

Per impostazione predefinita, lo strumento restituirà i migliori 10 exploit, ordinati per stelle e fork.
Inoltre, cercherà moduli Metasploit, template Nuclei ed exploit Exploit-DB correlati al CVE ID specificato.
Per cercare più CVE, specifica un file contenente un elenco di CVE ID (un CVE per riga) usando il flag -f:
cve2poc -f <file>


Per impostazione predefinita, CVE2PoC genera automaticamente un report JSON e HTML dettagliato nella directory corrente.
Per usare una directory di output diversa, usa il flag-o.
Per testare questa funzionalità, usa i file di esempio forniti.
Il comando seguente restituisce la descrizione di un CVE ID, oltre a riferimenti aggiuntivi per comprendere meglio la vulnerabilità:
cve2poc --description <CVE ID>

CVE2PoC può essere usato per trovare ambienti Docker pronti all'uso e laboratori pratici per comprendere e testare gli exploit in sicurezza prima di usarli in ambienti reali, riducendo il rischio di interruzioni della produzione.
cve2poc --labs <CVE ID>

I report di Bug Bounty possono essere utili per capire come un CVE è stato sfruttato in scenari reali. Possono anche contenere PoC che ti aiutano a riprodurre la vulnerabilità.
cve2poc --bugbounty-reports <CVE ID>

Per identificare rapidamente i passi di remediation per una vulnerabilità, usa questo comando:
cve2poc --mitigations <CVE ID>

CVE2PoC ha una funzionalità simile a searchsploit -x, che ti permette di leggere il file README di un exploit direttamente dal tuo terminale. È utile soprattutto se hai bisogno di capire rapidamente come funziona l'exploit senza usare il browser.
Per esaminare la documentazione dell'exploit, usa questo comando:
cve2poc --examine <URL di clone GitHub>

L'URL di clone GitHub è l'URL restituito da CVE2PoC per ogni PoC.
Per recuperare i CVE ID correlati a un CPE, esegui questo comando:
cve2poc --cpe2cve <CPE>

Per recuperare i CPE correlati a un CVE ID, esegui questo comando:
cve2poc --cve2cpe <CVE ID>

CVE2PoC ha una funzionalità che ti aiuta a cercare PoC scritti in un linguaggio di programmazione specifico. Per usarla, esegui questo comando:
cve2poc <CVE ID> --language <linguaggio di programmazione>

Per impostazione predefinita, CVE2PoC restituisce i migliori 10 exploit trovati su GitHub. Tuttavia, puoi visualizzare più o meno exploit usando il flag --limit:
cve2poc <CVE ID> --limit <N>

N deve essere maggiore o uguale a 1.
CVE2PoC usa argcomplete per eseguire automaticamente il completamento tramite tab con argparse.
sudo apt install python3-argcomplete
# Per Bash
register-python-argcomplete cve2poc >> ~/.bashrc
source ~/.bashrc
# Per Zsh
register-python-argcomplete cve2poc >> ~/.zshrc
source ~/.zshrc
CVE2PoC usa ruff per linting e formattazione.
# Esegui linter
uv run ruff check .
# Esegui linter con correzione automatica
uv run ruff check --fix .
# Esegui formattatore
uv run ruff format .
Un enorme ringraziamento alle seguenti fonti su cui CVE2PoC si basa:
Questo strumento è destinato esclusivamente a scopi educativi, di ricerca e di test di sicurezza autorizzati. Usalo solo su sistemi di tua proprietà o per i quali hai ricevuto esplicita autorizzazione. L'autore non è responsabile per qualsiasi uso improprio o danno derivante dal suo utilizzo.