ASOC do Zero: Automatizando Controles DevSecOps com Open Source e LLMs em Poucas Noites
Descubra como construir sua própria plataforma ASOC (Application Security Orchestration and Correlation) utilizando ferramentas Open Source e o poder de LLMs. O artigo detalha os componentes essenciais, desde a orquestração de scanners até a visualização de dados, mostrando que a criação de ferramentas de segurança personalizadas é acessível e pode aprimorar significativamente as práticas de AppSec e DevSecOps.
MundiX News·29 de junho de 2026·15 min de leitura·👁 1 views
Olá, Habr! Hoje compartilho minha experiência no desenvolvimento de uma plataforma ASOC (Application Security Orchestration and Correlation). O objetivo é demonstrar que a criação de ferramentas de segurança da informação personalizadas não é uma tarefa complexa nos dias de hoje e, possivelmente, inspirar outros a aprimorar as práticas de AppSec e DevSecOps em suas empresas. A ideia surgiu de experiências anteriores no desenvolvimento e manutenção de plataformas similares em empresas com milhares de repositórios e um grande número de desenvolvedores. Embora existam soluções robustas como DefectDojo e Qualys, este artigo foca na construção de uma solução do zero, com foco em quem deseja desenvolver algo próprio.
É importante notar que o projeto apresentado ainda não é considerado "production-ready" e requer ajustes para automação completa. Além disso, não pretendo ser a autoridade máxima em arquitetura ou implementação, mas sim compartilhar um aprendizado aberto a críticas e sugestões. A automação de scanners de segurança em pipelines de CI/CD (como no GitLab) é um passo crucial para a maturidade em AppSec, cobrindo vulnerabilidades como segredos expostos e dependências desatualizadas. No entanto, essa abordagem, embora necessária, pode deixar de fora repositórios antigos e não oferece uma visão consolidada da dinâmica de vulnerabilidades em toda a empresa. A falta de um ponto central de gerenciamento pode levar a problemas, como a manutenção de inúmeras exceções em diferentes repositórios. É aqui que uma plataforma ASOC se torna valiosa.
ASOC, ou Application Security Orchestration and Correlation, é uma classe de plataformas projetadas para automatizar e centralizar o gerenciamento da segurança de software. Esses sistemas coordenam diversas ferramentas de escaneamento (SAST, DAST, SCA), agregam dados de vulnerabilidades e os entregam aos desenvolvedores, facilitando a construção de processos de desenvolvimento seguro (DevSecOps). Uma plataforma ASOC vai além do simples gerenciamento de scanners, oferecendo funcionalidades como visualização estatística de vulnerabilidades (tabelas, gráficos), um mecanismo robusto para gerenciar Falsos Positivos (FP) e Falsos Negativos (FN), integração com sistemas de rastreamento de tarefas (task trackers) para automação de criação de tickets para vulnerabilidades críticas, e o cálculo de métricas importantes sobre a correção de vulnerabilidades ao longo do tempo para cada equipe de produto. A principal diferença de uma ASOC para um pipeline de escaneamento é a abstração do ciclo de vida do software, atuando como um observador externo. Por isso, a combinação de ambos os métodos (ASOC e pipeline) é essencial: o pipeline garante a detecção precoce, enquanto a ASOC oferece a visão consolidada e o controle do processo de remediação.
A arquitetura de uma plataforma ASOC pode ser simplificada em alguns componentes chave: um banco de dados, um módulo de inventário de ativos, um conjunto de scanners de segurança com suas respectivas integrações, um servidor web e um serviço de orquestração. Opcionalmente, podem ser adicionados um serviço de visualização (dashboards), um serviço de logging e um serviço de gerenciamento de segredos. Para este projeto, foram escolhidas tecnologias como Python como linguagem principal, FastAPI como framework web, PostgreSQL com SQLAlchemy para o banco de dados, Grafana para visualização, Graylog para logging e Docker com docker-compose para orquestração. Os scanners de segurança utilizados incluem KICS, Trivy e Nosey Parker. A comunicação com o banco de dados é feita via REST API para um controle mais granular. O banco de dados utiliza um modelo de dados que busca unificar a estrutura de relatórios de diferentes scanners em um único schema, utilizando campos JSON para dados específicos de cada scanner, o que simplifica o desenvolvimento e a manutenção, apesar de apresentar desafios com o crescimento do volume de dados. Um campo hash é calculado para deduplicação automática de vulnerabilidades. O módulo de inventário de ativos mantém informações atualizadas sobre os repositórios, otimizando as varreduras ao verificar apenas repositórios com alterações recentes. Os scanners de segurança são executados em contêineres Docker, com o código-fonte clonado para análise. A etapa de processamento dos relatórios se beneficia de LLMs para converter relatórios JSON em modelos Pydantic, facilitando a extração e organização dos dados de vulnerabilidades. Ferramentas auxiliares como "Conectores" (contêineres Docker com a lógica principal e um SDK para interação) e um SDK para abstrair a comunicação com a API do servidor web e gerenciar tarefas agendadas são fundamentais. O servidor web, construído com FastAPI, oferece tanto uma interface de usuário quanto uma API para comunicação com os conectores e usuários. A orquestração inicial é feita com Docker e docker-compose, com scripts auxiliares para simplificar a configuração inicial, incluindo migrações de banco de dados, registro de administradores e conectores, e instalação de scanners. Para um ambiente de produção, a migração para orquestradores mais robustos como Apache Airflow ou Kubernetes seria recomendada.
Em conclusão, embora a ferramenta desenvolvida ainda necessite de aprimoramentos, ela já permite a melhoria imediata dos processos de AppSec e DevSecOps. Em um cenário onde o investimento em segurança da informação muitas vezes enfrenta resistência por não ter uma conversão direta em lucro, a utilização de ferramentas Open Source e LLMs se apresenta como um caminho viável e eficaz. A combinação dessas tecnologias pode gerar resultados rápidos e valiosos, permitindo que as equipes de segurança superem desafios e fortaleçam a proteção das aplicações e infraestruturas.
🛡️⚡
Pare de pesquisar. Comece a hackear.
O MundiX é seu copiloto de pentest com IA: comandos exatos, análise de outputs e próximo passo na kill chain — em segundos.
Sem cartão para começar · Planos a partir de R$49/mês
Olá, Habr! Hoje compartilho minha experiência no desenvolvimento de uma plataforma ASOC (Application Security Orchestration and Correlation). O objetivo é demonstrar que a criação de ferramentas de segurança da informação personalizadas não é uma tarefa complexa nos dias de hoje e, possivelmente, inspirar outros a aprimorar as práticas de AppSec e DevSecOps em suas empresas. A ideia surgiu de experiências anteriores no desenvolvimento e manutenção de plataformas similares em empresas com milhares de repositórios e um grande número de desenvolvedores. Embora existam soluções robustas como DefectDojo e Qualys, este artigo foca na construção de uma solução do zero, com foco em quem deseja desenvolver algo próprio.
É importante notar que o projeto apresentado ainda não é considerado "production-ready" e requer ajustes para automação completa. Além disso, não pretendo ser a autoridade máxima em arquitetura ou implementação, mas sim compartilhar um aprendizado aberto a críticas e sugestões. A automação de scanners de segurança em pipelines de CI/CD (como no GitLab) é um passo crucial para a maturidade em AppSec, cobrindo vulnerabilidades como segredos expostos e dependências desatualizadas. No entanto, essa abordagem, embora necessária, pode deixar de fora repositórios antigos e não oferece uma visão consolidada da dinâmica de vulnerabilidades em toda a empresa. A falta de um ponto central de gerenciamento pode levar a problemas, como a manutenção de inúmeras exceções em diferentes repositórios. É aqui que uma plataforma ASOC se torna valiosa.
ASOC, ou Application Security Orchestration and Correlation, é uma classe de plataformas projetadas para automatizar e centralizar o gerenciamento da segurança de software. Esses sistemas coordenam diversas ferramentas de escaneamento (SAST, DAST, SCA), agregam dados de vulnerabilidades e os entregam aos desenvolvedores, facilitando a construção de processos de desenvolvimento seguro (DevSecOps). Uma plataforma ASOC vai além do simples gerenciamento de scanners, oferecendo funcionalidades como visualização estatística de vulnerabilidades (tabelas, gráficos), um mecanismo robusto para gerenciar Falsos Positivos (FP) e Falsos Negativos (FN), integração com sistemas de rastreamento de tarefas (task trackers) para automação de criação de tickets para vulnerabilidades críticas, e o cálculo de métricas importantes sobre a correção de vulnerabilidades ao longo do tempo para cada equipe de produto. A principal diferença de uma ASOC para um pipeline de escaneamento é a abstração do ciclo de vida do software, atuando como um observador externo. Por isso, a combinação de ambos os métodos (ASOC e pipeline) é essencial: o pipeline garante a detecção precoce, enquanto a ASOC oferece a visão consolidada e o controle do processo de remediação.
A arquitetura de uma plataforma ASOC pode ser simplificada em alguns componentes chave: um banco de dados, um módulo de inventário de ativos, um conjunto de scanners de segurança com suas respectivas integrações, um servidor web e um serviço de orquestração. Opcionalmente, podem ser adicionados um serviço de visualização (dashboards), um serviço de logging e um serviço de gerenciamento de segredos. Para este projeto, foram escolhidas tecnologias como Python como linguagem principal, FastAPI como framework web, PostgreSQL com SQLAlchemy para o banco de dados, Grafana para visualização, Graylog para logging e Docker com docker-compose para orquestração. Os scanners de segurança utilizados incluem KICS, Trivy e Nosey Parker. A comunicação com o banco de dados é feita via REST API para um controle mais granular. O banco de dados utiliza um modelo de dados que busca unificar a estrutura de relatórios de diferentes scanners em um único schema, utilizando campos JSON para dados específicos de cada scanner, o que simplifica o desenvolvimento e a manutenção, apesar de apresentar desafios com o crescimento do volume de dados. Um campo hash é calculado para deduplicação automática de vulnerabilidades. O módulo de inventário de ativos mantém informações atualizadas sobre os repositórios, otimizando as varreduras ao verificar apenas repositórios com alterações recentes. Os scanners de segurança são executados em contêineres Docker, com o código-fonte clonado para análise. A etapa de processamento dos relatórios se beneficia de LLMs para converter relatórios JSON em modelos Pydantic, facilitando a extração e organização dos dados de vulnerabilidades. Ferramentas auxiliares como "Conectores" (contêineres Docker com a lógica principal e um SDK para interação) e um SDK para abstrair a comunicação com a API do servidor web e gerenciar tarefas agendadas são fundamentais. O servidor web, construído com FastAPI, oferece tanto uma interface de usuário quanto uma API para comunicação com os conectores e usuários. A orquestração inicial é feita com Docker e docker-compose, com scripts auxiliares para simplificar a configuração inicial, incluindo migrações de banco de dados, registro de administradores e conectores, e instalação de scanners. Para um ambiente de produção, a migração para orquestradores mais robustos como Apache Airflow ou Kubernetes seria recomendada.
Em conclusão, embora a ferramenta desenvolvida ainda necessite de aprimoramentos, ela já permite a melhoria imediata dos processos de AppSec e DevSecOps. Em um cenário onde o investimento em segurança da informação muitas vezes enfrenta resistência por não ter uma conversão direta em lucro, a utilização de ferramentas Open Source e LLMs se apresenta como um caminho viável e eficaz. A combinação dessas tecnologias pode gerar resultados rápidos e valiosos, permitindo que as equipes de segurança superem desafios e fortaleçam a proteção das aplicações e infraestruturas.
📤 Compartilhar & Baixar
🧰 Ferramentas recomendadas
Divulgação: alguns links são patrocinados. Podemos receber comissão se você comprar — sem custo extra para você. Só indicamos o que faz sentido para a comunidade.