Los ataques APT apuntan al gobierno de India con GOGITTER, GITSHELLPAD y GOSHELL | Parte 1
Detection stack
- AIDR
- Alert
- ETL
- Query
Resumen
Zscaler ThreatLabz descubrió dos campañas: Gopher Strike y Sheet Attack, operadas por un grupo APT vinculado a Pakistán, que apuntan a organizaciones gubernamentales indias. La actividad introduce herramientas basadas en Golang, incluyendo GOGITTER, GITSHELLPAD y GOSHELL, para preparar cargas útiles, usar repositorios privados de GitHub para C2 y, finalmente, desplegar un beacon de Cobalt Strike. El acceso inicial se logra a través de PDFs de spearphishing que atraen a las víctimas a descargar archivos ISO maliciosos. Los operadores aplican múltiples métodos de evasión, incluyendo verificaciones del entorno, relleno de archivos y persistencia de tareas programadas.
Investigación
El análisis mostró que GOGITTER valida la presencia de un script windows_api.vbs, lo crea si está ausente y registra una tarea programada para ejecutarlo cada 50 minutos. GITSHELLPAD utiliza la API REST de GitHub para la recuperación de comandos y extracción de datos, mientras que GOSHELL carga condicionalmente un beacon de Cobalt Strike en etapas solo en ciertos nombres de host. Las herramientas integran URLs y cadenas de agente de usuario codificadas para dificultar el análisis automatizado y el sandboxing. Las campañas también utilizaron repositorios privados de GitHub para alojar cargas útiles de soporte como adobe_update.zip.
Mitigación
Bloquear la ejecución de binarios Golang no confiables/sin firmar y aplicar revisiones y listas de permitidos estrictas para la creación de tareas programadas. Monitorear el tráfico saliente a dominios maliciosos conocidos y a recursos de GitHub usados como C2, incluyendo el uso anómalo de la API de GitHub desde puntos finales no desarrolladores. Fortalecer la seguridad del correo electrónico escaneando adjuntos PDF para detectar ofuscación y bloqueando enlaces que redirigen a descargas de ISO. Las detecciones en el endpoint deben alertar sobre la creación de windows_api.vbs y patrones de ejecución de tareas periódicas consistentes con intervalos de 50 minutos.
Respuesta
Si se detectan IOC, aislar el endpoint, detener y eliminar la tarea programada, y eliminar artefactos maliciosos asociados. Realizar una revisión forense de la actividad de C2 basada en GitHub, preservar registros de ejecución de comandos y eliminar todo contenido exfiltrado o subido donde sea posible. Restablecer credenciales para cuentas afectadas, buscar movimientos laterales y actualizar detecciones con indicadores extraídos para identificar actividad relacionada en todo el entorno.
Flujo de Ataque
Detecciones
Comunicación de Dominio de Búsqueda de IP Posible Intentada (vía dns)
Ver
Proceso Sospechoso Utiliza una URL en la Línea de Comando (vía cmdline)
Ver
Uso Sospechoso de CURL (vía cmdline)
Ver
Posible Enumeración del Sistema (vía cmdline)
Ver
Posible Enumeración de Cuentas o Grupos (vía cmdline)
Ver
Archivos Extraídos Sospechosos de un Archivo (vía file_event)
Ver
Posible Descubrimiento de Configuración de Red del Sistema (vía cmdline)
Ver
IOC (HashSha1) para detectar: Ataques APT Dirigidos al Gobierno Indio Usando GOGITTER, GITSHELLPAD y GOSHELL | Parte 1
Ver
IOC (HashMd5) para detectar: Ataques APT Dirigidos al Gobierno Indio Usando GOGITTER, GITSHELLPAD y GOSHELL | Parte 1
Ver
IOC (HashSha256) para detectar: Ataques APT Dirigidos al Gobierno Indio Usando GOGITTER, GITSHELLPAD y GOSHELL | Parte 1
Ver
Detección de Backdoor GITSHELLPAD y Comandos de Limpieza [Creación de Procesos en Windows]
Ver
Detección de Descargador GOGITTER y Comunicación C2 [Conexión de Red de Windows]
Ver
Ejecución de Simulación
Pre-requisito: La Verificación Previa de Telemetría y Línea Base debe haber pasado.
Justificación: Esta sección detalla la ejecución precisa de la técnica del adversario (TTP) diseñada para activar la regla de detección. Los comandos y la narrativa DEBEN reflejar directamente los TTPs identificados y apuntar a generar la telemetría exacta esperada por la lógica de detección. Ejemplos abstractos o no relacionados conducirán a un diagnóstico erróneo.
-
Narrativa de Ataque y Comandos:
Un grupo APT despliega el backdoor GITSHELLPAD (edgehost.exe) en un host de Windows comprometido. Para mezclarse con el comportamiento esperado del sistema, el atacante lanza el backdoor a través del shell de comandos de Windows (cmd /c). Después de completar su carga útil (por ejemplo, descargar módulos adicionales), el backdoor realiza una “limpieza” terminando su propio proceso usandotaskkill /F /PID <PID>. Ambas acciones generan eventos de creación de procesos que contienen el nombre del binario y las subcadenas de línea de comando requeridas, cumpliendo con la regla Sigma. -
Script de Prueba de Regresión:
# ------------------------------------------------- # Simular ejecución de backdoor GITSHELLPAD y limpieza # ------------------------------------------------- # 1. Dejar caer un marcador edgehost.exe (cualquier ejecutable benigno) $src = "$env:SystemRootSystem32notepad.exe" $dst = "$env:TEMPedgehost.exe" Copy-Item -Path $src -Destination $dst -Force # 2. Lanzar edgehost.exe vía cmd /c (coincide con el patrón cmd_cmd) $proc = Start-Process -FilePath "cmd.exe" -ArgumentList "/c `"$dst`"" -PassThru # 3. Esperar unos segundos para asegurar que el proceso esté vivo Start-Sleep -Seconds 5 # 4. Limpieza: matar el proceso edgehost.exe usando taskkill (coincide con el patrón taskkill_cmd) $pid = $proc.Id cmd /c "taskkill /F /PID $pid" # 5. Eliminar el archivo dejado caer Remove-Item -Path $dst -Force -
Comandos de Limpieza:
# Asegurar que cualquier instancia residual de edgehost.exe esté terminada Get-Process -Name "edgehost" -ErrorAction SilentlyContinue | Stop-Process -Force # Eliminar el binario temporal si aún está presente $tempPath = "$env:TEMPedgehost.exe" if (Test-Path $tempPath) { Remove-Item $tempPath -Force }