El viejo dicho de "La mejor defensa es un buen ataque" ha empezado a ganar fuerza tanto entre los centros de operaciones de seguridad (SOC) como entre los equipos de seguridad de la información. Sin embargo, para muchos, la formación constante de equipos rojos y las pruebas de penetración pueden parecer un objetivo ambicioso, secundario a la investigación del aluvión de alertas y alarmas que enfrentan.
Si no puede dedicar tiempo ni recursos a simulacros de ataque completamente desarrollados, siempre puede pasar a la ofensiva intentando predecir lo que podría hacer un atacante y usarlo en su contra. Y es muy probable que, sea quien sea el atacante, busque exfiltrar datos.
Sembrando archivos contaminados
En esta publicación, exploraremos la técnica de sembrar archivos "contaminados" (es decir, archivos con una carga útil incrustada) en una red para detectar a un actor malicioso que roba información valiosa. Una de nuestras herramientas preferidas es una herramienta de postexplotación de código abierto., Imperio de PowerShell. Tiene capacidades de explotación robustas y una ingeniosa API REST que hace que la integración con Swimlane sea muy sencilla.
Incrustar una carga útil
Primero, necesitaremos crear los archivos que queremos distribuir en nuestra red. Para esta publicación, asumiremos que sabes cómo incrustar una carga útil en varios formatos multimedia. Si no, Aquí hay algunos conceptos básicos.
La clave es que se vean bien, pero no demasiado bien. Queremos que los atacantes crean que han encontrado algo valioso que preferiríamos que no tuvieran. Los archivos deben ser coherentes con los elementos que se encuentran en la red, pero con un nombre llamativo. Empire ofrece muchas opciones de cargas útiles, así que mézclalas. Si tienes desarrollo interno, incluye más que solo documentos de Word. Los binarios ELF son una excelente manera de diversificar.

Mientras hablamos de sembrar una amplia franja con estos archivos, para maximizar las posibilidades de despertar el interés de un atacante, necesitamos numerosos tipos de archivos en múltiples ubicaciones. Los endpoints de usuario son excelentes, pero los servidores de archivos son lugares privilegiados para la exfiltración de datos. A menos que un atacante tenga un tiempo muy limitado, a menudo buscará recursos compartidos de archivos como uno de sus principales objetivos. Además, no almacene los archivos en honeypots (servidores falsos) dentro de su sistema pensando que va a redirigir a los atacantes a ellos en lugar de a servidores legítimos. Haga que los archivos infectados parezcan prometedores incorporándolos a los sistemas de producción.
Ahora tenemos archivos incrustados esperando a que un atacante los descargue y los abra. Pero, ¿qué hacemos una vez que detectamos una devolución de llamada? ¿Para qué sembrar archivos? Bueno, en primer lugar, si se roban datos confidenciales, probablemente necesites saberlo. Y lo que es más importante, solo hay unas pocas maneras de detener a atacantes como este, y la respuesta no es "contraatacar". Para las APT auténticas, la única forma de mantenerlas a raya es exponer sus herramientas (exploits, cargas útiles, etc.). o Exponer su infraestructura. Hacer público cualquiera de estos elementos los obligará a realizar cambios, que suelen ser costosos o afectar gravemente sus operaciones.
Ah, y mira. Acabamos de recibir una devolución de llamada (claro, normalmente no la vemos porque estamos automatizando a través de Swimlane)…

Trataremos la ingesta en Swimlane como lo haríamos desde cualquier otra fuente. Contamos con una integración con Empire que realiza lo siguiente:
- Comprueba cada minuto el estado de nuestros oyentes de Empire
- Comprueba cada minuto si hay agentes del Imperio
- Si se establece una sesión de agente, Swimlane Workflow ejecuta una serie de acciones según condiciones específicas.
Sabemos que el momento es crucial, ya que un atacante podría estar apenas comenzando su exfiltración. O bien, podría estar al tanto de nuestras actividades, y debemos recopilar toda la información posible sobre quiénes son y sus herramientas lo antes posible. Debemos tratar esto como si solo tuviéramos una mirada al equipo del atacante.
Usando el flujo de trabajo de Swimlane, ya hemos definido qué acciones deben tomarse si detectamos una devolución de llamada de nuestros archivos "especiales".

Independientemente de si se trata de una IP interna o externa (cualquiera podría ser un punto de inflexión para los atacantes), decidimos ejecutar algunos de nuestros comandos DFIR de PowerShell y enviar notificaciones. Estas tareas incluyen obtener la caché ARP, netstat, procesos, comprobar si hay procesos vacíos (y recuperar un volcado de memoria si lo encontramos), capturas de pantalla, enumeración de unidades y más:

Solo recuerda que, si se trata de una IP externa, existe una mayor probabilidad de que la tarea que le encomendamos al agente en la devolución de llamada no se ejecute. Esto se debe a que la mayoría de las APTs limitan las comunicaciones dentro y fuera de su red. Por lo tanto, la mejor práctica es aprovechar al máximo la devolución de llamada inicial. Por suerte, con Empire puedes modificar la carga útil antes de incrustarla en Base64; así que no te limites a modificarla.
Es hora de iniciar una investigación detallada
¿Eso es todo? Claro que no. Tenemos algunas de las TTP de los atacantes, que probablemente se estén reutilizando, y estamos listos para iniciar una investigación más detallada. Pero abordaremos eso en otra publicación. Por hoy, considérese un buen trabajo poder usar una herramienta de código abierto y la automatización para rastrear a actores maliciosos dentro de la red y recopilar datos sensibles.

