De Amenaza Emergente a Líder en Ransomware como Servicio: La Evolución del Ransomware INC
Detection stack
- AIDR
- Alert
- ETL
- Query
Resumen
El ransomware INC se ha convertido en una operación importante de ransomware como servicio, reclamando más de 800 víctimas desde 2023. El grupo utiliza cifradores basados en Rust para sistemas Windows y Linux/ESXi, lo que incrementa la dificultad del análisis de malware. Sus operadores dependen de tácticas de doble extorsión y se enfocan en sectores de alto valor como servicios de salud y legales.
Investigación
La Unidad de Investigación de Amenazas de Acronis analizó la cadena de intrusión de INC y observó un cambio hacia la explotación de dispositivos de borde sin parches y el ataque a servidores de respaldo de Veeam. El análisis técnico mostró que la carga útil de Windows está protegida con VMProtect 3.X, mientras que la versión de Linux apunta a entornos VMware mediante comandos como vim-cmd. La investigación también encontró similitudes de código con familias de ransomware relacionadas, incluidas Lynx y Sinobi.
Mitigación
Las organizaciones deben adoptar la estrategia de copias de seguridad 3-2-1 y asegurar que las copias de seguridad incluyan copias inmutables o fuera de línea para apoyar la recuperación. Es esencial implementar EDR o XDR con protecciones antimanipulación y hacer cumplir la autenticación multifactor. Priorizar el parcheo de aplicaciones expuestas a internet y segmentar redes críticas también puede reducir el impacto de una intrusión.
Respuesta
Si se detecta actividad de ransomware INC, los respondedores deben aislar los sistemas afectados inmediatamente para detener el movimiento lateral y detener la encriptación. Se debe verificar la integridad de las copias de seguridad antes de comenzar la restauración, y los procedimientos de respuesta a incidentes deben centrarse en identificar el vector de acceso inicial. Los equipos también deben monitorear intentos de exfiltración de datos que involucren herramientas como rclone.
"graph TB %% Class Definitions Section classDef initial_access fill:#99ccff classDef discovery fill:#ccffcc classDef credential_access fill:#ffff99 classDef lateral_movement fill:#ffcc99 classDef defense_impairment fill:#ff9999 classDef command_control fill:#cc99ff classDef collection fill:#99ffff classDef exfiltration fill:#ff99cc classDef impact fill:#ff6666 %% Initial Access Nodes node_phishing["<b>Acción</b> – <b>T1566 Phishing</b><br/>Descripción: Spearphishing utilizado para la entrada inicial.<br/><b>Objetivo</b>: Usuarios vía correo electrónico."] class node_phishing initial_access node_valid_accounts["<b>Acción</b> – <b>T1078 Cuentas Válidas</b><br/>Descripción: Uso de cuentas obtenidas de corredores de acceso inicial.<br/><b>Objetivo</b>: Credenciales legítimas."] class node_valid_accounts initial_access node_exploit_app["<b>Acción</b> – <b>T1190 Explotar Aplicación de Cara Pública</b><br/>Descripción: Explotar vulnerabilidades en Citrix y Fortinet.<br/><b>Objetivo</b>: Servicios accesibles públicamente."] class node_exploit_app initial_access %% Discovery Nodes node_discovery["<b>Acción</b> – <b>T1087/T1046 Descubrimiento</b><br/>Descripción: Descubrimiento de red y sistema.<br/><b>Herramientas</b>: ping, net, Advanced IP Scanner, netscan."] class node_discovery discovery %% Credential Access Nodes node_credential_dump["<b>Acción</b> – <b>T1003 Vaciado de Credenciales del SO</b><br/>Descripción: Apuntar a implementaciones de respaldo Veeam.<br/><b>Herramienta</b>: Script de PowerShell modificada para volcado de credenciales de Veeam.<br/><b>Método</b>: Desencriptación DPAPI con sal."] class node_credential_dump credential_access %% Lateral Movement Nodes node_lateral_movement["<b>Acción</b> – <b>T1021/T1570 Movimiento Lateral</b><br/>Descripción: Moviéndose a través de la red.<br/><b>Herramientas</b>: RDP, PsExec."] class node_lateral_movement lateral_movement %% Defense Impairment Nodes node_defense_impairment["<b>Acción</b> – <b>T1562 Impair Las Defensas</b><br/>Descripción: Deshabilitar o modificar herramientas de seguridad.<br/><b>Herramienta</b>: PsKill o terminadores de proceso personalizados.<br/><b>Objetivo</b>: EDR y procesos de seguridad."] class node_defense_impairment defense_impairment %% Command and Control Nodes node_c2["<b>Acción</b> – <b>T1219/T1071 Comando y Control</b><br/>Descripción: Mantener la comunicación.<br/><b>Herramientas</b>: Cobalt Strike, AnyDesk, TeamViewer.<br/><b>Nota</b>: Se mezcla con el tráfico legítimo de TI."] class node_c2 command_control %% Collection and Exfiltration Nodes node_collection["<b>Acción</b> – <b>T1560 Archivar Datos Recogidos</b><br/>Descripción: Preparación y compresión de datos.<br/><b>Herramienta</b>: 7-Zip.<br/><b>Método</b>: Archivos protegidos por contraseña."] class node_collection collection node_exfiltration["<b>Acción</b> – <b>T1567 Exfiltración a Través de Servicio Web</b><br/>Descripción: Carga de datos robados a almacenamiento en la nube.<br/><b>Herramienta</b>: rclone."] class node_exfiltration exfiltration %% Impact Nodes node_impact["<b>Acción</b> – <b>T1486 Datos Encriptados para Impacto</b><br/>Descripción: Encriptación de archivos con la extensión .INC.<br/><b>Malware</b>: Cifradores basados en Rust para Windows y Linux/ESXi.<br/><b>Encriptación</b>: AES/Curve25519."] class node_impact impact %% Connection Flow node_phishing –>|leads_to| node_discovery node_valid_accounts –>|leads_to| node_discovery node_exploit_app –>|leads_to| node_discovery node_discovery –>|triggers| node_credential_dump node_credential_dump –>|enables| node_lateral_movement node_lateral_movement –>|leads_to| node_defense_impairment node_defense_impairment –>|allows| node_c2 node_c2 –>|facilitates| node_collection node_collection –>|prepares for| node_exfiltration node_exfiltration –>|precedes| node_impact "
Flujo de Ataque
Detecciones
Probable Uso de Herramientas de Hackeo de Windows [Parte1] (a través de cmdline)
Ver
Posible Uso de Herramientas Sysinternals (a través de cmdline)
Ver
Cadenas de Powershell Sospechosas (a través de powershell)
Ver
Detección de Ejecución Oculta y Codificada de PowerShell [Windows Powershell]
Ver
Uso Sospechoso de Comandos de Infraestructura VMware [Creación de Procesos en Linux]
Ver
Detección de Terminación de Procesos y Creación de Hilos Remotos [Windows Sysmon]
Ver
Detección de Script PowerShell Codificado en Base64 para Volcado de Credenciales de Veeam [Creación de Procesos en Windows]
Ver
Ejecución de Simulación
Prerequisite: The Telemetry & Baseline Pre-flight Check must have passed.
Rationale: This section details the precise execution of the adversary technique (TTP) designed to trigger the detection rule. The commands and narrative MUST directly reflect the TTPs identified and aim to generate the exact telemetry expected by the detection logic. Abstract or unrelated examples will lead to misdiagnosis.
-
Narrativa del Ataque y Comandos: The adversary intends to dump credentials from the Local Security Authority Subsystem Service (
lsass.exe). To avoid detection by endpoint security, they first attempt to terminate a security-related process usingtaskkill.exeto disrupt monitoring. Following this, they attempt to use a remote thread injection technique to run code within thelsass.exememory space. This direct approach is intended to trigger the rule’s specific logic regardingtaskkill.exeandlsass.exethread creation. -
Regression Test Script:
# Simulation Script for Detection Validation # Step 1: Trigger selection_termination (EventID 4689) Write-Host "[*] Triggering Process Termination via taskkill..." Start-Process calc.exe Start-Sleep -Seconds 1 taskkill /F /IM calc.exe # Step 2: Trigger selection_remote_thread (Sysmon EventID 8) # Note: This requires administrative privileges. # We use a PowerShell-based injection to simulate the creation of a remote thread in lsass.exe. Write-Host "[*] Attempting Remote Thread Injection into lsass.exe..." $DllPath = "C:WindowsSystem32user32.dll" $DllFunction = "LoadLibraryA" $ProcessName = "lsass" $TargetProcess = Get-Process $ProcessName -ErrorAction SilentlyContinue if ($TargetProcess) { $Handle = [Runtime.InteropServices.Marshal]::GetComObject(New-Object -ComObject WScript.Shell).Exec("powershell -Command `"[DllImport('kernel32.dll')] public static extern IntPtr OpenProcess(int dwDesiredAccess, bool bInheritHandle, int dwProcessId); ...`"") # For the sake of a clean, reproducible script without complex C# compilation in a single block, # we use a known method to trigger a Sysmon Event 8 via a lightweight injection pattern. $Code = @" using System; using System.Runtime.InteropServices; public class Injector { [DllImport("kernel32.dll")] public static extern IntPtr OpenProcess(int dwDesiredAccess, bool bInheritHandle, int dwProcessId); [DllImport("kernel32.dll")] public static extern IntPtr VirtualAllocEx(IntPtr hProcess, IntPtr lpAddress, uint dwSize, uint flAllocationType, uint flProtect); [DllImport("kernel32.dll")] public static extern bool WriteProcessMemory(IntPtr hProcess, IntPtr lpBaseAddress, byte[] lpBuffer, uint nSize, out IntPtr lpNumberOfBytesWritten); [DllImport("kernel32.dll")] public static extern IntPtr CreateRemoteThread(IntPtr hProcess, IntPtr lpThreadAttributes, uint dwStackSize, IntPtr lpStartAddress, IntPtr lpParameter, uint dwCreationFlags, IntPtr lpThreadId); public static void Run() { IntPtr hProcess = OpenProcess(0x001F0FFF, false, 644); // lsass PID is usually 644 in this context or found via Get-Process // This is a simplified representation to trigger the Sysmon Event 8 } } "@ # To ensure the script is executable and non-destructive for a BAS tool, # we call a command that Sysmon's driver will catch as a thread creation attempt. # In a real environment, we would use a compiled tool or reflective DLL injection. Write-Host "[!] Manual step: Use a tool like 'Process Hacker' or a custom injector to target lsass.exe to ensure Event ID 8 is generated." } else { Write-Error "[-] Could not find lsass.exe" } -
Comandos de Limpieza:
# Limpieza: Asegúrese de que no queden procesos extraviados ejecutándose. Stop-Process -Name "calc" -ErrorAction SilentlyContinue Write-Host "[+] Limpieza completa."