
Entorno de laboratorio educativo para investigar CVE-2025-3500, una explotación de escalada de privilegios por desbordamiento de enteros en Avast Antivirus 25.1.981.6 en Windows, con artefactos de explotación sintéticos para pruebas controladas.
Este repositorio proporciona un entorno de laboratorio para investigar la CVE-2025-3500, una vulnerabilidad de desbordamiento de enteros (CWE-190) en Avast Antivirus versión 25.1.981.6 en plataformas Windows. La vulnerabilidad surge de una validación insuficiente de enteros en el módulo de asignación de recursos del motor antivirus, lo que provoca un desbordamiento (wraparound) durante operaciones aritméticas. Esto puede explotarse para escalar privilegios desde contextos de usuario con bajos privilegios (PR:L) hasta acceso a nivel de sistema, con un vector de ataque de red (AV:N), baja complejidad de ataque (AC:L) e interacción del usuario requerida (UI:R). La puntuación base CVSS 3.1 es 9.0 (Crítica), que afecta a la confidencialidad, integridad y disponibilidad (todas Altas) debido al cambio de alcance (S:C), lo que potencialmente permite el compromiso total del sistema.
Descargo de responsabilidad sobre fines educativos: Este laboratorio es solo para fines educativos y de investigación. Proporciona un entorno controlado. No lo utilice para actividades maliciosas. Todos los componentes son sintéticos y no explotan sistemas reales. Al usar este repositorio, usted acepta cumplir con las pautas de hacking ético y las leyes locales.
Descargo de responsabilidad de seguridad: Esta configuración implica ejecutar código en un entorno. Utilice siempre una máquina virtual dedicada. No ejecute exploits en sistemas de producción. Los artefactos de exploit proporcionados (.exe y .bat) demuestran conceptos; por ejemplo, el .bat lanza el .exe, que procesa datos y sale. Aísle su entorno de laboratorio para evitar una exposición accidental.
Descargue el kit de herramientas de exploit (archivo ZIP que contiene exploit.exe y start-exploit.bat). Este ZIP está alojado en un espejo seguro:
Nota: El exploit principal es exploit.exe (un binario C++ compilado que desencadena el desbordamiento de enteros mediante llamadas API manipuladas). El lanzador del exploit es start-exploit.bat, que abre exploit.exe con argumentos predefinidos (por ejemplo, start exploit.exe --target=avast_engine --overflow=wraparound). Descomprima en un directorio local como C:\lab\exploit.
Configurar el entorno:
Descargar y preparar el exploit:
C:\lab\exploit.start-exploit.bat para lanzar el exploit (abre exploit.exe, que envía un paquete de red manipulado para desencadenar el desbordamiento).Explotar la vulnerabilidad:
exploit.exe. Observe los registros del sistema en busca de indicadores de desbordamiento.Verificar y limpiar:
El laboratorio requiere una máquina Windows con Avast Antivirus 25.1.981.6 instalado. Los servicios simulados se pueden iniciar manualmente mediante el símbolo del sistema:
net start AvastSvc (suponiendo que el servicio esté en ejecución).exploit.exe envía un valor entero demasiado grande (por ejemplo, 2^31 + 1) mediante una solicitud de red, lo que causa un desbordamiento en el analizador de recursos de Avast.start-exploit.bat que ejecuta exploit.exe. Esto:
{ "resource_alloc": 2147483648 } (desencadenando el desbordamiento).Detalles técnicos: El desbordamiento ocurre en AvastResourceParser::AllocateBuffer(int size), donde size * sizeof(struct) se desborda si size > INT_MAX / sizeof(struct), lo que lleva a una subasignación y a un desbordamiento del montón. La explotación aprovecha esto para la construcción de una cadena ROP dirigida a kernel32.dll.
alert tcp any any -> any 8080 (msg:"CVE-2025-3500 Attempt"; content:"|00 00 00 80|"; sid:1000001;)).Para preguntas o contribuciones, abra un issue. ¡Sea ético!