- Se descubrió una vulnerabilidad de ejecución remota de código (RCE) con un clic en el software DriverHub de ASUS
- Debido a una validación débil del origin en local, un sitio web malicioso puede lograr ejecución con privilegios de administrador mediante RPC
- Al abusar del endpoint UpdateApp, es posible ejecutar código malicioso combinando un ejecutable firmado por ASUS con un archivo ini manipulado
- La vulnerabilidad fue divulgada como CVE-2025-3462 y CVE-2025-3463, y ASUS distribuyó un parche rápidamente
- Al momento del reporte de la vulnerabilidad, no se confirmó explotación real, y ASUS recompensó con una mención en el salón de la fama en lugar de bug bounty
Introduction
- Todo comenzó con una historia sobre la compra de nuevos componentes para PC
- Al comprar una motherboard ASUS, la opción de instalación automática de software desde el BIOS viene activada por defecto
- Por no desactivar la opción por accidente, después de iniciar sesión en Windows apareció una solicitud de permiso para instalar DriverHub
- Como necesitaba el driver de WiFi, por curiosidad instaló DriverHub
DriverHub
- DriverHub es un proceso en segundo plano que funciona sin GUI
- Se comunica con driverhub.asus.com para indicar qué drivers necesitan instalación o actualización
- En local ofrece una API HTTP (puerto 53000) vía RPC
- El sitio web puede enviar solicitudes API a este servicio local para gestionar directamente los drivers
- Se identificó que si la seguridad era deficiente, un atacante podría enviar solicitudes arbitrarias
Finding the Vulnerability
- Se probó si un sitio web podía enviar solicitudes RPC arbitrarias al backend de DriverHub
- Estaba diseñado para responder solo cuando el Origin fuera “driverhub.asus.com”
- Se confirmó que la verificación de Origin se hacía con un match tipo wildcard como
origin.includes("driverhub.asus.com")
- Al cambiar el Origin a “driverhub.asus.com.mrbruh.com”, se descubrió que la solicitud era permitida
- Con esto se confirmó un riesgo grave: un atacante podía hacer llamadas RPC desde un sitio malicioso
The Extent of the Damage
- Mediante reversing y análisis de JavaScript se identificó la lista de endpoints de API disponibles en segundo plano
- Endpoints principales:
- Initialize: devuelve el estado e información de instalación
- DeviceInfo: devuelve software ASUS instalado, drivers, hardware y dirección MAC
- Reboot: realiza un reinicio inmediato
- Log: devuelve un conjunto de archivos de registro
- InstallApp: instala una app o driver del ID especificado
- UpdateApp: descarga y ejecuta un archivo ejecutable desde la URL especificada (si está firmado por ASUS, se ejecuta automáticamente)
- En particular, se observó que UpdateApp podía ser explotado
Achieving RCE
- Se analizó en detalle el endpoint UpdateApp
- El parámetro “Url” exige que incluya
.asus.com, aunque existían posibilidades de bypass, y el nombre del archivo depende del final de la URL
- Solo los ejecutables firmados por ASUS se ejecutan automáticamente, pero incluso los archivos no firmados se descargan y no se eliminan
- Se evaluó un ataque de timing para reemplazar el archivo justo antes de su ejecución tras pasar la verificación de firma, pero no era práctico
- Al analizar la estructura del paquete del driver WiFi de ASUS, se identificó que la propiedad SilentInstallRun de AsusSetup.ini podía usarse para ejecutar comandos arbitrarios
- Cadena de ataque final:
- El atacante induce el acceso a un sitio web en un subdominio driverhub.asus.com.*
- El sitio solicita un
calc.exe malicioso mediante UpdateApp (solo se descarga, no se ejecuta)
- Solicita un AsusSetup.ini personalizado (
SilentInstallRun=calc.exe, también sin ejecución)
- Solicita un AsusSetup.exe firmado, que se ejecuta automáticamente con privilegios de administrador y, con la bandera
-s, lee el ini y ejecuta calc.exe
- Como resultado, se logra una ejecución remota de código arbitrario (RCE) con privilegios de administrador y con un clic
Reporting Timeline (DD/MM/YYYY)
- 07/04/2025: se descubrió inicialmente la vulnerabilidad
- 08/04/2025: se demostró el RCE y se reportó la vulnerabilidad
- 09/04/2025: se recibió la respuesta automática de ASUS
- 17/04/2025: se distribuyó el parche y se recibió la build corregida
- 18/04/2025: se confirmó que el parche estaba en vivo
- 09/05/2025: se publicaron CVE-2025-3462 (8.4 puntos) y CVE-2025-3463 (9.4 puntos)
Assessing the Damage
- Justo después de reportar la vulnerabilidad, se escribió un script para rastrear certificate transparency
- Se monitoreó el historial de emisión de certificados para subdominios
driverhub.asus.com.*
- Tras un mes de monitoreo, aparte de las pruebas propias no apareció ningún sitio que coincidiera con el filtro
- Se confirmó que no había indicios de explotación previa
Bug Bounty
- Se consultó a ASUS si habría pago de bug bounty, pero fue rechazado
- En su lugar, la recompensa fue una mención en el salón de la fama (hall of fame)
- Se añadió una explicación sobre la falta de una política de bounty, pese a que ASUS es una gran empresa
Fun Notes
- Al enviar el formulario de Security Advisory de ASUS, la PoC fue bloqueada por Amazon CloudFront como si fuera una solicitud maliciosa
- Al hacer clic en “Install All” en DriverHub, se fuerza la instalación de otro software (como Norton360, WinRAR, etc.)
- La descripción del CVE es ambigua y no refleja correctamente los hechos, lo que puede llevar a interpretar erróneamente que “desktop/laptop no están afectados” (en realidad, afecta a todos los dispositivos con DriverHub instalado)
- El WiFi sigue sin funcionar, así que fue necesario comprar un adaptador WiFi USB externo
- Para consultas: Signal: paul19.84, correo contact [at] mrbruh.com
1 comentarios
Opinión de Hacker News
driverhub.asus.com.*) cumplía las condiciones, pero eso solo sería cierto si nadie hubiera registrado por separado un subdominio dedriverhub. Si se aplicara un wildcard, podría no aparecer en los logs de transparencia de certificados y sí permitir explotación.*.example.comsirve paratest.example.com, pero no paratest.test.example.com. Si alguien hubiera usado un wildcard*.asus.com.example.com, entoncesdriverhub.asus.com.example.comsí podría ser válido..example.com, sí habría podido explotar esto fuera del verdaderodriverhub.asus.com. Por eso, monitorear únicamente los logs de CT no basta para detectar perfectamente este tipo de vulnerabilidades de toma de control de subdominios.MyASUS. Por suerte existe una opción para desactivarlo, y parece que si actualizas desde un BIOS de Intel NUC viene desactivado por defecto.