
Questo strumento è progettato per sfruttare CVE-2024-39722, una vulnerabilità di divulgazione dell'esistenza di modelli in Ollama fino alla versione 0.1.45 inclusa. Consente agli utenti di verificare se un server Ollama è vulnerabile e tentare di scoprire i modelli esistenti sul server. Inoltre, può eseguire la scansione della libreria ufficiale dei modelli Ollama per generare un elenco di potenziali modelli da testare. 中文
/api/push, un attaccante può determinare se un modello specifico (inclusi i modelli personalizzati non presenti nella libreria pubblica) esiste sul server.https://ollama.com/library).requestslxmltermcolorCVE_2024_39722.py.pip install requests lxml termcolor
python CVE_2024_39722.py [options]
-h, --help: Mostra il messaggio di aiuto ed esci.-u URL, --url URL: URL del server Ollama target (es. http://localhost:11434).-c, --crawl: Scansiona la libreria dei modelli Ollama e salvali in links.json.-o OUTPUT, --output OUTPUT: File di output per i risultati (predefinito: results.json).-t THREADS, --threads THREADS: Numero di thread da utilizzare per lo sfruttamento (predefinito: 10).-v, --version-check: Controlla solo se il server Ollama target è vulnerabile in base alla sua versione.Mostra aiuto:
python CVE_2024_39722.py -h
Scansiona la libreria modelli di Ollama:
Questo recupererà i nomi dei modelli da https://ollama.com/library e li salverà in links.json.
python CVE_2024_39722.py --crawl
Verifica se un server target è vulnerabile:
python CVE_2024_39722.py -u http://localhost:11434 --version-check
Sfrutta un server target:
Questo controllerà prima la versione del server. Se vulnerabile, utilizzerà links.json (lo scansiona se non presente oppure usa quello esistente) per testare l'esistenza dei modelli.
python CVE_2024_39722.py -u http://localhost:11434
Sfrutta con un numero specifico di thread:
python CVE_2024_39722.py -u http://localhost:11434 -t 20
Sfrutta e salva i risultati in un file personalizzato:
python CVE_2024_39722.py -u http://localhost:11434 -o discovered_models.json
Questo strumento è destinato esclusivamente a scopi didattici e di test di sicurezza autorizzati. Non utilizzarlo su alcun sistema senza il permesso esplicito del proprietario. L'autore non è responsabile per qualsiasi uso improprio o danno causato da questo strumento.