SOC & Threat Intelligence

Security Hub: Centralização de SOC e Auditoria de Conformidade

Construção de uma plataforma em Python para unificação de telemetria de segurança, cálculo automatizado de MTTR/MTTD e geração de relatórios de auditoria para ISO 27001 e PCI-DSS.

Carlos Felipe
Carlos Felipe Oliveira da Silva Senior Infrastructure & DevOps Engineer
Objetivo da Solução: Eliminar a fragmentação de painéis operacionais, consolidando dados de múltiplos firewalls Fortigate, agentes Wazuh e servidores de log Graylog em um painel unificado de postura de segurança executiva e conformidade.

1. A Complexidade da Gestão de Conformidade

Com dezenas de servidores e aplicações em operação, manter evidências auditáveis de conformidade com padrões como ISO/IEC 27001 e PCI-DSS é um processo trabalhoso quando executado manualmente. Informações de vulnerabilidades, tentativas de intrusão e inventário de ativos costumam residir em silos isolados.

2. Arquitetura da Engine do Security Hub

O Security Hub foi concebido como uma aplicação modular em Python estruturada em clientes assíncronos:

  • Wazuh Client: Coleta métricas de integridade de agentes, eventos críticos e alertas mapeados no MITRE ATT&CK.
  • Graylog / OpenSearch Client: Executa consultas agregadas de volumetria de logs e desvios de linha de base.
  • FortiOS Client: Extrai telemetria de tráfego bloqueado e status de links de alta disponibilidade.
  • Metrics Engine: Consolida os indicadores-chave de desempenho (KPIs) de segurança, incluindo MTTD e MTTR.

3. Motor de Cálculo de Métricas Executivas

O módulo metrics_engine.py correlaciona eventos brutos e calcula o índice global de postura de segurança (Security Posture Index):

# metrics_engine.py - Cálculo unificado de conformidade e KPIs
class SecurityMetricsEngine:
    def __init__(self, wazuh_data, graylog_data, firewall_data):
        self.wazuh = wazuh_data
        self.graylog = graylog_data
        self.fw = firewall_data

    def calculate_compliance_score(self) -> dict:
        total_assets = len(self.wazuh.get("active_agents", []))
        compliant_assets = sum(1 for a in self.wazuh["active_agents"] if a["cis_score"] >= 85)
        
        ratio = (compliant_assets / total_assets * 100) if total_assets else 0
        return {
            "iso27001_compliance_pct": round(ratio, 2),
            "critical_vulnerabilities": self.wazuh.get("critical_cves", 0),
            "threats_blocked_24h": self.fw.get("dropped_packets_count", 0),
            "status": "APPROVED" if ratio >= 90 else "REVIEW_REQUIRED"
        }

4. Geração Automatizada de Relatórios Executivos

A plataforma conta com um gerador automatizado de relatórios formais em PDF com gráficos de tendências, inventário auditado e planos de ação para a diretoria e comitês de governança.

Ganhos de Governança e Eficiência

Tempo de preparação de relatórios de auditoria reduzido de 4 dias para menos de 10 minutos, visibilidade unificada de todo o parque tecnológico e atendimento integral aos requisitos de rastreabilidade regulatória.