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
confused — Ferramenta para verificar vulnerabilidades de confusão de dependências em múltiplos sistemas de gerenciamento de pacotes. | Kitploit
Ferramentas/GitHubGitHub/visma-prodsec/confused
Análise de VulnerabilidadesSegurança da Cadeia de Suprimentos
GitHubvisma-prodsec/confused

confused

Ferramenta para verificar vulnerabilidades de confusão de dependências em múltiplos sistemas de gerenciamento de pacotes.

Ver Repositório
7871095há 3 anosRevisado pelo Kitploit

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

Confused

Uma ferramenta para verificar namespaces livres remanescentes para nomes de pacotes privados referenciados na configuração de dependências para Python (pypi) requirements.txt, JavaScript (npm) package.json, PHP (composer) composer.json ou MVN (maven) pom.xml.

O que é isso?

Em 9 de fevereiro de 2021, o pesquisador de segurança Alex Birsan publicou um artigo que abordou diferentes falhas na ordem de resolução em ferramentas de gerenciamento de dependências presentes em múltiplos ecossistemas de linguagens de programação.

A Microsoft publicou um whitepaper descrevendo maneiras de mitigar o impacto, enquanto a causa raiz ainda permanece.

Interpretando a saída da ferramenta

O confused simplesmente lê um arquivo de definição de dependências de uma aplicação e verifica os repositórios públicos de pacotes para cada entrada de dependência nesse arquivo. Ele irá relatar todos os nomes de pacotes que não são encontrados nos repositórios públicos - um estado que implica que um pacote pode estar vulnerável a esse tipo de ataque, enquanto esse vetor ainda não foi explorado.

Isso, no entanto, não significa que uma aplicação não esteja sendo ativamente explorada. Se você sabe que seu software está usando repositórios privados de pacotes, você deve garantir que os namespaces para seus pacotes privados foram reivindicados por uma parte confiável (normalmente você mesmo ou sua empresa).

Falsos positivos conhecidos

Alguns ecossistemas de empacotamento, como npm, têm um conceito chamado "escopos" que podem ser privados ou públicos. Em resumo, significa um namespace que tem um nível superior - o escopo. Os escopos não são inerentemente visíveis publicamente, o que significa que o confused não pode detectar de forma confiável se foi reivindicado. Se sua aplicação usa nomes de pacotes com escopo, você deve garantir que uma parte confiável tenha reivindicado o nome do escopo nos repositórios públicos.

Instalação

  • Baixe um binário pré-compilado da página de releases, descompacte e execute!

    ou

  • Se você tem um compilador Go recente instalado: go get -u github.com/visma-prodsec/confused (o mesmo comando funciona para atualizar)

    ou

  • git clone https://github.com/visma-prodsec/confused ; cd confused ; go get ; go build

Uso

root@kitploit:~
Usage:
 confused [-l LANGUAGENAME] depfilename.ext

Usage of confused:
  -l string
        Package repository system. Possible values: "pip", "npm", "composer", "mvn", "rubygems" (default "npm")
  -s string
        Comma-separated list of known-secure namespaces. Supports wildcards
  -v    Verbose output

Exemplo

Python (PyPI)

root@kitploit:~
./confused -l pip requirements.txt

Issues found, the following packages are not available in public package repositories:
 [!] internal_package1

JavaScript (npm)

root@kitploit:~
./confused -l npm package.json

Issues found, the following packages are not available in public package repositories:
 [!] internal_package1
 [!] @mycompany/internal_package1
 [!] @mycompany/internal_package2

# Example when @mycompany private scope has been registered in npm, using -s
./confused -l npm -s '@mycompany/*' package.json

Issues found, the following packages are not available in public package repositories:
 [!] internal_package1

Maven (mvn)

root@kitploit:~
./confused -l mvn pom.xml

Issues found, the following packages are not available in public package repositories:
 [!] internal
 [!] internal/package1
 [!] internal/_package2

Ruby (rubygems)

root@kitploit:~
./confused -l rubygems Gemfile.lock

Issues found, the following packages are not available in public package repositories:
 [!] internal
 [!] internal/package1
 [!] internal/_package2
 
Baixar ferramenta