Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
DependencyCheck — OWASP dependency-check é um utilitário de análise de composição de software que detecta vulnerabilidades divulgadas publicamente em dependências de aplicações. | Kitploit
Ferramentas/GitHubGitHub/dependency-check/dependencycheck
Scanners de VulnerabilidadesAnálise de VulnerabilidadesDevSecOpsSegurança da Cadeia de Suprimentos
GitHubdependency-check/dependencycheck

DependencyCheck

OWASP dependency-check é um utilitário de análise de composição de software que detecta vulnerabilidades divulgadas publicamente em dependências de aplicações.

Ver Repositório

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar
Site
7.7k1.4khá 2 diasRevisado pelo Kitploit

Maven Central Build and Deploy Snapshot CII Best Practices Apache 2.0 License

Black Hat Arsenal Black Hat Arsenal Black Hat Arsenal Black Hat Arsenal

Dependency-Check

O Dependency-Check é uma ferramenta de Análise de Composição de Software (SCA) que tenta detectar vulnerabilidades divulgadas publicamente contidas nas dependências de um projeto. Ele faz isso determinando se existe um identificador de Enumeração Comum de Plataforma (CPE) para uma determinada dependência. Se encontrado, ele gerará um relatório com links para as entradas de CVE associadas.

A documentação e os links para os binários de release de produção podem ser encontrados nas github pages. Além disso, mais informações sobre a arquitetura e as formas de estender o dependency-check podem ser encontradas no wiki.

Aviso

Este produto usa a API NVD, mas não é endossado nem certificado pela NVD.

Atualização Obrigatória para 12.1.0+

Devido a mudanças de compatibilidade da API NVD, uma atualização é obrigatória. Consulte #7463 para obter mais informações.

Mudanças de Quebra na 11.0.0

  • Agora é necessário Java 11 para executar o dependency-check 11.0.0 ou superior

  • Atualização do banco de dados H2

    O 11.0.0 contém mudanças de quebra no uso do banco de dados H2 local. Ocorrerá um download completo dos dados da NVD. Observe que, se você estiver usando um diretório de dados compartilhado, o arquivo do banco de dados h2 não é compatível com versões mais antigas do dependency-check. Se você tiver problemas, talvez seja necessário executar uma purga:

    • gradle: ./gradlew dependencyCheckPurge
    • maven: mvn org.owasp:dependency-check-maven:11.0.0:purge
    • cli: dependency-check.sh --purge

Outros avisos

Chave da API NVD Altamente Recomendada

O dependency-check mudou do uso do data-feed da NVD para a API NVD desde o 9.0.0+ (janeiro de 2024). Os usuários do dependency-check são fortemente incentivados a obter uma Chave da API NVD; consulte https://nvd.nist.gov/developers/request-an-api-key Sem uma Chave da API NVD, as atualizações do dependency-check serão extremamente lentas. Consulte a documentação das integrações cli, maven, gradle ou ant para saber como definir a chave da API NVD.

A Chave da API NVD, CI e Limitação de Taxa

A API NVD aplica limites de taxa (rate limits). Se você estiver usando uma única API KEY e ocorrerem múltiplas compilações, você poderá atingir o limite de taxa e receber erros 403. Em um ambiente de CI, é necessário usar uma estratégia de cache.

Autenticação obrigatória do Sonatype OSS Index e migração para o Sonatype Guide

Em setembro de 2025, o Sonatype OSS Index começou a exigir o uso de tokens de API para autenticação. Em abril de 2026, teve início uma migração subsequente para o Sonatype Guide, dando início a uma transição para o uso de Tokens de API do Sonatype Guide, que estão planejados para substituir as chaves/tokens legados da API do OSS Index antes do final de 2026.

Sem credenciais, o Dependency Check desabilitará automaticamente o analisador do OSS Index. Consulte a documentação das integrações CLI, Maven, Gradle ou Ant para saber como definir as credenciais do analisador para usar um token do Sonatype Guide ou uma chave legada da API do OSS Index.

