CVE-2024-2997 Scanner

Panoramica

CVE-2024-2997 Scanner è uno scanner di vulnerabilità avanzato progettato per rilevare la vulnerabilità di command injection nelle applicazioni web. Questo strumento aiuta i professionisti della sicurezza a identificare potenziali rischi di sicurezza nelle loro applicazioni.
Disclaimer
Questo strumento è solo per scopi educativi. Utilizzalo esclusivamente su applicazioni di tua proprietà o per le quali hai il permesso di effettuare test. L'autore non è responsabile per qualsiasi uso improprio o danno causato da questo strumento.
Funzionalità
- Scansione ad alte prestazioni: utilizza il multi-threading (fino a 20 thread) per una scansione rapida
- Generazione completa di URL: genera un'ampia gamma di potenziali URL vulnerabili
- Monitoraggio dei progressi in tempo reale: mostra lo stato di avanzamento della scansione con una barra di avanzamento dinamica
- Report dettagliati: genera report dei risultati della scansione sia in formato testo che HTML
- Classificazione delle vulnerabilità: classifica i risultati in base al livello di confidenza (Basso, Medio, Alto, Critico)
- Rilevamento intelligente: identifica sia CVE-2024-2997 sia vulnerabilità simili
- Elaborazione in batch: elabora gli URL in lotti per prevenire il sovraccarico del sistema
- Impostazioni personalizzabili: thread, timeout, ritardi e dimensioni dei batch regolabili
- Report HTML a tema scuro: report professionali e moderni con informazioni dettagliate sulle vulnerabilità
- Gestione delle sessioni: possibilità di salvare e riprendere le sessioni di scansione
Installazione
- Clona il repository:
git clone https://github.com/lfillaz/CVE-2024-2997.git
cd CVE-2024-2997
- Esegui lo script con le opzioni da riga di comando:
python CVE-2024-2997.py -u http://example.com -v
- Oppure eseguilo in modalità interattiva e segui le istruzioni a schermo:
python CVE-2024-2997.py
Opzioni da riga di comando
Lo scanner supporta le seguenti opzioni da riga di comando:
| Opzione | Descrizione |
|---|
-u, --url | URL di base da scansionare |
-p, --proxy | URL del proxy (es. http://127.0.0.1:8080) |
-v, --verbose | Abilita la modalità verbosa |
-o, --output | File di output per gli URL vulnerabili (predefinito: sus.txt) |
-d, --details | File di output per i dettagli delle vulnerabilità (predefinito: vulnerable_details.txt) |
-s, --scan-delay | Ritardo di scansione in secondi (predefinito: 0.1) |
-t, --threads | Numero di thread da utilizzare (predefinito: 20) |
-r, --resume | Riprende la scansione dal file scope.txt esistente |
--timeout | Timeout delle richieste in secondi (predefinito: 5) |
--user-agent | Stringa User-Agent personalizzata |
--batch-size | Numero di URL da scansionare in ciascun batch (predefinito: 50) |
Come funziona
- Lo script stampa un banner in stile ASCII art e avvia il processo di scansione.
- Verifica se esiste un file di sessione precedente
scope.txt:
- Se esiste, l'utente può scegliere se continuare la scansione degli URL della sessione precedente o avviare una nuova sessione.
- Se non esiste, viene avviata una nuova sessione.
- L'utente inserisce l'URL di base (oppure lo fornisce tramite riga di comando).
- Lo script genera un'ampia gamma di URL basati sull'URL di base, tra cui:
- Percorsi di amministrazione
- Endpoint API
- Percorsi di autenticazione
- Percorsi di gestione dei contenuti
- Percorsi CMS comuni
- Percorsi vulnerabili noti
- La scansione inizia con una barra di avanzamento in tempo reale che mostra lo stato di completamento.
- Lo script analizza ogni URL per individuare la vulnerabilità di command injection, mostrando i risultati in un formato codificato a colori:
- Gli URL vulnerabili vengono visualizzati in rosso con il livello di confidenza.
- Gli URL sicuri vengono visualizzati in verde (quando la modalità verbosa è abilitata).
- Al termine della scansione, viene generato un report HTML completo con:
- Statistiche riassuntive della scansione
- Dettagli delle vulnerabilità con livelli di confidenza
- Indicatori visivi della gravità delle vulnerabilità
- Design responsive a tema scuro
Interpretazione dei risultati
Lo scanner classifica le vulnerabilità in base al livello di confidenza:
- Critico: vulnerabilità confermata con più payload
- Alto: trovati forti indicatori di vulnerabilità
- Medio: rilevata una potenziale vulnerabilità o un problema simile
- Basso: indicatori deboli che richiedono ulteriori indagini
File di output
- sus.txt: contiene un elenco degli URL vulnerabili
- vulnerable_details.txt: contiene informazioni dettagliate su ogni vulnerabilità
- report.html: report HTML interattivo con i risultati completi della scansione
- scope.txt: contiene tutti gli URL generati per la sessione corrente/precedente
- response_*.txt: contiene le risposte grezze degli endpoint vulnerabili (per le vulnerabilità confermate)
Unisciti alla nostra community Discord per aggiornamenti, supporto e discussioni:

Licenza
Questo progetto è concesso in licenza sotto la MIT License - consulta il file LICENSE per i dettagli.