Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Event-driven Security Architecture (2022)

Agustin Celano
June 01, 2023
19

Event-driven Security Architecture (2022)

Una charla ilustrativa sobre algunas ideas para aprovechar las ventajas de las arquitecturas event-driven para propósitos de seguridad en el Cloud. (Córdoba Hacker Space - Año 2022)

Agustin Celano

June 01, 2023
Tweet

Transcript

  1. /in/agustincelano @agustincelano /celagus Hola, soy Agus Celano! EVENT-DRIVEN SECURITY ARCHITECTURE

    Un enfoque bueno, bonito y barato para automatizar operaciones de ciberseguridad y escalar fácil
  2. AGENDA • Motivación • Qué es una arquitectura basada en

    eventos (EDA)? • Qué ventajas tiene una EDA? • Cuándo usar EDA? • Ejemplo de EDA aplicada a response automático • Algunos aprendizajes
  3. UN PEQUEÑO DISCLAIMER! • No es una charla Pomelo! •

    Los componentes de los ejemplos pueden variar, el concepto no!
  4. SI VENÍS DE UNA STARTUP TECH… Tal vez te encontraste

    con algunos de estos desafíos: • Integrarse con el resto del ecosistema tecnológico • Modularizar capabilities • Eficiencia de costos • Equipo chico vs backlog gigante • Necesidad de automatizar • Necesidad de escalar de 0 a 100 en cualquier momento
  5. ARQUITECTURA BASADA EN EVENTOS • Patrón para la construcción de

    sistemas desacoplados y escalables • Asíncrono • Los eventos llevan información que puede incluir“estados” de un componente a otro • Al menos 3 componentes básicos: ◦ Event producer ◦ Event router/processor/orchestrator ◦ Event consumer Algunas características:
  6. VENTAJAS DE EDA • Eficiencia en cómputo: no todos los

    componentes del flujo tienen que estar activos todo el tiempo • Reducción de costos • Altamente escalable • Facilita el procesamiento en paralelo Algunas ventajas:
  7. DESVENTAJAS DE EDA • No es una buena elección para

    casos de uso donde se requiera procesamiento intensivo o recursos dedicados de cómputo • No es la mejor opción si requerís de una respuesta inmediata (pocos ms) • El troubleshooting puede ser más complicado • Más carga de testing unitario y de integraciones Algunas desventajas:
  8. CUÁNDO CONVIENE USAR EDA? • Necesitas interpretar y tomar acciones

    en base a estados en un flujo de varios nodos • No necesitas cómputo dedicado, sino solo el suficiente para responder a estímulos (eventos) en los momentos requeridos • Necesitas escalar rápido en momentos random y mantenerte al mínimo costo en momentos ociosos • No necesitas respuesta instantánea (pocos ms) Es elegible si tu caso de uso contempla algo de lo siguiente:
  9. EJ CASO DE USO 1: EDA APLICADO A DETECCIÓN Y

    RESPUESTA (SEC) Observability Threat Intelligence alert Enrichment Playbooks / Runbooks Event Source Security Tools Security Orchestration action FW IDS/IPS SWG EDR CASB …
  10. EJ CASO DE USO 2: EDA APLICADO A PATCH MANAGEMENT

    (SEC) alert Event Source Security Orchestration action VMs ENDPOINTS DEVICES CONTAINERS … SBOM ITSM MDM IMAGES REGISTRY Final destination IMAGES REGISTRY
  11. EJ CASO DE USO 3: EDA APLICADO A IAM (SEC)

    alert Event Source Security Orchestration action System 1 System N IDM People DB Final destination System 2
  12. COSTOS Servicio Unidades Costo unitario mensual Costo total mensual Lambda

    6 USD 0,17 USD 1,02 API GW 1 USD 1 USD 1 SQS 1 USD 0,20 USD 0,2 Dynamo DB 2 USD 1,08 USD 2,16 SNS 1 USD 0,04 USD 0,04 Step Functions 2 USD 0,03 USD 0,06 Lambda (garbage collector) 1 USD 0,33 USD 0,33 Total USD 4,81 Premisas (exageradas): - 1000 invocaciones p/mes (del flujo) - promedio 20 s de ejecución p/ Lambda (salvo GC 40 s), 512 MB storage efímero y 512 MB RAM - 34 kb promedio cada request - Storage 4 GB mensual
  13. RECOMENDACIONES FINALES • Estandarizar inputs y outputs • Monitorear las

    funciones de la manera más centralizada posible • Hacer funciones cortitas y reutilizables • SI la escala es MUY grande vale la pena hacer números y considerar recursos dedicados (En base a lecciones aprendidas)