
Marco de automatización de seguridad sin servidor para AWS que ingiere inteligencia de amenazas, aplica detección de anomalías basada en ML (RCF, IP Insights) y enriquece la telemetría de seguridad en Kibana para la prevención, detección y respuesta automatizada de amenazas.
SyntheticSun es un marco de automatización y monitoreo de seguridad en profundidad que utiliza inteligencia de amenazas, aprendizaje automático, servicios de seguridad administrados de AWS y tecnologías sin servidor para prevenir, detectar y responder continuamente a las amenazas.
Duermes en vidrio fragmentado
Con reflejos de ti,
¿Pero te sientes vivo?
Sí, déjame preguntarte,
¿Te sientes vivo?
- Norma Jean, 2016
SyntheticSun se construye en torno al uso de la Plataforma de Compartición de Información de Malware (MISP) y LIMO de Anomali, que son plataformas de inteligencia de amenazas (TIP) impulsadas por la comunidad que proporcionan varios tipos de indicadores de compromiso (IoC). La inteligencia de amenazas normalizada y deduplicada se consulta en tiempo casi real para identificar rápidamente amenazas conocidas en varios tipos de tráfico de red. Para añadir dinamismo a la identificación de amenazas potenciales, se implementan modelos de IP Insights para encontrar anomalías (y amenazas potenciales dentro de ellas) entre el emparejamiento de direcciones IP y entidades (como ID de principal de IAM, user-agents, etc.), también se utilizan detectores RCF nativos en Elasticsearch para encontrar anomalías en la telemetría de seguridad en tiempo casi real a medida que se transmite a Kibana. Para democratizar el uso y ajuste de modelos de ML dentro de los equipos de seguridad, se proporcionan utilidades para entrenar modelos de IP Insights como complemento a la solución principal.
Para realizar tanto la orquestación y automatización como la extracción, transformación y carga (ETL) de la telemetría de seguridad en Kibana, se utilizan diversas tecnologías sin servidor de AWS como AWS Lambda, Amazon DynamoDB y AWS CodeBuild. Tecnologías sin servidor como estas se utilizan por su escalabilidad, facilidad de uso y costos relativamente bajos en comparación con soluciones pesadas basadas en MapReduce o Glue ETL. La mayor parte de la solución se implementa a través de CloudFormation con scripts auxiliares en Python y shell proporcionados a lo largo de las diversas Etapas para promover la adopción y la posible implementación en tuberías de integración continua.
Para que las "entrañas" de la solución sean lo más ligeras posible, módulos básicos de Python como boto3, requests, json, ipaddress, socket y re realizan la mayor parte de la extracción, transformación y carga (ETL) en los servicios posteriores. Debido a que toda la información de geolocalización es proporcionada por ip-api.com, no requiere una cuenta ni niveles pagados y tiene una excelente API que incluye información de limitación en sus encabezados de respuesta. La mayoría de las dependencias de Elasticsearch y Kibana también se proporcionan en código (índices, mapeos, visualizaciones, etc.) para evitar una configuración manual pesada.
SyntheticSun está distribuido en tres Etapas debido al tamaño de la solución y las dependencias requeridas. Toda la arquitectura e instrucciones de instalación (y preguntas frecuentes cuando corresponda) viven dentro de su propia Etapa. También se proporcionan módulos complementarios (llamados Apéndice) para extender la funcionalidad, que tienen su propia arquitectura e instrucciones de instalación localizadas.
SyntheticSun, por ser algo que encontraste en GitHub, es una prueba de concepto y por lo tanto no me esforcé al máximo en la primera versión para endurecer absolutamente todo. Suponiendo que estás leyendo esto en un momento en que no he realizado los cambios necesarios, considera lo siguiente antes de implementar esta solución en un entorno de producción (o cualquier entorno con necesidades de seguridad elevadas). Pondré estos elementos en una hoja de ruta y los actualizaré según corresponda.