
Exploit de prueba de concepto (POC) para CVE-2025-33053 (control externo de la ruta de ejecución de archivos en el archivo URL)
El directorio de trabajo en un archivo .url se puede configurar para que apunte a un servidor WebDAV externo. Cuando un cliente Windows lo abre, las dependencias del ejecutable definido en el campo URL se buscan en el recurso compartido WebDAV externo. Si a un ejecutable o DLL arbitrario se le asigna el mismo nombre que una de estas dependencias, el cliente Windows lo carga y ejecuta. En el caso de esta PoC, la URL se establece en el ejecutable de diagnóstico de Internet Explorer "iediagcmd.exe" local del cliente Windows. iediagcmd.exe a su vez llama a varios ejecutables diferentes, uno de los cuales es "route.exe". Al darle a un binario arbitrario, como un cargador de shellcode, el mismo nombre y compartirlo en el servidor WebDAV al que apunta la variable "WorkingDirectory" del archivo .url, el cliente Windows lo cargará y ejecutará cuando se abra el archivo URL.
Ejecute sudo bash webdav_setup.sh para configurar y ejecutar un servidor Apache2 WebDAV desde un host Linux (o configúrelo usted mismo).
Coloque un ejecutable, como un cargador de shellcode, llamado "route.exe" en el recurso compartido WebDAV.
Modifique el archivo URL para que apunte al nombre de dominio o dirección IP del servidor WebDAV.
Sirva el archivo URL a un cliente Windows mediante algún tipo de pretexto para que un usuario lo ejecute.
Si se utiliza un payload que desencadena una devolución de llamada C2, route.exe podría no regresar nunca. iediagcmd.exe abre una ventana que espera a que el comando termine, por lo que ejecute el comando para cerrar la ventana del proceso iediagcmd original en el cliente.
taskkill /f /im iediagcmd.exe