Questo progetto mira a generare automaticamente Proof-of-Concept (PoC) per vulnerabilità software, sfruttando grandi modelli di linguaggio e parsing automatizzato delle basi dati.
Prima di eseguire il progetto, assicurati di avere:
Successivamente, esegui i seguenti passaggi:
ollama pull deepseek-coder-v2:16b- Vulhub — raccolta di vulnerabilità containerizzate:
git clone https://github.com/vulhub/vulhub.gitℹ️ Nota: segui le istruzioni contenute all'interno di ciascuna directory per avviare la vulnerabilità.
- PoC-in-GitHub — PoC aggiornati da GitHub:
git clone https://github.com/nomi-sec/PoC-in-GitHub.git- ExploitDB — database di exploit da Offensive Security:
git clone https://gitlab.com/exploit-database/exploitdb.gitCrea un file .env nella directory principale del progetto con il seguente contenuto:
NVD_API_KEY="YOUR_NVD_API_KEY"
NVD_CVE_SEARCH="https://services.nvd.nist.gov/rest/json/cves/2.0"
NVD_CPE_SEARCH="https://services.nvd.nist.gov/rest/json/cpes/2.0"
POC_IN_GITHUB="/percorso/assoluto/PoC-in-GitHub"
REPO="/percorso/assoluto/cartella-del-progetto"🔐 Nota: sostituisci
YOUR_NVD_API_KEYcon la tua chiave personale ottenuta dal sito NVD.
🗂️ I percorsi locali devono essere assoluti e riferiti al tuo sistema.
- Avvia il servizio Ollama
ollama serve- Esegui lo script
parser.pyper indicizzare e preparare i dati:
python parser.py-
Avvia una vulnerabilità da Vulhub, scegliendo una directory e seguendo le istruzioni al suo interno (di solito con
docker-compose up -d). -
Esegui il file principale (
main.py) per avviare il sistema di generazione PoC:
python main.py- Parsing di PoC da fonti pubbliche
- Supporto a Ollama + LLM locale
- Generazione PoC funzionanti per ogni CVE
- Integrazione automatica con ambienti Docker
- Alcune vulnerabilità potrebbero non avviarsi correttamente o essere incompatibili con la generazione attuale della PoC.