
Scanner de segurança Docker impulsionado por IA que explica vulnerabilidades em linguagem clara. Um Projeto de Laboratório OWASP.
DockSec é um OWASP Lab Project que preenche a lacuna entre resultados complexos de varredura de segurança e correções acionáveis para desenvolvedores. Ele integra scanners padrão do setor (Trivy, Hadolint, Docker Scout) com IA para fornecer análise de segurança contextualizada.
Em vez de sobrecarregá-lo com uma lista de mais de 200 CVEs, o DockSec:
Tudo é escaneado localmente; a única coisa que sai da sua máquina é o conteúdo do arquivo (com segredos ocultados) enviado ao provedor de IA que você escolher - e com um modelo local ou modo somente varredura, nada sai. Consulte Fluxo de dados e privacidade.
Fluxo de trabalho do DockSec: da varredura a insights acionáveis
O DockSec segue um pipeline de cinco estágios:
O DockSec orquestra scanners locais, então precisa de:
| Requisito | Necessário para | Instalação |
|---|---|---|
| Python 3.12+ | O próprio DockSec | python.org |
| Trivy | Todas as varreduras (obrigatório) | brew install trivy ou Trivy docs |
| Hadolint | Linting de Dockerfile | brew install hadolint ou Hadolint docs |
| Docker | Varreduras de imagem (-i) | Docker docs |
Ou deixe o DockSec instalar o Trivy e o Hadolint para você:```bash python -m docksec.setup_external_tools
### 2. Instalar o DockSec```bash
# Full install with AI analysis support (recommended)
pip install "docksec[ai]"
# Or the slim, scan-only core (no LLM dependencies, no API key needed)
pip install docksec
Nenhuma chave de API é necessária para varredura local:```bash docksec Dockerfile --scan-only
Todo scan termina com um resumo de resultados: uma tabela de severidade, uma pontuação de segurança de 0 a 100 com uma
classificação, um bloco de ação "Quick take", os relatórios gerados (salvos em
`~/.docksec/results/` por padrão) e um próximo comando sugerido.
### 4. Ativar análise de IA
A análise de IA explica os achados e sugere correções. Escolha um provedor, defina sua chave de API e execute:```bash
# OpenAI (default provider)
export OPENAI_API_KEY="sk-..."
docksec Dockerfile
# Anthropic Claude
export ANTHROPIC_API_KEY="sk-ant-..."
docksec Dockerfile --ai-only --provider anthropic --model claude-sonnet-5
# Google Gemini
export GOOGLE_API_KEY="..."
docksec Dockerfile --ai-only --provider google
# Ollama (fully local, no API key, data never leaves your machine)
docksec Dockerfile --ai-only --provider ollama --model llama3.1
Cada provedor tem um modelo padrão sensato (OpenAI: gpt-4o, Anthropic:
claude-haiku-4-5, Google: gemini-1.5-pro, Ollama: llama3.1), então --model é
opcional. Para evitar repetir flags, defina variáveis de ambiente (ou coloque-as em um arquivo .env
no diretório a partir do qual você executa - o DockSec o carrega automaticamente):```bash
export LLM_PROVIDER=anthropic
export LLM_MODEL=claude-sonnet-5
docksec Dockerfile
Antes de que qualquer conteúdo seja enviado a um provedor de IA, valores com aparência de segredo (palavras-passe, tokens, chaves de API, blocos de chave privada) são mascarados automaticamente. Consulte
[Fluxo de dados e privacidade](#data-flow-and-privacy).
### 5. Ou execute a imagem do contentor (nada para instalar)