Se você deseja usar o Sonatype OSS Index (via Guide), deve configurar o Dependency-Check e considerar as implicações da migração para o Sonatype Guide; cujo modelo comercial/de uso mudou. Consulte a documentação do analisador para obter mais informações.

Ambiente de Build Gradle

Com o 9.0.0+, os usuários podem encontrar problemas com exceções NoSuchMethodError devido à resolução de dependências. Se você encontrar esse problema, precisará fixar (pin) algumas das dependências transitivas do dependency-check em versões específicas. Por exemplo:

/buildSrc/build.gradle

root@kitploit:~
dependencies {
    constraints {
        // org.owasp.dependencycheck needs at least this version of jackson. Other plugins pull in older versions..
        add("implementation", "com.fasterxml.jackson:jackson-bom:2.21.2")

        // org.owasp.dependencycheck needs these versions. Other plugins pull in older versions..
        add("implementation", "org.apache.commons:commons-lang3:3.20.0")
        add("implementation", "org.apache.commons:commons-text:1.15.0")
    }
}

Requisitos

Versão do Java

Versão Mínima do Java: Java 11

Acesso à Internet

O OWASP dependency-check requer acesso a vários recursos hospedados externamente. Para obter mais informações, consulte Acesso à Internet Necessário.

Ferramentas de Build

Para analisar algumas pilhas de tecnologia, o dependency-check pode exigir que outras ferramentas de desenvolvimento estejam instaladas. Algumas das análises listadas abaixo podem ser experimentais e exigir que os analisadores experimentais estejam habilitados.

  1. Para analisar assemblies .NET, o runtime dotnet 8 ou o SDK deve estar instalado.
    • Assemblies que visam outros runtimes podem ser analisados - mas o 8 é necessário para executar a análise.
  2. Se estiver analisando projetos GoLang, o go deve estar instalado.
  3. A análise de projetos Elixir requer o mix_audit.
  4. A análise de projetos npm, pnpm e yarn requer que npm, pnpm ou yarn estejam instalados.
    • As análises realizadas utilizam o respectivo recurso audit de cada um.
  5. A análise de Ruby é um wrapper em torno do bundle-audit, que deve estar instalado.

Versões Atuais

Plugin Jenkins

Para instruções sobre o uso do plugin Jenkins, consulte a página do Plugin OWASP Dependency-Check.

Linha de Comando

Instruções mais detalhadas podem ser encontradas nas github pages do dependency-check. A CLI mais recente pode ser baixada do github na seção de releases.

Baixando a versão mais recente:

