Programa
A história é mais ou menos assim: Você criou sua imagem do Docker, marcou ela e fez a implantação. Tudo parece ótimo até que sua equipe de segurança detecta vulnerabilidades em um pacote que você nem sabia que existia. Ou pior ainda, a equipe de conformidade pede uma lista de materiais de software (SBOM) e você fica se perguntando como descobrir quais dependências vêm junto com suas imagens. As imagens dos contêineres podem ser caixas pretas, e isso é um problema quando você é responsável pelo que rola na produção.
O Docker Scout te dá uma visão geral das imagens dos seus contêineres, verificando se tem vulnerabilidades e gerando SBOMs automaticamente. Está integrado ao Docker, então não precisa instalar ou aprender a usar nenhuma ferramenta separada.
Neste guia, vou mostrar como fazer a varredura de imagens com o Docker Scout e entender os relatórios de vulnerabilidade que ele gera, para que você saiba quando faz sentido usá-lo.
Se você é novo no Docker, dê uma olhada no nosso artigosobre os 18 principais comandos do Docker. Issovai te colocar no caminho certo para criar, executar e gerenciar contêineres.
O que é o Docker Scout?
O Docker Scout é a ferramenta nativa de análise de imagens do Docker que verifica suas imagens de contêiner em busca de vulnerabilidades e gera listas de materiais de software (SBOMs).
Ele analisa tudo dentro da sua imagem, desde pacotes básicos do sistema operacional, dependências específicas do idioma, até bibliotecas de aplicativos. Depois, ele compara essas informações com bancos de dados de vulnerabilidades conhecidas. Você recebe um relatório mostrando quais pacotes têm problemas de segurança, qual a gravidade deles e quais versões os corrigiriam.
Então, em vez de usar scanners de terceiros ou esperar que as equipes de segurança identifiquem problemas após a implantação, você pode verificar as imagens bem onde você as cria. O Scout rola no Docker Desktop, pela CLI, e se integra com o Docker Hub.
Veja como ele se encaixa no ecossistema do Docker: O Docker cria e executa seus contêineres, o Docker Hub os armazena e o Docker Scout mostra o que tem dentro deles. É importante lembrar que agora faz parte da plataforma, não é um complemento separado.
O Docker Scout substitui o comando antigo docker scan, que dependia do mecanismo de varredura do Snyk. O Scout usa o próprio banco de dados de vulnerabilidades do Docker e te dá mais controle sobre o processo de verificação. Se você ainda está usando o docker scan, ele está obsoleto — o Scout é o substituto oficial e já está disponível nas versões recentes do Docker Desktop.
Instalando e ativando o Docker Scout
O Docker Scout já vem integrado no Docker Desktop 4.17 e versões mais recentes, então, se você estiver usando uma versão recente, já tem ele.
Ele funciona através da CLI do Docker e aparece na GUI do Docker Desktop. Se você estiver usando o Docker Desktop, o Scout já vem ativado por padrão — você pode começar a verificar imagens na hora.
Pra ver se o Scout tá disponível no seu sistema, dá uma olhada nesse comando:
docker scout version
Você vai ver a saída mostrando a versão da CLI do Scout e o status do plug-in.

Versão do Docker Scout
Se o comando funcionar, você está pronto para digitalizar imagens.
Se você receber um erro “comando não encontrado”, sua versão do Docker está muito antiga. Atualize o Docker Desktop para a versão mais recente para ter acesso ao Docker Scout.
Digitalizando uma imagem com o Docker Scout
Pra fazer a varredura, basta um comando, e essa é a parte fácil. O que às vezes pode ser complicado é entender o que o Scout encontra.
Analisando uma imagem
Você pode usar esse comando para verificar uma imagem local passando o nome ou a ID dela para o Docker Scout:
docker scout cves python:3.14
O Scout analisa as camadas da imagem, pega as informações do pacote e verifica se tem vulnerabilidades conhecidas. A digitalização termina em 30 segundos para a maioria das imagens.

Resultados da verificação da imagem Python 3.14
Você também pode digitalizar imagens que ainda não estão no seu computador:
docker scout cves postgres:18.1
O Scout pega os metadados do registro sem baixar a imagem completa. Isso permite que você verifique as imagens antes de baixá-las localmente.

