Los atacantes explotan software de gestión de cámaras para acceso inicial
Detection stack
- AIDR
- Alert
- ETL
- Query
Resumen
Los atacantes están comprometiendo el software de gestión de cámaras para obtener acceso inicial a los entornos empresariales. Después de establecer el acceso, despliegan un shell inverso y utilizan la carga lateral de DLL a través de binarios legítimos de Windows para mantener la persistencia y establecer un balizado de mando y control. Este enfoque permite que el código malicioso se ejecute junto a procesos del sistema de confianza y ayuda a los atacantes a evadir la detección.
Investigación
Los analistas de Huntress identificaron una campaña en la que CMS.exe sirvió como el punto de entrada inicial. La investigación descubrió el despliegue de rs.win32.exe en directorios escribibles por el usuario, seguido por el abuso de WpcMon.exe para cargar lateralmente DLLs zlib modificadas. El análisis de red también confirmó actividad de balizado comunicándose con una dirección IP externa específica.
Mitigación
Las organizaciones deben hacer un inventario de las plataformas de gestión de cámaras, restringir el acceso a ellas y tratarlas como parte de la superficie de ataque crítica. Implementar el control de aplicaciones para evitar que se lancen ejecutables y DLLs desde ubicaciones escribibles por el usuario como AppData se recomienda encarecidamente. Los defensores también deben monitorear las cadenas de procesos inusuales que involucren binarios legítimos de Windows.
Respuesta
Cuando se detecta esta actividad, los equipos de seguridad deben aislar los puntos finales afectados para evitar un movimiento lateral adicional o la comunicación C2. Revisar los árboles de procesos para instancias de CMS.exe or rs.win32.exe ejecutándose WpcMon.exe desde directorios no estándar. Realizar una búsqueda en todo el entorno para los DLLs maliciosos identificados y las direcciones IP de C2 asociadas.
Flujo de Ataque
Detecciones
Puntos de Persistencia Posible [ASEPs – Software/Colmena NTUSER] (vía registro_evento)
Carga Lateral Posible de la Biblioteca Iphlpapi (vía carga_de_imagen)
IOCs (HashSha256) para detectar: ¿Quién vigila a los vigilantes?
IOCs (FuenteIP) para detectar: ¿Quién vigila a los vigilantes?
IOCs (DestinoIP) para detectar: ¿Quién vigila a los vigilantes?
Balizado de Servidor de Mando y Control (C2) Externo [Conexión de Red de Windows]
Acceso Inicial y Carga Lateral de DLL del Software de Gestión de Cámaras Comprometido [Creación de Proceso de Windows]
Ejecución de Simulación
-
Narrativa del Ataque y Comandos: El adversario ha logrado con éxito el acceso inicial a través de un adjunto de phishing. Para establecer persistencia y mando y control, tienen la intención de usar una técnica de «Vivir de la Tierra» (LotL). Utilizarán
rundll32.exepara ejecutar una solicitud de red al conocido servidor C2144.172.116.37. Esto se hace para mezclarse con los procesos legítimos del sistema Windows, lo que dificulta que las detecciones basadas en nombres de procesos básicos identifiquen la actividad maliciosa. El objetivo es activar la regla del firewall generando una conexión a la IP en la lista negra. -
Script de Prueba de Regresión:
# Script de simulación para activar la regla de detección de IP de C2 # Usamos rundll32 para iniciar una conexión a la IP objetivo # Nota: Esto puede producir un error en la consola ya que la IP no es un punto de entrada DLL válido, # pero el intento de conexión de red será registrado por el sistema operativo/Firewall. $C2_IP = "144.172.116.37" Write-Host "Simulando conexión C2 a $C2_IP vía rundll32.exe..." Start-Process "rundll32.exe" -ArgumentList "javascript:alert('C2_SIM');$C2_IP" -WindowStyle Hidden # Método alternativo usando PowerShell para asegurar el intento de conexión Write-Host "Intentando conexión TCP a $C2_IP en el puerto 443..." $tcpClient = New-Object System.Net.Sockets.TcpClient try { $tcpClient.Connect($C2_IP, 443) } catch { Write-Host "Conexión fallida como se esperaba (IP probablemente inalcanzable), pero se debería generar telemetría." } finally { $tcpClient.Close() } -
Comandos de Limpieza:
# No se crean artefactos persistentes con esta simulación específica Write-Host "Limpieza de simulación completa. No se modificaron archivos ni claves de registro."