root@kitploit:~
$ VERSION=$(curl -s https://dependency-check.github.io/DependencyCheck/current.txt)
$ curl -Ls "https://github.com/dependency-check/DependencyCheck/releases/download/v$VERSION/dependency-check-$VERSION-release.zip" --output dependency-check.zip

Em *nix

root@kitploit:~
$ ./bin/dependency-check.sh -h
$ ./bin/dependency-check.sh --out . --scan [path to jar files to be scanned]

No Windows

root@kitploit:~
> .\bin\dependency-check.bat -h
> .\bin\dependency-check.bat --out . --scan [path to jar files to be scanned]

No Mac com Homebrew Nota - usuários de homebrew que estiverem atualizando da 5.x para a 6.0.0 precisarão executar dependency-check.sh --purge.

root@kitploit:~
$ brew update && brew install dependency-check
$ dependency-check -h
$ dependency-check --out . --scan [path to jar files to be scanned]

Plugin Maven

Instruções mais detalhadas podem ser encontradas nas github pages do dependency-check-maven. Por padrão, o plugin está vinculado à fase verify (ou seja, mvn verify). Alternativamente, pode-se invocar diretamente o plugin via mvn org.owasp:dependency-check-maven:check.

O plugin dependency-check pode ser configurado usando o seguinte:

root@kitploit:~
<project>
    <build>
        <plugins>
            ...
            <plugin>
              <groupId>org.owasp</groupId>
              <artifactId>dependency-check-maven</artifactId>
              <executions>
                  <execution>
                      <goals>
                          <goal>check</goal>
                      </goals>
                  </execution>
              </executions>
            </plugin>
            ...
        </plugins>
        ...
    </build>
    ...
</project>

Plugin Gradle

Para instruções sobre o uso do Plugin Gradle, consulte a github page do dependency-check-gradle.

Tarefa Ant

Para instruções sobre o uso da Tarefa Ant, consulte a github page do dependency-check-ant.

Pré-requisitos de Desenvolvimento

Para que a instalação seja concluída com sucesso, você deve ter os seguintes componentes instalados:

  • Java: java -version 25.0
  • Maven: mvn -version 3.6.3 e superior

Os casos de teste requerem:

  • dotnet core versão 8.0
  • Go: go version 1.12 e superior
  • Ruby bundler-audit
  • Yarn
  • pnpm

Uso em Desenvolvimento

As instruções a seguir descrevem como compilar e usar o snapshot atual. Embora haja toda a intenção de manter um snapshot estável, é recomendado que as versões de release listadas acima sejam usadas.

O repositório possui alguns arquivos grandes devido aos recursos de teste. A equipe tentou limpar o histórico o máximo possível. No entanto, é recomendado que você faça um clone raso (shallow clone) para economizar tempo:

root@kitploit:~
git clone --depth 1 https://github.com/dependency-check/DependencyCheck.git

Em *nix

root@kitploit:~
$ mvn -s settings.xml install
$ ./cli/target/release/bin/dependency-check.sh -h
$ ./cli/target/release/bin/dependency-check.sh --out . --scan ./src/test/resources

No Windows

root@kitploit:~
> mvn -s settings.xml install
> .\cli\target\release\bin\dependency-check.bat -h
> .\cli\target\release\bin\dependency-check.bat --out . --scan ./src/test/resources

Em seguida, carregue o 'dependency-check-report.html' resultante no seu navegador favorito.

Compilando sem Executar os Testes

Para acelerar seus ciclos de desenvolvimento, você também pode compilar sem executar os testes a cada vez:
mvn -s settings.xml install -DskipTests=true

Lembre-se de executar os testes pelo menos uma vez antes de abrir o PR. :)

IntelliJ Idea

Para depurar seus testes no IntelliJ Idea, você pode introduzir uma configuração maven que executa seu teste e ativa a depuração com breakpoints etc.
Basicamente, você faz o que está descrito em https://www.jetbrains.com/help/idea/work-with-tests-in-maven.html#run_single_test e define o forkCount como 0, caso contrário a depuração não funcionará.

Passo a passo:

  • Run -> Edit Configurations
  • + (Add new configuration) -> Maven
  • Dê um nome à Configuração, por exemplo, Run tests
  • Escolha o diretório de trabalho, por exemplo, core
  • Em command line, insira -DforkCount=0 -f pom.xml -s ../settings.xml test
  • Pressione OK
  • Run -> Debug e escolha a configuração de execução recém-criada

O IntelliJ agora executará os testes do subprojeto core com a depuração habilitada. Breakpoints definidos em qualquer lugar do código devem funcionar.

Testar Apenas uma Função ou uma Classe

Se você quiser acelerar seus ciclos de desenvolvimento, também pode testar apenas uma função ou uma classe de teste.
Isso funciona adicionando -Dtest=MyTestClass ou -Dtest=MyTestClass#myTestFunction à configuração de execução. A linha de comando completa na configuração de execução seria então:

-Dtest=MyTestClass#myTestFunction -DforkCount=0 -f pom.xml -s ../settings.xml test

Docker

No exemplo a seguir, presume-se que o código-fonte a ser verificado está no diretório de trabalho atual e os relatórios serão gravados em $(pwd)/odc-reports. Diretórios persistentes de dados e cache são usados, permitindo que você destrua o contêiner após a execução.

Para Linux:

root@kitploit:~
#!/bin/sh

DC_VERSION="latest"
DC_DIRECTORY=$HOME/OWASP-Dependency-Check
DC_PROJECT="dependency-check scan: $(pwd)"
DATA_DIRECTORY="$DC_DIRECTORY/data"
CACHE_DIRECTORY="$DC_DIRECTORY/data/cache"

