A OWASP formalizou o DockSec, um projeto incubador que combina três scanners de contentores consolidados — Trivy, Hadolint e Docker Scout — com uma camada de modelos de linguagem para explicar vulnerabilidades e propor correções linha a linha. A ferramenta, escrita em Python e criada por Advait Patel, foi pensada para fechar o vão entre a descoberta de uma falha e a sua correção efetiva no Dockerfile.
O projeto conta com mais de 450 estrelas no GitHub e já acumula 14 mil downloads no PyPI. Chega como resposta a um problema persistente nas equipas de desenvolvimento: relatórios de varredura longos, cheios de CVEs, sem contexto claro sobre o que realmente importa.
Pontos-chave
O DockSec assenta num pipeline simples. Primeiro, corre os três scanners localmente sobre o Dockerfile e a imagem. Em seguida, deduplica os achados e envia o resumo a um modelo de linguagem. O resultado é uma pontuação de segurança de zero a cem, acompanhada de explicações em português claro e correções específicas para cada linha problemática do Dockerfile.
A camada de inteligência artificial suporta quatro fornecedores: OpenAI, Anthropic Claude, Google Gemini e modelos locais via Ollama. Há ainda um modo --scan-only que funciona offline, sem qualquer chave de API. Apenas os resultados da varredura — e nunca o código-fonte — são enviados ao modelo.
O problema que o DockSec resolve
Advait Patel descreve o mercado de segurança de contentores como dividido em dois campos. De um lado ficam scanners puros como Trivy, Grype, Clair, Snyk Container e Anchore, bons em encontrar problemas e maus em ajudar a corrigi-los. Do outro, plataformas empresariais como Prisma Cloud, Aqua e Sysdig, construídas para equipas de segurança com orçamento disponível.
O DockSec mira precisamente no espaço entre esses dois extremos. “A lacuna de fluxo de trabalho entre ‘o scanner encontrou algo’ e ‘o programador corrige’ é onde a maioria das vulnerabilidades de contentor morre”, disse Patel em entrevista ao Help Net Security. A equipa recebe o relatório, o programador ignora ou passa meio dia a pesquisar cada CVE, e as falhas acabam arquivadas como “risco aceitado”.
O resultado é um círculo vicioso conhecido nas equipas pequenas. Sem priorização clara, as correções urgentes perdem-se no meio de centenas de alertas de baixo impacto. Este fenómeno é particularmente sensível em ambientes devops que já adotaram automação SAST e precisam de consistência semelhante na camada de contentores.
Como funciona a camada de IA
A integração com modelos de linguagem não substitui os scanners determinísticos. Pelo contrário: depende deles. Um assistente de programação genérico consegue sinalizar más práticas, como executar contentores como root. Mas a deteção de uma CVE específica numa biblioteca da imagem base exige dados reais de varredura, algo que apenas o Trivy ou o Docker Scout fornecem.
A camada de inteligência artificial entra depois, para cruzar os resultados, eliminar duplicações e devolver uma narrativa útil. O programador recebe mensagens do tipo “a linha 14 do seu Dockerfile é o problema, aqui está a versão corrigida, e aqui está a razão pela qual isso importa nesta imagem específica”.
Os relatórios podem ser exportados em HTML, PDF, JSON, CSV e Markdown. Este detalhe não é trivial. Para equipas que precisam de documentar hardening para auditorias, ter formatos padronizados poupa horas de trabalho manual e reduz o risco de inconsistências entre equipas.
Reconhecimento OWASP e governança
A chancela de Projeto Incubador OWASP não é meramente simbólica. Significa que o DockSec passa por revisão por pares da comunidade, segue um modelo de governança transparente e tem manutenção ativa. Para empresas que precisam de justificar a adoção de ferramentas de código aberto, esse endosso é decisivo.
Patel é direto sobre o papel da camada dedicada face a assistentes como GitHub Copilot, Cursor ou Claude Code. “Essas ferramentas vão absorver muito do que o DockSec faz na camada superficial”, admite. Mas a defesa do projeto assenta em dois pilares: o fundamento determinístico dos scanners e a exigência de governança. A frase “o Copilot disse que estava tudo bem” não sobrevive à primeira pergunta de um auditor.
Riscos e concorrência
O risco competitivo mais sério, na visão do criador, vem das plataformas empresariais estabelecidas. Snyk, Aqua, Sysdig e Prisma Cloud têm recursos para empacotar capacidades equivalentes nas suas licenças existentes e oferecê-las como mais uma funcionalidade. Esse movimento poderia comprimir o espaço do DockSec no segmento empresarial.
O projeto mantém-se, por isso, focado num público específico: programadores que operam sem implantação de plataforma e sem verba dedicada a segurança. É esse nicho que o DockSec procura defender, com código aberto sob licença MIT e dependência mínima.
O roadmap público no repositório GitHub oficial lista análise de Docker Compose multi-serviço, varredura de manifestos Kubernetes, uma GitHub Action para revisão automática de pull requests e aplicação de políticas de segurança personalizadas. Estas funcionalidades devem aproximar o projeto de fluxos CI/CD já maduros.
O que fazer agora
Instale o DockSec com pip install docksec, requer Python 3.12 ou superior. Corra docksec Dockerfile para análise completa ou docksec Dockerfile --scan-only para varredura offline. Configure o fornecedor de modelo preferido através de variáveis de ambiente e integre o resultado num passo do pipeline CI/CD. Para equipas que trabalham com virtualização e isolamento de cargas, a pontuação zero a cem oferece uma métrica objetiva para acompanhar melhorias ao longo do tempo.