
Scanner per prodotti Zyxel potenzialmente vulnerabili a causa di un account utente non documentato (CVE-2020-29583)
Dettagli della vulnerabilità: https://www.eyecontrol.nl/blog/undocumented-user-account-in-zyxel-products.html (Ma non sono sicuro se sia davvero possibile accedere con zyfwp tramite l'interfaccia web? Ogni segnalazione sarebbe apprezzata. Inoltre il link alla "lista completa dei dispositivi interessati" omette NXC2500 e NXC5500.)
Il fingerprinting della versione vulnerabile viene effettuato tramite determinate stringhe in index.html, ad es. v=200406233228 è un USG40 vulnerabile. Lo scanner individua in modo affidabile la versione di firmware vulnerabile su questi dispositivi:
Queste stringhe sono uniche per modello e non le conosco per il resto dei modelli (Zyxel ha eliminato la versione di firmware vulnerabile dai propri server.) Per tutti gli altri dispositivi, lo scanner controlla solo il modello del dispositivo se potenzialmente vulnerabile.
Lo scanner non prova la password per motivi legali, ma sentiti libero di farlo su qualsiasi dispositivo trovato nelle tue reti. (Username: zyfwp Password: PrOw!aN_fXp)
Se hai bisogno di esaminare il firmware, la decrittazione funziona ancora come nel 2010: https://www.redteam-pentesting.de/de/advisories/rt-sa-2011-003/-authentication-bypass-in-configuration-import-and-export-of-zyxel-zywall-usg-appliances ben descritta in https://twitter.com/cybercdh/status/1345654215654461440
Lo scanner è multithread e può analizzare file contenenti netmask CIDR, ma per reti più grandi potresti comunque voler usare nmap per trovare le porte TCP 443 aperte prima di eseguire la scansione delle vulnerabilità.
La porta predefinita per la scansione delle vulnerabilità è TCP 443, modificabile con --port.
Dispositivi trovati usando questo script:
Lo scanner può analizzare:
Example: python3 scan_CVE-2020-29583.py 192.168.1.1/24 # vuln scan for cve-2020-0609 on UDP 3391
Example2 python3 scan_CVE-2020-29583.py 192.168.1.1/24 --webcheck # check webpage for RD gateway
Example3: python3 scan_CVE-2020-29583.py 192.168.1.1
Example4: python3 scan_CVE-2020-29583.py fakewebsiteaddress.com
Example5: python3 scan_CVE-2020-29583.py as15169
Example6: python3 scan_CVE-2020-29583.py file:hostfile.txt
usage: scan_CVE-2020-29583.py [-h] [--port PORT]
[--verbose]
target
Nessuna installazione richiesta.
Debian/Kali richiede: apt-get install python3-netaddr
Per ottimizzare le prestazioni puoi modificare i parametri di threading nello script in "kind of config".