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
goblob — Uma ferramenta rápida de enumeração para blobs do Azure Storage publicamente expostos. | Kitploit
Ferramentas/GitHubGitHub/macmod/goblob
ReconhecimentoScanners de VulnerabilidadesColeta de InformaçõesTestes de PenetraçãoSegurança na Nuvem
GitHubmacmod/goblob

goblob

Uma ferramenta rápida de enumeração para blobs do Azure Storage publicamente expostos.

Ver Repositório
1238há 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

Goblob 🫐

Go Report Card

Goblob é uma ferramenta de enumeração leve e rápida, projetada para ajudar na descoberta de informações sensíveis expostas publicamente em blobs do Azure, o que pode ser útil para diversos fins de pesquisa, como avaliações de vulnerabilidades, testes de penetração e reconhecimento.

Aviso. O Goblob criará goroutines individuais para cada nome de contêiner a ser verificado em cada conta de armazenamento, limitado apenas pelo número máximo de goroutines simultâneas especificado na flag -goroutines. Essa implementação pode esgotar a largura de banda rapidamente na maioria dos casos com a wordlist padrão, ou potencialmente custar muito dinheiro se você estiver usando a ferramenta em um ambiente de nuvem. Certifique-se de entender o que está fazendo antes de executar a ferramenta.

Instalação

go install github.com/Macmod/goblob@latest

Uso

Para usar o goblob, basta executar o seguinte comando:

root@kitploit:~
$ ./goblob <nomecontaarmazenamento>

Onde <nomecontaarmazenamento> é a conta de armazenamento alvo para enumerar URLs públicas de blob storage do Azure.

Você também pode especificar uma lista de nomes de contas de armazenamento para verificar:

root@kitploit:~
$ ./goblob -accounts contas.txt

Por padrão, a ferramenta usará uma lista de nomes comuns de contêineres do Azure Blob Storage para construir URLs potenciais. No entanto, você também pode especificar uma lista personalizada de nomes de contêineres usando a opção -containers. Por exemplo:

root@kitploit:~
$ ./goblob -accounts contas.txt -containers wordlists/goblob-folder-names.txt

A ferramenta também suporta a saída dos resultados para um arquivo usando a opção -output:

root@kitploit:~
$ ./goblob -accounts contas.txt -containers wordlists/goblob-folder-names.txt -output resultados.txt

Se você quiser fornecer contas para testar via stdin, também pode omitir -accounts (ou o nome da conta) completamente:

root@kitploit:~
$ cat contas.txt | ./goblob

Wordlists

O Goblob vem com wordlists básicas que podem ser usadas com a opção -containers:

  • wordlists/goblob-folder-names.txt (padrão) - Adaptação da aws-s3-bucket-wordlist do koaj - uma wordlist contendo nomes genéricos de buckets que provavelmente são usados como nomes de contêineres.
  • wordlists/goblob-folder-names.small.txt - Subconjunto da wordlist padrão contendo apenas palavras que foram encontradas como nomes de contêineres em um experimento real com mais de 35 mil contas de armazenamento distintas + palavras da wordlist padrão que fazem parte do corpus NLTK.
  • wordlists/goblob-folder-names.micro.txt - Subconjunto da wordlist pequena contendo apenas palavras que foram encontradas como nomes de contêineres em um experimento real com mais de 35 mil contas de armazenamento distintas.

Flags Opcionais

O Goblob fornece várias flags que podem ser ajustadas para melhorar o processo de enumeração:

  • -goroutines=N - Número máximo de goroutines simultâneas permitidas (padrão: 5000).
  • -blobs=true - Relatar a URL de cada blob em vez da URL dos contêineres (padrão: false).
  • -verbose=N - Definir nível de verbosidade (padrão: 1, mínimo: 0, máximo: 3).
  • -maxpages=N - Número máximo de páginas de contêiner a percorrer em busca de blobs (padrão: 20, defina como -1 para desabilitar o limite ou como 0 para evitar listar blobs completamente e apenas verificar se o contêiner é público)
  • -timeout=N - Tempo limite para requisições HTTP (segundos, padrão: 90)

