Explotar vulnerabilidades e implementación de prevención de vulnerabilidades
Construcción de una aplicación de detección de la vulnerabilidad CVE-2017-8464
CONTENIDO:
PARTE 1: DESCRIPCIÓN GENERAL DE CVE-2017-8464
CONCEPTO DE ARCHIVO LNK CREACIÓN DE UN SISTEMA VULNERABLE A CVE-2017-8464 HERRAMIENTAS DE ATAQUE PARA LA VULNERABILIDAD CVE-2017-8464PARTE 2: USO DE LA HERRAMIENTA METASPLOIT PARA EXPLOTAR CVE-2017-8464
2.1. MODELO DE EXPLOTACIÓN DE CVE-2017-8464
2.2. EJECUCIÓN DE LA EXPLOTACIÓN DE CVE-2017-8464
PARTE 3: CONSTRUCCIÓN DE UNA HERRAMIENTA DE DETECCIÓN DE CVE-2017-8464 BASADA EN EL LENGUAJE PYTHON
3.1. ANÁLISIS DE LA FIRMA DE CVE-2017-8464 BASADA EN PAQUETES DE RED CAPTURADOS
3.2. FUNCIÓN DE PROCESAMIENTO PARA DETECTAR LA EXPLOTACIÓN DE CVE-2017-8464 BASADA EN EL ANÁLISIS DE LA FIRMA DE PAQUETES DE RED
CONCLUSIÓN
**
PARTE 1: DESCRIPCIÓN GENERAL DE CVE-2017-8464
LNK es un archivo de sistema: acceso directo de Windows, en formato binario desarrollado por Microsoft.

Figura 1: Icono de acceso directo en Windows
Un archivo LNK es un atajo o "enlace" utilizado por Windows como referencia a un archivo, carpeta o aplicación de origen, similar a un alias en la plataforma Macintosh. Contiene el tipo de destino del atajo, la ubicación y el nombre del archivo, así como los programas que abren los archivos de destino y un atajo de teclado opcional. Los archivos se pueden crear en Windows haciendo clic derecho en un archivo, carpeta o programa ejecutable y luego seleccionando "Crear acceso directo".
Aprovechando esta vulnerabilidad existente en Microsoft Windows, un atacante puede ejecutar código de forma remota si el icono de un acceso directo (creado de manera especial) se procesa incorrectamente.

Figura 2: Creación manual de un acceso directo que ejecuta la descarga y ejecución de código malicioso a través del archivo .LNK
El componente vulnerable está vinculado con la pila de red. Una vulnerabilidad de este tipo a menudo se denomina "explotable remotamente" y puede considerarse un ataque explotable a nivel de protocolo o a través de múltiples saltos de red (por ejemplo, a través de uno o más enrutadores).
Los sistemas afectados por la vulnerabilidad CVE-2017-8464 son Windows Shell en Microsoft Windows Server 2008 SP2 y R2 SP1, Windows 7 SP1, Windows 8, Windows 8.1, Windows Server 2012 Gold y R2, Windows RT 8.1, Windows 10 Gold, 1511, 1607, 1703 y Windows Server 2016, que permiten a usuarios locales o atacantes remotos ejecutar código arbitrario a través de un archivo .LNK creado manualmente que no se procesa correctamente al mostrar el icono en el Explorador de Windows o cualquier otra aplicación que analice el icono del acceso directo. También conocida como "Vulnerabilidad de ejecución remota de código LNK".
La actualización de seguridad parchea la vulnerabilidad corrigiendo la validación correcta de la referencia del icono del acceso directo. Microsoft Windows publicó una actualización para esta vulnerabilidad en junio de 2017. Esta vulnerabilidad no afecta a las versiones de Windows XP y anteriores.
Metasploit
Metasploit Framework es un entorno utilizado para probar, atacar y explotar vulnerabilidades de servicios mediante una interfaz de línea de comandos. Esta herramienta está disponible en Kali Linux versión VMware.

Figura 3: Herramienta Metasploit
Armitage
Herramienta con interfaz gráfica basada en el proyecto Metasploit.

Figura 4: Herramienta Armitage.
PARTE 2: USO DE LA HERRAMIENTA METASPLOIT PARA EXPLOTAR CVE-2017-8464
2.1. MODELO DE EXPLOTACIÓN DE CVE-2017-8464
Máquina víctima – Windows 7 Pro

Figura 5: Versión del sistema operativo de la víctima

Figura 6: Dirección IP de la máquina víctima
Máquina atacante – Kali Linux – Usando la herramienta Metasploit.

Figura 7: Dirección IP de la máquina atacante
La red activa es VMnet8 Subnet 192.168.169.0
2.2. EJECUCIÓN DE LA EXPLOTACIÓN DE CVE-2017-8464

Figura 8: Creación de payloads y escucha de conexión TCP hacia la máquina atacante

Figura 9: Creación de archivo .lnk que ejecuta automáticamente el código malicioso

Figura 10: Información de configuración del Payloads

Figura 11: Inicialización del archivo .lnk junto con el código malicioso

Figura 12: Copia de todo el código malicioso a un USB

Figura 13: La víctima conecta un USB que contiene el archivo .lnk con el error y el código malicioso
