Análisis de Incidente — Brecha en Insight Nexus (Crimson Fox & Silent Jackal)

📍 Organización: Insight Nexus (empresa de análisis de datos y estudios de mercado con sede en Singapur).
💼 Clientes: Compañías Fortune 500 (IT y finanzas).
🧠 Motivo del ataque: Robo de datos sensibles y espionaje corporativo.
🕵️ Actores involucrados:


🌐 Entorno y activos críticos

Pasted image 20251024192438.png

Componente Descripción
🌍 Public Internet Aplicaciones expuestas: ManageEngine y portal PHP.
⚙️ ManageEngine ADManager Plus (manage.insightnexus.com) Portal de administración AD accesible vía HTTPS (443).
📊 Client Reports Portal (portal.insightnexus.com) Portal PHP con carga de archivos habilitada.
🧱 Infraestructura interna DC01, FS01, DB01, y estaciones de trabajo DEV-001 a DEV-120.
💻 DEV-021 Máquina con RDP público (misconfigurada).
🧠 Seguridad SIEM con Wazuh, IDS básico, TheHive + Cortex para gestión de incidentes.
Tip

⚠️ Cobertura parcial de Wazuh, registros limitados y fatiga de alertas impidieron detección temprana.


💥 Resumen del ataque

1️⃣ Acceso inicial — Crimson Fox

Pasted image 20251024192521.png
🕓 2025-10-01 03:12:02

🧾 Sysmon Event ID 3:

Image: C:\ManageEngine\jre\bin\java.exe  
DestinationIp: 103.112.60.117  
DestinationPort: 443
Danger

🚨 Error crítico: No se cambiaron las credenciales por defecto.
Esto permitió acceso administrativo remoto sin autenticación adicional.


2️⃣ Movimiento lateral y escalamiento

Pasted image 20251024192627.png

🧾 Evento 4624 (LogonType: 10)

An account was successfully logged on.

 Subject:
    Security ID: SYSTEM
    Account Name: DEV-021$
    Account Domain: INSIGHT
    Time: 2025-10-04T02:03:12Z

 Logon Information:
    Logon Type: 10

 Network Information:
    Workstation Name: DEV-021
    Source Network Address: 103.112.60.117

 New Logon:
    SubjectUserName: insight\svc_deployer
    SourceNetworkAddress: 103.112.60.117
Warning

💣 RDP público sin restricciones → punto de pivotaje hacia la red interna.


3️⃣ Reconocimiento y exfiltración

Pasted image 20251024192709.png

Info

🧾 Eventos 5140 (A network share object was accessed) → evidencia de robo de información.


4️⃣ Persistencia mediante GPO malicioso

🕓 2025-10-04 02:10:45

🧾 Sysmon Event 1 & 11:

title: External Remote RDP Logon from Public IP
id: 259a9cdf-c4dd-4fa2-b243-2269e5ab18a2
related:
    - id: 78d5cab4-557e-454f-9fb9-a222bd0d5edc
      type: derived
status: test
description: Detects successful logon from public IP address via RDP. This can indicate a publicly-exposed RDP port.
references:
    - https://www.inversecos.com/2020/04/successful-4624-anonymous-logons-to.html
    - https://twitter.com/Purp1eW0lf/status/1616144561965002752
author: Micah Babinski (@micahbabinski), Zach Mathis (@yamatosecurity)
date: 2023-01-19
modified: 2024-03-11
tags:
    - attack.initial-access
    - attack.credential-access
    - attack.t1133
    - attack.t1078
    - attack.t1110
logsource:
    product: windows
    service: security
detection:
    selection:
        EventID: 4624
        LogonType: 10
    filter_main_local_ranges:
        IpAddress|cidr:
            - '::1/128'  # IPv6 loopback
            - '10.0.0.0/8'
            - '127.0.0.0/8'
            - '172.16.0.0/12'
            - '192.168.0.0/16'
            - '169.254.0.0/16'
            - 'fc00::/7'  # IPv6 private addresses
            - 'fe80::/10'  # IPv6 link-local addresses
    filter_main_empty:
        IpAddress: '-'
    condition: selection and not 1 of filter_main_*
falsepositives:
    - Legitimate or intentional inbound connections from public IP addresses on the RDP port.
level: medium

Danger

🧬 MSI malicioso distribuido por GPO = persistencia y espionaje masivo.


5️⃣ Actividad paralela — Silent Jackal

🐾 Vulnerabilidad: carga de archivos PHP no validada en portal.insightnexus.com.

Tip

🔎 Este archivo fue la primera pista visible que llevó a descubrir el ataque mayor de Crimson Fox.


🛠️ Acciones de respuesta inmediata

🔹 1. Contención de red

🔹 2. Cuentas y credenciales

🔹 3. Aislamiento de hosts

🔹 4. Análisis forense


🧠 Mapeo MITRE ATT&CK

Fase Técnica ID
🔍 Reconocimiento Escaneo de activos públicos T1595
🎯 Acceso inicial Credenciales por defecto (ManageEngine) T1078.004
🕳️ Explotación Vulnerabilidad en portal PHP T1190
⚙️ Persistencia MSI desplegado vía GPO / tareas programadas T1547 / T1069
🌐 C2 Tráfico HTTPS camuflado T1071.001
📤 Exfiltración Compresión + envío de datos (diagnostics_data.zip) T1560 / T1041

🧩 Ejercicios prácticos

🧩 Ejercicio 1 — Identificación de Compromiso de Credenciales

Info

