FTPShadowMove, ¿suficientemente sigiloso? Parte 3

Autor: Silvia Hernández Sánchez

RESUMEN

Como continuación de esta serie de publicaciones sobre la capacidad de sigilo de FTPShadowMove, en esta tercera parte se describirá el funcionamiento de PolyLogyx, para que este tipo de infraestructura sea más entendible y pueda ser incluida dentro del modelo MITRE CAR (en inglés, The MITRE Cyber Analytics Repository), como una unidad de pruebas que puede ser accionada para poder comprobar la analítica.

Palabras clave: osquery, MITRE CAR, polylogyx, nginx

POLYLOGYX

Aunque existe versión “Enterprise” (en español, empresarial), a lo largo de esta publicación, se van a desarrollar los aspectos técnicos de la edición “Community”, que es sobre la que se propondrá esta unidad de pruebas para FTPShadowMove.

La plataforma de seguridad endpoint, PolyLogyx, aprovecha las capacidades de osquery para proveer de visibilidad y monitorización a escala. Como ya se ha desarrollado en anteriores publicaciones, osquery es un framework (desarrollado por Facebook) que transforma multitud eventos de sistema en una base de datos que puede ser consultada mediante SQL estándar.

Lamentablemente, dispone de una baja capacidad de funcionalidad y adaptación con sistemas operativos Windows, al no disponer de captura en tiempo real de eventos de sistema en Windows, ya que tiene problemas al parsear la información provista en Windows Event Log.

Imagen obtenida desde la presentación sobre osquery de Teddy Reed y Mitchell Grenier en la conferencia LISA del año 2017

Existen otros inconvenientes actuales sobre osquery sobre su complejidad para configurarlo, debido a su gran flexibilidad. Los desarrolladores de osquery realizan actualizaciones que no van en consonancia con la documentación, además disponer un canal de Slack (el cual es bastante útil) para resolver dudas, pero no crean FAQs (en inglés, Frequently Asked Questions), escribir paquetes de consultas que sean comprensibles o haciendo tutoriales.

A pesar del escaso mantenimiento que se realiza sobre osquery, sigue siendo una solución liviana y muy potente para exponer datos que se puedan encontrar en un dispositivo final.

Gran parte de la comunidad, que estaban implementando osquery en sus infraestructuras tecnológicas, comenzaron a desarrollar extensiones que facilitaban la configuración de este software, junto a plataformas que pudieran gestionar las flotas de agente osquery que se encontraran instalados, entre ellas PolyLogyx.

LA ARQUITECTURA DE POLYLOGYX

Los servidores PolyLogyx son una plataforma flexible que permite administrar y controlar datos de manera efectiva. Ofreciendo algunas de estas características:

  • Gestión de agentes y políticas.
  • Reenvío y gestión de datos.
  • Comando y control basado en OpenC2
  • Capacidad de respuesta ante incidentes, incluida la búsqueda y reparación proactiva de amenazas cibernéticas.

A continuación, se muestra un diagrama que describe la arquitectura y los componentes de un ecosistema Polylogyx.

Imagen obtenida desde el apartado de arquitectura en la documentación de Polylogyx

  • Scheduled Queries: Corresponde a las consultas SQL que están programadas para que se lancen en un determinado tiempo.
  • Live Queries: En este caso, antes de programar cualquier tarea se pueden ejecutar al momento, para identificar como responden. En la imagen a continuación, se ve una muestra.

Imagen obtenida de laboratorio con Polylogyx lanzando una consulta SQL

Esta consulta [2] ayuda a obtener todos los complementos instalados de Firefox, sin que se muestre información por defecto como Pocket o WebCompat. Este tipo de consultas puede ayudar en tareas de respuesta ante incidentes o análisis forense, en el momento en el que se quiera identificar un complemento malicioso que se haya instalado en el navegador web de la víctima.

Cabe destacar que una instalación por defecto de PolyLogyx ya incluye un conjunto de reglas ya hechas o paquetes de reglas, que pueden aplicarse a la flota de dispositivos.

  • Threat Intel Connector: Mediante esta utilidad de PolyLogyx, puede comprobar si determinados hashes o ficheros que pueda detectar esta plataforma puedan estar relacionados con amenazas cibernéticas, empleando la API de VirusTotal, AlienVault e IBM xForce.

Además de poder configurarlo para recibir alertas o correos electrónicos, en el momento en el que una consulta SQL obtenga un resultado, también puede soportar 3 tipos de indicadores de compromiso: direcciones IPv4, nombres de dominio y MD5.

También dispone de una modalidad que permite cargar reglas YARA en el servidor PolyLogyx, mediante las cuales puede identificar malware.

Y como otra de sus utilidades, se destaca su capacidad de integración con SIEM al tener implementado “rsyslog forwarder”. Simplemente se debe dirección y puerto de forwarding a fichero “rsyslog.conf” y establecer la variante de entorno RSYSLOG_FORWARDING a true en el fichero “docker-compose.yml”

LA INSTALACIÓN DE POLYLOGYX

Una vez se completa el proceso de instalación [3], se accede a la plataforma ya activa, mediante la que se puede obtener certificado y extensión desde la herramienta de aprovisionamiento de clientes. Esta funcionalidad centraliza los esfuerzos de configuración de flotas, mediante la propia plataforma.

Imagen obtenida de la herramienta de aprovisionamiento de clientes de Polylogyx

Tras obtener certificado y extensión para los dispositivos que se utilizarán en la prueba de concepto de osquery, se incluyen en esta plataforma dichos dispositivos.

Imagen obtenida de los hosts aprovisionados de Polylogyx

CONCLUSIÓN

Al haber descrito las funcionalidades de PolyLogyx junto a osquery, se representa el despliegue de un laboratorio de pruebas que permita comprobar cómo funciona FTPShadowMove, disponiendo de los siguientes dispositivos:

  • Servidor PolyLogyx, con 6G de RAM y 25G de disco. Dispone de un sistema operativo Linux Mint 20.2.
  • Servidor FTP, con 4G de RAM y 20G de disco. Dispone de un sistema operativo Linux Mint 20.2
  • Agente FTP, con 4G de RAM y 60 de disco. Dispone de un sistema operativo Windows 10 Pro.

Gracias a este entorno definido, se probará esta técnica sobre la que se desarrollará una consulta SQL que pueda permitir detectar a FTPShadowMove.

Silvia Hernández Sánchez

Cyber Threat Intelligence Technical Analyst en Mnemo

 

BIBLIOGRAFÍA

[1] Trail of Bits – What are the current pain points of osquery?, 2017: https://blog.trailofbits.com/2017/12/21/osquery-pain-points/

[2] sk-mobily, Carbon Black Community of Query Exchange, 2021: https://community.carbonblack.com/t5/Query-Exchange/Installed-Firefox-add-ons-without-Default/idi-p/105692

[3] PolyLogyx, Fresh Installation, 2021: https://github.com/polylogyx/plgx-esp#fresh-installation