if [ ! -d "$DATA_DIRECTORY" ]; then
    echo "Initially creating persistent directory: $DATA_DIRECTORY"
    mkdir -p "$DATA_DIRECTORY"
fi
if [ ! -d "$CACHE_DIRECTORY" ]; then
    echo "Initially creating persistent directory: $CACHE_DIRECTORY"
    mkdir -p "$CACHE_DIRECTORY"
fi

# Make sure we are using the latest version
docker pull owasp/dependency-check:$DC_VERSION

docker run --rm \
    -e user=$USER \
    -u $(id -u ${USER}):$(id -g ${USER}) \
    --volume $(pwd):/src:z \
    --volume "$DATA_DIRECTORY":/usr/share/dependency-check/data:z \
    --volume $(pwd)/odc-reports:/report:z \
    owasp/dependency-check:$DC_VERSION \
    --scan /src \
    --format "ALL" \
    --project "$DC_PROJECT" \
    --out /report
    # Use suppression like this: (where /src == $pwd)
    # --suppression "/src/security/dependency-check-suppression.xml"

Para Windows:

root@kitploit:~
@echo off

set DC_VERSION="latest"
set DC_DIRECTORY=%USERPROFILE%\OWASP-Dependency-Check
SET DC_PROJECT="dependency-check scan: %CD%"
set DATA_DIRECTORY="%DC_DIRECTORY%\data"
set CACHE_DIRECTORY="%DC_DIRECTORY%\data\cache"

IF NOT EXIST %DATA_DIRECTORY% (
    echo Initially creating persistent directory: %DATA_DIRECTORY%
    mkdir %DATA_DIRECTORY%
)
IF NOT EXIST %CACHE_DIRECTORY% (
    echo Initially creating persistent directory: %CACHE_DIRECTORY%
    mkdir %CACHE_DIRECTORY%
)

rem Make sure we are using the latest version
docker pull owasp/dependency-check:%DC_VERSION%

docker run --rm ^
    --volume %CD%:/src ^
    --volume %DATA_DIRECTORY%:/usr/share/dependency-check/data ^
    --volume %CD%/odc-reports:/report ^
    owasp/dependency-check:%DC_VERSION% ^
    --scan /src ^
    --format "ALL" ^
    --project "%DC_PROJECT%" ^
    --out /report
    rem Use suppression like this: (where /src == %CD%)
    rem --suppression "/src/security/dependency-check-suppression.xml"

Compilando a Partir do Código-Fonte

Para compilar o dependency-check (usando Java 11), execute o comando:

root@kitploit:~
mvn -s settings.xml install

Executando o dependency-check no dependency-check

O dependency-check referencia várias dependências vulneráveis que nunca são usadas, exceto como recursos de teste. Todas essas dependências de teste opcionais estão incluídas no perfil test-dependencies. Para executar o dependency-check contra ele mesmo, basta excluir o perfil test-dependencies:

root@kitploit:~
mvn org.owasp:dependency-check-maven:aggregate -P-test-dependencies -DskipProvidedScope=true

Compilando a Documentação

A documentação nas github pages é gerada a partir deste repositório:

root@kitploit:~
mvn -s settings.xml site site:stage

Quando terminar, aponte seu navegador para ./target/staging/index.html.

Construindo a Imagem Docker

Para construir a imagem docker do dependency-check, execute o comando:

root@kitploit:~
mvn -s settings.xml install
./docker-build.sh

Licença

A permissão para modificar e redistribuir é concedida sob os termos da licença Apache 2.0. Consulte o arquivo LICENSE.txt para obter a licença completa.

O Dependency-Check faz uso de várias outras bibliotecas de código aberto. Consulte o arquivo NOTICE.txt para obter mais informações.

Este produto usa a API NVD, mas não é endossado nem certificado pela NVD.

Copyright (c) 2012-2025 Jeremy Long. Todos os direitos reservados.

Baixar ferramenta