Voltar às atualizações
New releaseAug 7, 2026

osv-scanner v2.5.0

Scanner de vulnerabilidades rápido e multilinguagem para dependências de código aberto. Verifica lockfiles, contêineres e diretórios de código-fonte em relação ao banco de dados OSV, com remediação guiada e suporte offline.

Compartilhar

OpenSSF Scorecard Checks codecov SLSA 3 GitHub Release

Use o OSV-Scanner para encontrar vulnerabilidades existentes que afetam as dependências do seu projeto. O OSV-Scanner fornece um frontend oficialmente suportado para o banco de dados OSV e uma interface CLI para o OSV-Scalibr, que conecta a lista de dependências de um projeto às vulnerabilidades que as afetam.

O OSV-Scanner suporta uma ampla variedade de tipos de projeto, gerenciadores de pacotes e recursos, incluindo, mas não se limitando a:

  • Linguagens: C/C++, Dart, Elixir, Go, Java, Javascript, PHP, Python, R, Ruby, Rust.
  • Gerenciadores de pacotes: npm, pip, yarn, maven, go modules, cargo, gem, composer, nuget e outros.
  • Sistemas operacionais: Detecta vulnerabilidades em pacotes de SO em sistemas Linux.
  • Contêineres: Examina imagens de contêiner em busca de vulnerabilidades em suas imagens base e pacotes incluídos.
  • Remediação guiada: Fornece recomendações para atualizações de versão de pacotes com base em critérios como profundidade de dependência, severidade mínima, estratégia de correção e retorno sobre o investimento.

O OSV-Scanner usa a biblioteca extensível OSV-Scalibr internamente para fornecer essa funcionalidade. Se uma linguagem ou gerenciador de pacotes não for suportado atualmente, abra uma solicitação de recurso.

Banco de dados subjacente

O banco de dados subjacente, OSV.dev, tem vários benefícios em comparação com bancos de dados de avisos e scanners de código fechado:

  • Cobrindo a maioria dos ecossistemas de linguagens de código aberto e sistemas operacionais (incluindo Git), é abrangente.
  • Cada aviso vem de uma fonte aberta e autoritativa (ex.: GitHub Security Advisories, RustSec Advisory Database, avisos de segurança do Ubuntu)
  • Qualquer pessoa pode sugerir melhorias aos avisos, resultando em um banco de dados de altíssima qualidade.
  • O formato OSV armazena de forma inequívoca informações sobre versões afetadas em um formato legível por máquina que mapeia com precisão a lista de pacotes de um desenvolvedor.

Tudo isso resulta em notificações de vulnerabilidade precisas e acionáveis, o que reduz o tempo necessário para resolvê-las. Confira o OSV.dev para mais detalhes!

Instalação básica

Para instalar o OSV-Scanner, consulte a seção de instalação da nossa documentação. As versões do OSV-Scanner podem ser encontradas na página de releases do repositório do GitHub. O método recomendado é baixar um binário pré-compilado para sua plataforma. Como alternativa, você pode usar go install github.com/google/osv-scanner/v2/cmd/osv-scanner@latest para compilar a partir do código-fonte.

Principais recursos

Para mais informações, leia nossa documentação detalhada para aprender como usar o OSV-Scanner. Para informações detalhadas sobre cada recurso, clique nos títulos deste README.

Observação: estas são as instruções para a versão beta mais recente do OSV-Scanner V2. Se você estiver usando a V1, confira o README e a documentação da V1.

Varredura de um diretório de código-fonte

$ osv-scanner scan source -r /path/to/your/dir

Este comando fará uma varredura recursiva no diretório especificado em busca de qualquer arquivo de pacote suportado, como package.json, go.mod, pom.xml, etc., e exibirá quaisquer vulnerabilidades encontradas.

O OSV-Scanner tem a opção de usar análise de chamadas para determinar se uma função vulnerável está sendo realmente usada no projeto, resultando em menos falsos positivos e alertas acionáveis.

O OSV-Scanner também pode detectar código C/C++ vendorizado para varredura de vulnerabilidades. Veja aqui para detalhes.

Lockfiles suportados

O OSV-Scanner suporta mais de 11 ecossistemas de linguagem e mais de 19 tipos de lockfile. Para verificar se seu ecossistema é coberto, consulte nossa documentação detalhada.

Varredura de contêineres

O OSV-Scanner também oferece suporte a varredura abrangente e com ciência de camadas para imagens de contêiner, a fim de detectar vulnerabilidades nos seguintes pacotes de sistema operacional e dependências específicas de linguagem.

Suporte a DistrosSuporte a Artefatos de Linguagem
Alpine OSGo
DebianJava
UbuntuNode
Python

Consulte a documentação completa para detalhes sobre o suporte.

Uso:

$ osv-scanner scan image my-image-name:tag

screencast da saída HTML da varredura de contêiner

Varredura de licenças

Verifique as licenças das suas dependências usando dados do deps.dev. Para um resumo:

osv-scanner --licenses path/to/repository

Para verificar contra uma lista de licenças permitidas (formato SPDX):

osv-scanner --licenses="MIT,Apache-2.0" path/to/directory

Varredura offline

Escanear seu projeto contra um banco de dados OSV local. Nenhuma conexão de rede é necessária após o download inicial do banco de dados. O banco de dados também pode ser baixado manualmente.

osv-scanner --offline --download-offline-databases ./path/to/your/dir

Remediação guiada (Experimental)

[!WARNING] A remediação guiada (o comando fix) pode ser arriscada quando executada em projetos não confiáveis. Ela pode fazer com que o gerenciador de pacotes execute scripts ou siga registros externos especificados no projeto. Certifique-se de confiar no código-fonte e nos artefatos antes de prosseguir.

Categorias