Resultados da verificação da imagem do Postgres 18.1
Durante a análise, o Scout descompacta cada camada, identifica os pacotes instalados e as dependências e, em seguida, cruza todas as informações com seu banco de dados de vulnerabilidades. Ele rastreia pacotes do sistema operacional básico (como pacotes apt em imagens baseadas no Ubuntu) e dependências específicas de idioma (como pacotes Python ou módulos Node).
Entendendo o resultado
Identifique as vulnerabilidades por gravidade: Crítico, Alto, Médioe Baixo.
As vulnerabilidades críticas e altas precisam de atenção primeiro. São problemas que estão sendo explorados ou bugs graves que podem comprometer o seu sistema. Problemas de gravidade média são importantes, mas raramente precisam de correções imediatas. Vale a pena programar a atenção para as vulnerabilidades de baixa gravidade, mas elas geralmente não impedem as implementações.
Cada vulnerabilidade mostra qual pacote tem o problema. Você vai ver um resultado assim se rolar o relatório:

Relatório de vulnerabilidade
Isso te mostra exatamente o que está vulnerável (openssl), qual versão você está usando e qual versão corrige isso. O Scout também tem um link para os detalhes do CVE, pra você poder ler sobre a vulnerabilidade por conta própria.
A atribuição do pacote mostra de onde vêm as vulnerabilidades: pacotes de imagem base, dependências de aplicativos ou bibliotecas do sistema. Isso ajuda você a decidir se deve atualizar a imagem base, atualizar uma dependência no seu código ou esperar por uma correção upstream.
Usando o Docker Scout para gerar e visualizar SBOMs
Uma lista de materiais de software (SBOM) é um inventário completo de tudo o que está dentro da sua imagem de contêiner — todos os pacotes, bibliotecas e dependências.
Ele te mostra exatamente o que foi usado na sua imagem, até os números específicos das versões. As equipes de segurança usam SBOMs para acompanhar o que está sendo executado na produção, e as estruturas de conformidade geralmente exigem isso.
O Docker Scout gera SBOMs automaticamente quando você faz a varredura de uma imagem usando os comandos que mostrei na seção anterior. Só pra reforçar:
docker scout sbom postgres:18.1
Isso mostra a lista completa de pacotes no seu terminal. O Scout analisa as camadas da imagem e pega os metadados do pacote, depois transforma tudo num SBOM que você pode salvar ou compartilhar.
Você pode exportar a SBOM para um arquivo em vez de imprimi-la na tela:
docker scout sbom postgres:18.1 --format spdx > postgres-sbom.json

Relatório SBOM SPDX
O Scout suporta dois formatos SBOM padrão: SPDX (Troca de Dados de Pacotes de Software) e CycloneDX. Ambos são padrões amplamente utilizados na indústria. O SPDX é ótimo para revisões legais e de conformidade, enquanto o CycloneDX foca em casos de uso de segurança e rastreamento de vulnerabilidades.
Você pode alternar entre formatos com o sinalizador ` --format `:
docker scout sbom postgres:18.1 --format cyclonedx > postgres-sbom.json