Objetivo: Analizar los registros exportados de Wazuh (wazuh_export.zip) e identificar eventos relacionados con posible robo de credenciales.

  "data": {
        "win": {
          "system": {
            "eventID": "4688",
            "systemTime": "2025-10-09T08:06:11.102140Z",
            "providerName": "Microsoft-Windows-Security-Auditing",
            "eventRecordID": "41270465"
          },
          "eventdata": {
            "subjectUserName": "Administrator",
            "newProcessName": "C:\\Users\\Administrator\\Downloads\\mimikatz.exe",
            "parentProcessName": "C:\\Program Files\\Mozilla Firefox\\firefox.exe",
            "subjectDomainName": "INSIGHT",
            "subjectLogonId": "0x457a5240",
            "processId": "0x1718",
            "message": "A new process has been created. (simulated)"
          }
        }
      }
    }

🕵️‍♂️ Análisis del evento

C:\Users\Administrator\Downloads\mimikatz.exe

Proceso padre:

C:\Program Files\Mozilla Firefox\firefox.exe
Warning

El ejecutable mimikatz.exe es una herramienta de volcado de credenciales, frecuentemente utilizada por atacantes para extraer contraseñas en texto claro, hashes o tickets Kerberos.

🧩 Ejercicio 2 — Mecanismo de Persistencia (DB01)

Info

Objetivo: Identificar mecanismos de persistencia detectados en DB01 a partir de alertas Wazuh.

    "_index": "wazuh-alerts-4.x-2025.10.09",
    "_id": "609e3edb-7c01-4cf2-9b48-3e10d58afdd6",
    "_source": {
      "agent": {
        "ip": "172.16.30.17",
        "name": "DB01",
        "id": "010"
      },
      "manager": {
        "name": "ubuntu"
      },
      "location": "EventChannel",
      "decoder": {
        "name": "windows_eventchannel"
      },
      "timestamp": "2025-10-09T04:28:42.102140Z",
      "rule": {
        "firedtimes": 1,
        "mail": false,
        "level": 8,
        "description": "New Windows service installed",
        "groups": [
          "service",
          "persistence"
        ],
        "id": "90008"
      },
      "data": {
        "win": {
          "system": {
            "eventID": "7045",
            "systemTime": "2025-10-09T08:10:11.102140Z",
            "providerName": "Service Control Manager"
          },
          "eventdata": {
            "serviceName": "PSEXESVC",
            "imagePath": "C:\\Windows\\PSEXESVC.exe",
            "user": "SYSTEM",
            "message": "A service was installed to start from Windows root path"
          }
        }
      }
    }

🔎 Análisis del evento

Warning

Nuevo servicio en C:\Windows\ con nombre PsExec → persistencia y posible uso de herramientas administrativas legítimas para movimiento lateral.

✅ ¿Por qué es sospechoso?

🧩 Ejercicio 3 — Actividad de Exfiltración

Info

Objetivo: Identificar tráfico de exfiltración desde los logs (archivo diagnostics_data.zip).

   "timestamp": "2025-10-09T05:33:58.102140Z",
      "rule": {
        "firedtimes": 3,
        "mail": false,
        "level": 9,
        "description": "Large outbound HTTPS POST with filename diagnostics_data.zip",
        "groups": [
          "network",
          "exfiltration"
        ],
        "id": "90004"
      },
      "data": {
        "win": {
          "system": {
            "eventID": "3",
            "systemTime": "2025-10-09T08:08:41.102140Z",
            "providerName": "Microsoft-Windows-Sysmon/Operational"
          },
          "eventdata": {
            "image": "C:\\Users\\svc_deployer\\AppData\\Roaming\\updater.exe",
            "destinationIp": "93.184.216.34",
            "destinationPort": "443",
            "protocol": "tcp",
            "user": "insight\\svc_deployer",
            "details": "HTTP POST /upload diagnostics_data.zip"
          }
        }
      }
    }

🔍 Análisis del evento

Danger

🔴 Confirmada exfiltración: archivo diagnostics_data.zip enviado a IP externa 93.184.216.34.

✅ ¿Por qué es relevante?

🧩 Ejercicio 4 — Acceso a compartición de archivos

Info

Objetivo: Determinar qué usuario intentó acceder al recurso compartido \\fs01\projects a partir de logs Wazuh/Sysmon.

    },
      "timestamp": "2025-10-08T08:58:37.102140Z",
      "rule": {
        "firedtimes": 2,
        "mail": false,
        "level": 8,
        "description": "Possible suspicious access to Windows admin shares",
        "groups": [
          "smb",
          "lateral"
        ],
        "id": "92105"
      },
      "data": {
        "win": {
          "system": {
            "eventID": "3",
            "systemTime": "2025-10-09T08:09:51.102140Z",
            "providerName": "Microsoft-Windows-Sysmon/Operational"
          },
          "eventdata": {
            "image": "C:\\Windows\\System32\\svchost.exe",
            "sourceIp": "172.16.200.50",
            "destinationIp": "172.16.10.20",
            "destinationPort": "445",
            "user": "svc_admin",
            "details": "SMB connect to \\\\fs01\\projects"
          }
        }
      }
    }
  },
  {
    "_index"

🔎 Análisis del evento

Info

Respuesta: El usuario que intentó conectar al recurso compartido fue svc_admin.

✅ ¿Por qué podría ser sospechoso?


📚 Lecciones aprendidas

Warning

🔐 1. Cambiar credenciales por defecto sigue siendo una práctica básica pero ignorada.

Danger

🧩 2. Dos actores distintos simultáneamente → uno “ruidoso” (Silent Jackal) y uno sigiloso (Crimson Fox).

Info

🕵️ 3. Falta de correlación SIEM / TheHive retrasó la detección.

Tip

🧠 4. Post-incident: revisar persistencia (tareas, GPOs, web shells) incluso tras eliminar indicadores visibles.