Por exemplo, se você deseja apenas encontrar contêineres publicamente expostos usando listas grandes de contas de armazenamento e nomes de contêineres, deve usar -maxpages=0 para evitar que as goroutines paginem os resultados. Em seguida, execute novamente no conjunto de resultados encontrados com -blobs=true e -maxpages=-1 para realmente obter as URLs dos blobs.

Se, por outro lado, você quiser testar uma pequena lista de nomes de contêineres muito populares contra um grande conjunto de contas de armazenamento, você pode tentar -invertsearch=true com -maxpages=0, para ver as contas públicas para cada nome de contêiner em vez dos nomes de contêineres para cada conta de armazenamento.

Você também pode tentar alterar -goroutines, -timeout e -maxidleconns, -maxidleconnsperhost e -maxconnsperhost e -skipssl para aproveitar melhor sua largura de banda e encontrar resultados mais rapidamente.

Experimente as flags para descobrir o que funciona melhor para você ;-)

Exemplo

asciicast

Contribuindo

Contribuições são bem-vindas abrindo uma issue ou enviando um pull request.

TODO

  • Verificar domínio do blob quanto a NXDOMAIN antes de tentar a wordlist para economizar largura de banda (talvez)
  • Melhorar parâmetros padrão para melhor desempenho

Nuvem de Palavras

Uma visualização interessante dos nomes de contêineres populares encontrados em meus experimentos com a ferramenta:

wordcloud.png

Se você quiser saber mais sobre meus experimentos e o assunto em geral, dê uma olhada no meu artigo:

  • FireShellSecurity Team - The Dangers of Exposed Azure Blobs

Licença

The MIT License (MIT)

Copyright (c) 2023 Artur Henrique Marzano Gonzaga

A permissão é concedida, gratuitamente, a qualquer pessoa que obtenha uma cópia deste software e dos arquivos de documentação associados (o "Software"), para lidar com o Software sem restrição, incluindo, sem limitação, os direitos de usar, copiar, modificar, mesclar, publicar, distribuir, sublicenciar e/ou vender cópias do Software, e permitir que as pessoas a quem o Software é fornecido o façam, sob as seguintes condições:

O aviso de direitos autorais acima e este aviso de permissão devem ser incluídos em todas as cópias ou partes substanciais do Software.

O SOFTWARE É FORNECIDO "COMO ESTÁ", SEM GARANTIA DE QUALQUER TIPO, EXPRESSA OU IMPLÍCITA, INCLUINDO, MAS NÃO SE LIMITANDO ÀS GARANTIAS DE COMERCIALIZAÇÃO, ADEQUAÇÃO A UM PROPÓSITO ESPECÍFICO E NÃO VIOLAÇÃO. EM NENHUM CASO OS AUTORES OU DETENTORES DOS DIREITOS AUTORAIS SERÃO RESPONSÁVEIS POR QUALQUER REIVINDICAÇÃO, DANOS OU OUTRA RESPONSABILIDADE, SEJA EM AÇÃO DE CONTRATO, ATO ILÍCITO OU DE OUTRA FORMA, DECORRENTE DE, OU EM CONEXÃO COM O SOFTWARE OU O USO OU OUTRAS NEGOCIAÇÕES NO SOFTWARE.

Baixar ferramenta
  • -maxidleconns=N - Parâmetro de transporte MaxIdleConns para o cliente HTTP (padrão: 100)
  • -maxidleconnsperhost=N - Parâmetro de transporte MaxIdleConnsPerHost para o cliente HTTP (padrão: 10)
  • -maxconnsperhost=N - Parâmetro de transporte MaxConnsPerHost para o cliente HTTP (padrão: 0)
  • -skipssl=true - Pular verificação SSL (padrão: false)
  • -invertsearch=true - Enumerar contas para cada contêiner em vez de contêineres para cada conta (padrão: false)