Relatório SBOX CycloneDX
Depois de ter um arquivo SBOM, você pode compartilhá-lo com equipes de segurança, inseri-lo em outras ferramentas de verificação ou arquivá-lo para auditorias de conformidade.
Encontrando e entendendo CVEs com o Docker Scout
O Docker Scout encontra vulnerabilidades comparando os pacotes da sua imagem com um banco de dados de problemas de segurança conhecidos.
Quando você executa o docker scout cves, o Scout pega todos os pacotes da sua imagem — pacotes do sistema operacional, bibliotecas de idiomas, dependências de aplicativos — e depois compara cada um deles com os registros do Common Vulnerabilities and Exposures (CVE). Um CVE é uma falha de segurança divulgada publicamente com um ID exclusivo, como CVE-2024-1234.
O Scout pega os dados CVE de várias fontes:
- O Banco de Dados Nacional de Vulnerabilidades (NVD)
- Avisos de segurança das distribuições Linux
- Bancos de dados de segurança específicos para Python, Node.js, Go e outros ecossistemas
Isso quer dizer que o Scout pode detectar vulnerabilidades tanto nos pacotes do sistema operacional da sua imagem base quanto nas dependências do seu aplicativo.
Dito isso, é importante lembrar que a análise funciona de maneira diferente dependendo de onde sua imagem está localizada.
- Para imagens locais (aquelas que você criou ou baixou para o seu computador), o Scout lê as camadas da imagem diretamente do seu daemon Docker. Ele descompacta cada camada, identifica os pacotes e faz a verificação de vulnerabilidades localmente. Isso é rápido e não precisa de acesso à rede para a imagem em si.
- Para imagens remotas no Docker Hub ou outros registros, o Scout pega o manifesto da imagem e os metadados da camada sem baixar a imagem completa. Isso permite que você verifique as imagens antes de baixá-las. Os dados de vulnerabilidade ainda vêm do banco de dados do Scout, mas a análise de imagens é feita com base nos metadados do registro.
Os dois métodos mostram as mesmas informações sobre vulnerabilidades. Eles só diferem no local onde o Scout lê os dados da imagem.
Orientação para correção e recomendações de imagem base
Quando o Scout encontra uma vulnerabilidade com um patch disponível, ele mostra a versão exata que corrige o problema. Você vai ver uma saída tipo “Corrigido em: 1.2.3" ao lado de cada CVE. É isso que você precisa saber pra saber se precisa atualizar um pacote, reconstruir sua imagem com uma base mais recente ou esperar por uma correção upstream.
O Scout também recomenda atualizações da imagem base, pois mudar para uma base mais recente eliminaria vulnerabilidades. Se você estiver usando o python:3.13 e o Scout encontrar problemas nos pacotes do sistema operacional básico, ele pode sugerir a atualização para o python:3.14 ou até mesmo para uma versão de patch mais específica.
Essas recomendações aparecem quando o Scout percebe que uma tag de imagem base diferente tem menos vulnerabilidades do que a sua atual. As sugestões são fáceis de seguir — você pode simplesmente copiar a nova tag no seu Dockerfile e reconstruir.
Então, por que isso importa?
Sua imagem base tem os pacotes do sistema operacional, bibliotecas do sistema e ambientes de execução de linguagem que tudo o mais depende. Uma imagem base vulnerável significa que todos os contêineres criados a partir dela herdam essas vulnerabilidades. Quando você escolhe uma imagem base minimalista e mantida ativamente, você reduz as opções de ataque.
As imagens oficiais do Docker Hub recebem atualizações de segurança regulares, mas você ainda precisa reconstruir suas imagens para obter essas correções. Por exemplo, fazer um pull do python:3.13 hoje vai te dar pacotes diferentes dos que você teria feito há seis meses.
Usando o Docker Scout em CI/CD
As equipes colocam o Docker Scout nos pipelines de CI pra detectar vulnerabilidades antes que as imagens cheguem à produção.
A ideia é simples: analisar todas as imagens como parte do seu processo de compilação e, em seguida, rejeitar a compilação se forem encontradas vulnerabilidades críticas. Você descobre os problemas durante o desenvolvimento, em vez de depois da implantação. A maioria das equipes configura o Scout para rodar automaticamente sempre que alguém envia um novo Dockerfile ou atualiza uma imagem base.
Os pipelines geralmente verificam duas coisas:
- Regressões de vulnerabilidade - Elas comparam sua nova imagem com a versão anterior. Se a nova compilação apresentar mais vulnerabilidades críticas ou elevadas do que a anterior, o pipeline falhará. Isso evita que você acidentalmente envie uma segurança pior do que a que já está em execução.
- Desvio de política - Isso garante que sua imagem cumpra as normas de segurança. Você pode ter uma política que diga “não são permitidos CVEs críticos” ou “as imagens base devem ter menos de 30 dias”. O Scout pode aplicar essas regras automaticamente no seu fluxo de trabalho de CI.
A integração com o GitHub Actions, GitLab CI ou Jenkins funciona da mesma maneira, conceitualmente. Você cria sua imagem, executa o docker scout cves nela, analisa os resultados e decide se aprova ou reprova o pipeline com base nos seus critérios. Algumas equipes colocam o Scout nos seus fluxos de trabalho de registro de contêineres pra dar uma olhada nas imagens logo depois que elas são enviadas.
Docker Scout vs. Outros scanners de imagem
O Docker Scout não é a única ferramenta que você tem à disposição. Ele compete com ferramentas como Trivy e Snyk, mas cada uma delas tem como alvo fluxos de trabalho diferentes.
- O Trivy é um scanner de código aberto que funciona em qualquer lugar, desde máquinas locais e pipelines de CI até clusters Kubernetes. Ele verifica imagens de contêineres, sistemas de arquivos e repositórios Git. O Trivy te dá mais flexibilidade em onde e como você faz a varredura, e você não precisa de uma conta Docker para usá-lo. Pense nisso como um scanner autônomo que funciona independentemente do ecossistema do Docker.
- O Snyk foca nos fluxos de trabalho dos desenvolvedores e se integra bem com IDEs, GitHub e outras ferramentas de desenvolvimento. Além dos contêineres, ele verifica as dependências dos aplicativos, a infraestrutura como código e o código-fonte. O Snyk também te dá orientações detalhadas sobre como resolver o problema e pode abrir solicitações de pull para corrigir vulnerabilidades. Se você precisa de cobertura de segurança em toda a sua pilha, não só nos contêineres, o Snyk é uma escolha sensata.
- O Docker Scout funciona melhor quando você já está usando o Docker Desktop e o Docker Hub. A integração é nativa, não tem nenhuma configuração extra, nenhuma chave API pra gerenciar e nenhuma ferramenta separada pra aprender. O Scout verifica as imagens enviadas para o Docker Hub, e a CLI faz parte da sua instalação do Docker.
Escolha o Docker Scout se sua equipe cria e executa contêineres com ferramentas Docker e você quer visibilidade de segurança sem adicionar complexidade. Escolha o Trivy se você precisa de uma opção flexível e de código aberto que funcione em qualquer lugar. Escolha o Snyk se você quer segurança total em contêineres, código e infraestrutura com correções automáticas.
Limitações comuns e coisas que você precisa saber
O Docker Scout verifica as imagens dos contêineres, mas não fica de olho no que rola depois que você os implementa.
Ele analisa imagens estáticas - os pacotes e arquivos incorporados ao seu contêiner. Ele não consegue detectar problemas de tempo de execução, como ataques de escalonamento de privilégios, invasões de rede ou processos maliciosos que começam depois da implantação. Se você precisa monitorar a segurança em tempo real, vai precisar de ferramentas como Falco ou Sysdig, que ficam de olho no comportamento dos contêineres na produção.
O Scout também não substitui o SAST (Teste de Segurança de Aplicativos Estáticos) completo ou o DAST (Teste de Segurança de Aplicativos Dinâmicos). As ferramentas SAST analisam seu código-fonte em busca de falhas de segurança antes de você criar qualquer coisa. As ferramentas DAST testam aplicativos em execução simulando ataques. O Scout só dá uma olhada nos pacotes dentro da sua imagem compilada — ele não vai pegar vulnerabilidades na lógica do seu aplicativo ou erros de configuração no seu código.
O que o Scout faz bem é te dar uma visão do que está dentro das suas imagens e te ajudar a corrigir os problemas. Ele te diz quais pacotes estão vulneráveis, quais versões corrigem isso e quais imagens base diminuem as possibilidades de ataque. Isso torna o Scout útil para verificações de segurança durante a compilação e acompanhamento de conformidade, mas você vai precisar de outras ferramentas para cobrir todos os aspectos de segurança.
Melhores práticas para usar o Docker Scout
Aqui tá uma lista de verificação que você pode usar pra aproveitar ao máximo o Docker Scout.
-
Faça a digitalização logo no começo do seu ciclo de desenvolvimento. Use o Scout nas imagens durante o desenvolvimento local, não só na CI ou antes da implantação. Encontrar vulnerabilidades logo de cara significa que você pode corrigi-las enquanto o contexto ainda está fresco e as mudanças são baratas. Esperar até a produção significa ter que resolver problemas às pressas e sob pressão.
-
Compare imagens ao longo do tempo para acompanhar as tendências de segurança. O Scout pode mostrar se a sua segurança está melhorando ou piorando. Faça varreduras em cada compilação e compare os resultados. Se a sua nova compilação apresentar mais vulnerabilidades críticas do que a anterior, algo mudou — talvez uma atualização de dependência ou uma alteração na imagem base. Você precisa investigar.
-
Veja as descobertas do Scout como sinais de priorização, não como bloqueadores absolutos. Nem toda vulnerabilidade precisa de ação imediata. Uma CVE de baixa gravidade em uma dependência de desenvolvimento que você não usa na produção pode esperar. Uma vulnerabilidade crítica em um serviço exposto publicamente precisa de atenção imediata. Use as classificações de gravidade do Scout e o contexto do pacote para decidir o que é importante para a sua implantação específica.
-
Combine o Scout com a higiene da imagem base. Escolha imagens base mínimas e ativamente mantidas e atualize-as regularmente. Usar
python:3.14-slimem vez depython:3.14elimina os pacotes que você não precisa. Recriar suas imagens todo mês atualiza os patches de segurança na camada base. O Scout pode te dizer o que é vulnerável, mas escolher boas bases evita que muitas vulnerabilidades apareçam logo de cara.
Conclusão
O Docker Scout oferece uma maneira prática de começar a entender o que há dentro das suas imagens de contêiner.
Ele se encaixa no desenvolvimento baseado em Docker — sem precisar instalar ferramentas separadas, nem configurar contas além das que você já usa. Você executa um comando, obtém relatórios de vulnerabilidade e vê quais pacotes precisam de atualizações.
O Scout funciona melhor como parte de uma abordagem de segurança mais ampla, não como sua única opção. Combine isso com monitoramento de tempo de execução, análise de código-fonte e atualizações regulares da imagem base. Use-o para detectar vulnerabilidades durante as compilações e, em seguida, adicione outras ferramentas para cobrir o que acontece após a implantação.
Se você está se perguntando como o Docker se encaixa nos pipelines de CI/CD para machine learning, inscreva-se no nosso curso CI/CD para machine learning. Você vai ter todas as respostas numa tarde só.
Domine o Docker e o Kubernetes
Perguntas frequentes sobre o Docker Scout
Como o Docker Scout pode ajudar a automatizar as verificações de vulnerabilidades nos pipelines de CI/CD?
O Docker Scout se integra aos pipelines de CI/CD fazendo varreduras automaticamente sempre que você cria uma nova imagem. Você pode configurar seu pipeline para rejeitar compilações que apresentem vulnerabilidades críticas ou altas, impedindo que imagens inseguras cheguem à produção. O Scout verifica se há regressões de vulnerabilidades e violações de políticas, para que sua equipe detecte problemas de segurança durante o processo de compilação, em vez de após a implantação.
Quais são as principais diferenças entre o Docker Scout e outras ferramentas de verificação de contêineres, como Trivy ou Snyk?
O Docker Scout já vem integrado ao Docker e não precisa de instalação separada, o que facilita pra equipes que já usam o Docker Desktop e o Docker Hub. O Trivy é um scanner de código aberto que funciona de forma independente e em qualquer lugar, sem precisar de contas Docker ou integração. O Snyk oferece uma cobertura mais ampla em contêineres, código-fonte e infraestrutura com sugestões de correções automáticas, mas precisa de uma assinatura e configuração separadas.
Como o Docker Scout se integra com sistemas de terceiros, como GitHub ou JFrog Artifactory?
O Docker Scout pode ser chamado a partir do GitHub Actions, GitLab CI ou outras ferramentas de pipeline usando os comandos CLI do Docker. Você executa o docker scout cves como parte do seu fluxo de trabalho de compilação e, em seguida, analisa os resultados para decidir se o pipeline foi aprovado ou reprovado. Para registros como o JFrog Artifactory, você pode digitalizar imagens depois que elas forem enviadas, referenciando-as remotamente, embora a integração dependa da configuração específica do seu registro e da autenticação.
O Docker Scout pode ser usado pra monitorar a segurança dos contêineres em tempo real?
Não, o Docker Scout só verifica imagens estáticas de contêineres, não contêineres em execução. Ele analisa o que está dentro das suas imagens criadas antes ou depois da implantação, mas não monitora o comportamento em tempo de execução, como execução de processos, atividade de rede ou ataques de escalonamento de privilégios. Para monitorar a segurança em tempo real, você precisa de ferramentas específicas, como Falco ou Sysdig, que ficam de olho no comportamento dos contêineres nos ambientes de produção.
Quais são as vantagens de usar o Docker Scout para gerenciar a segurança da cadeia de suprimentos de software?
O Docker Scout gera listas de materiais de software (SBOMs) que documentam todos os pacotes e dependências em suas imagens, dando a você uma visão completa da sua cadeia de suprimentos de software. Isso ajuda com os requisitos de conformidade, resposta a incidentes e rastreamento de quais sistemas são afetados quando novas vulnerabilidades são divulgadas. O Scout também mostra de onde vêm as vulnerabilidades — imagens base, dependências de aplicativos ou bibliotecas do sistema — para que você possa rastrear os problemas de segurança até sua origem e corrigi-los no nível certo.


