- Foi descoberta uma vulnerabilidade de execução remota de código (RCE) com um clique no software DriverHub da ASUS
- Devido a uma validação fraca de origin no ambiente local, um site malicioso pode usar RPC para executar ações com privilégios de administrador
- Ao abusar do endpoint UpdateApp, é possível executar código malicioso combinando um executável assinado pela ASUS com um arquivo ini manipulado
- A vulnerabilidade foi divulgada como CVE-2025-3462, CVE-2025-3463, e a ASUS distribuiu rapidamente um patch
- Foi confirmado que não havia casos reais de exploração no momento do reporte, e a ASUS recompensou o pesquisador com inclusão no hall da fama em vez de bug bounty
Introduction
- Tudo começou com uma história sobre a compra de novas peças de PC
- Ao comprar uma placa-mãe ASUS, a opção de instalação automática de software via BIOS vinha ativada por padrão
- Por não desativar a opção a tempo, após fazer login no Windows apareceu um pedido de permissão para instalar o DriverHub
- Como precisava do driver de WiFi, ele instalou o DriverHub por curiosidade
DriverHub
- O DriverHub é um processo em segundo plano que roda sem GUI
- Ele se comunica com driverhub.asus.com para informar a lista de drivers que precisam ser instalados ou atualizados
- Localmente, ele expõe uma API HTTP (porta 53000) via RPC
- O site pode enviar requisições de API para esse serviço local e gerenciar drivers diretamente
- Isso levou à percepção de que um invasor poderia enviar requisições arbitrárias se a segurança fosse insuficiente
Finding the Vulnerability
- Foi testado se um site poderia enviar requisições RPC arbitrárias ao backend do DriverHub
- O sistema foi projetado para responder apenas quando o Origin fosse “driverhub.asus.com”
- Foi verificado se a checagem de Origin era feita com um match curinga no estilo
origin.includes("driverhub.asus.com")
- Ao alterar o Origin para “driverhub.asus.com.mrbruh.com”, foi descoberto que a requisição era aceita
- Isso confirmou um risco grave, no qual um invasor poderia fazer chamadas RPC a partir de um site malicioso
The Extent of the Damage
- Com reversing e análise de JavaScript, foi identificado o conjunto de endpoints de API disponíveis em segundo plano
- Principais endpoints:
- Initialize: retorna estado de instalação e informações
- DeviceInfo: retorna software ASUS instalado, drivers, hardware e endereço MAC
- Reboot: executa reboot imediato
- Log: retorna conjunto de arquivos de log
- InstallApp: instala um app ou driver do ID especificado
- UpdateApp: baixa e executa um executável da URL especificada (execução automática se tiver assinatura da ASUS)
- Em especial, foi destacado que o UpdateApp poderia ser explorado
Achieving RCE
- O endpoint UpdateApp foi analisado em detalhes
- O parâmetro “Url” tinha uma condição exigindo a presença de
.asus.com, mas havia possibilidade de bypass, e o nome do arquivo seguia o final da URL
- Apenas executáveis assinados pela ASUS eram executados automaticamente, mas arquivos não assinados também eram baixados e não eram apagados depois
- Foi considerada a possibilidade de um ataque de timing que trocasse o arquivo logo antes da execução após passar na verificação de assinatura, mas isso não era prático
- Ao analisar a estrutura do pacote de driver WiFi da ASUS, foi identificado que a propriedade SilentInstallRun em AsusSetup.ini podia ser usada para executar comandos arbitrários
- Cadeia final de ataque:
- O invasor induz o acesso a um site no subdomínio driverhub.asus.com. *
- O site solicita um
calc.exe malicioso via UpdateApp (apenas download, sem execução)
- Solicita um
AsusSetup.ini customizado (SilentInstallRun=calc.exe, também sem execução)
- Solicita o
AsusSetup.exe assinado (executado automaticamente com privilégios de administrador; com a flag “-s”, ele lê o ini e executa calc.exe)
- Como resultado, ocorre execução remota de código arbitrário com privilégios de administrador e um clique (RCE)
Reporting Timeline (DD/MM/YYYY)
- 07/04/2025: vulnerabilidade descoberta inicialmente
- 08/04/2025: PoC de RCE concluída e vulnerabilidade reportada
- 09/04/2025: resposta automática da ASUS recebida
- 17/04/2025: patch distribuído e build corrigida recebida
- 18/04/2025: confirmação de que o patch estava ao vivo
- 09/05/2025: divulgação de CVE-2025-3462 (8,4), CVE-2025-3463 (9,4)
Assessing the Damage
- Logo após reportar a vulnerabilidade, foi escrito um script para rastrear certificate transparency
- Foi monitorado o histórico de emissão de certificados para subdomínios
driverhub.asus.com.*
- Após um mês de monitoramento, não foi encontrado nenhum site filtrado além dos próprios testes
- Foi confirmado que não havia sinais de exploração prévia
Bug Bounty
- Foi perguntado à ASUS se haveria pagamento de bug bounty, mas o pedido foi recusado
- Em vez disso, a recompensa veio na forma de inclusão no hall da fama
- Também foi acrescentada uma explicação de que, apesar de a ASUS ser uma grande empresa, sua política de bounty é insuficiente
Fun Notes
- Ao enviar o formulário de Security Advisory da ASUS, a PoC foi bloqueada pelo Amazon CloudFront como requisição maliciosa
- Ao clicar em “Install All” no DriverHub, outros softwares (Norton360, WinRAR etc.) também eram instalados à força
- A descrição do CVE é vaga e incorreta nos fatos, podendo levar ao mal-entendido de que 'desktops/laptops não são afetados' (na prática, qualquer dispositivo com DriverHub instalado é afetado)
- O WiFi ainda não funciona, exigindo a compra de um adaptador USB WiFi externo
- Contato: Signal: paul19.84, e-mail contact [at] mrbruh.com
1 comentários
Comentários no Hacker News
driverhub.asus.com.*) atendia à condição, mas isso só vale se ninguém tiver registrado separadamente um subdomínio dedriverhub. Com wildcard, isso pode não aparecer nos logs de transparência de certificados e ainda ser explorável.*.example.comcobretest.example.com, mas nãotest.test.example.com. Se alguém usasse um wildcard*.asus.com.example.com, entãodriverhub.asus.com.example.comseria válido..example.com, isso realmente poderia permitir exploração fora do verdadeirodriverhub.asus.com. Por isso, monitorar apenas logs de CT não é suficiente para detectar perfeitamente esse tipo de vulnerabilidade de takeover de subdomínio.MyASUSpassaram a vir por padrão. Felizmente há opção para desativar, e, quando atualizado a partir de um BIOS Intel NUC, parece vir desativado por padrão.