Skip to content
KitploitKITPLOIT
FerramentasBlog
Log in
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
smbcrawler — smbcrawler é uma ferramenta sem rodeios que recebe credenciais e uma lista de hosts e 'crawls' (ou 'spiders') através desses compartilhamentos | Kitploit
Ferramentas/GitHubGitHub/syss-research/smbcrawler
ReconhecimentoAnálise de VulnerabilidadesExfiltração de DadosColeta de InformaçõesSegurança de RedeTestes de Penetração
GitHubsyss-research/smbcrawler

smbcrawler

smbcrawler é uma ferramenta sem rodeios que recebe credenciais e uma lista de hosts e 'crawls' (ou 'spiders') através desses compartilhamentos

Ver Repositório
1892658há 10 mesesRevisado 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

SmbCrawler

SmbCrawler é uma ferramenta prática que aceita credenciais e uma lista de hosts e 'rastreja' (ou 'spiders') por essas pastas compartilhadas. Funcionalidades:

  • aceita nomes de host, endereços IP, intervalos IP ou um arquivo xml do nmap como entrada
  • verifica permissões (a verificação de permissão de 'escrita' é opcional, porque requer criar um diretório vazio na pasta compartilhada)
  • profundidade de rastreamento personalizável
  • gera resultados em formatos legíveis por máquina ou como um relatório HTML interativo
  • suporte a pass-the-hash
  • download automático de arquivos interessantes
  • relata potenciais segredos
  • segmentado em threads
  • pausável
  • pular interativamente pastas compartilhadas e hosts individuais

Instalação

Se você precisa de instruções sobre como instalar um pacote Python, recomendo que você certifique-se de ter o pipx instalado e execute pipx install smbcrawler.

SmbCrawler pode converter automaticamente alguns arquivos binários como PDF, XLSX, DOCX, ZIP, etc., para texto simples usando MarkItDown. Como este pacote puxa muitas dependências, ele está marcado como extra. No entanto, é altamente recomendado para obter os melhores resultados. Se você deseja converter binários automaticamente, instale SmbCrawler assim:

pipx install 'smbcrawler[binary-conversion]'

Adicionar autocompletar de shell é altamente recomendado. Sendo um aplicativo Python que usa a biblioteca click, você pode adicionar autocompletar com tab para bash, zsh e fish usando o mecanismo usual.

Exemplo

Execute assim (10 threads, profundidade máxima 5):

$ smbcrawler crawl -i hosts.txt -u pen.tester -p iluvb0b -d contoso.local -t 10 -D 5

Principais mudanças na versão 1.0

SmbCrawler passou por uma grande reformulação. As mudanças mais significativas são:

  • Limpamos a CLI e introduzimos um mecanismo de "perfil" para direcionar o comportamento do crawler
  • A saída agora é um banco de dados sqlite em vez de arquivos JSON espalhados
  • As permissões agora são relatadas de forma mais granular

Os argumentos antigos da CLI sobre "arquivos interessantes", "pastas compartilhadas chatas" etc. eram confusos e complicados. Em vez disso, agora usamos "perfis"; veja abaixo para detalhes.

Além disso, percebi que basicamente reinventei bancos de dados relacionais, mas de forma muito pobre, então por que não usar sqlite diretamente? A abordagem sqlite nos permite produzir um bom relatório HTML interativo com bom desempenho. Você ainda pode exportar resultados em vários formatos se precisar usar os dados em algum pipeline de ferramentas.

A maneira antiga como SmbCrawler relatava permissões às vezes não era muito útil. Por exemplo, não é incomum que você tenha permissões de leitura no diretório raiz da pasta compartilhada, mas todos os subdiretórios são protegidos, por exemplo, para perfis de usuário. SmbCrawler agora relatará até que profundidade conseguiu ler a árvore de diretórios de uma pasta compartilhada e se atingiu o limite máximo ou poderia ter ido mais fundo se você tivesse fornecido um valor maior para o argumento de profundidade máxima.

Se você prefere a versão antiga, ela ainda está disponível no PyPI e pode ser instalada com pipx install smbcrawler==0.2.0, por exemplo.

Uso

Durante a execução, você pode usar as seguintes teclas:

  • p: pausar o crawler e pular hosts ou pastas compartilhadas individuais
  • <espaço>: imprimir o progresso atual
  • s: imprimir uma atualização de status mais detalhada

Para mais informações, execute smbcrawler -h.

Notas

Mesmo em redes de médio porte, SmbCrawler encontrará toneladas de dados. O desafio é reduzir falsos positivos.

Notas sobre permissões

É importante perceber que as permissões podem se aplicar no nível do serviço e no nível do sistema de arquivos. O serviço SMB remoto pode permitir que você autentique e sua conta de usuário pode ter permissões de leitura em princípio, mas pode não ter essas permissões no sistema de arquivos.

O SmbCrawler informará se você tem permissões para:

  • autenticar contra um alvo como convidado e listar pastas compartilhadas
  • autenticar contra um alvo com as credenciais do usuário
  • acessar uma pasta compartilhada como convidado
  • acessar uma pasta compartilhada com as credenciais do usuário
  • criar um diretório no diretório raiz da pasta compartilhada
  • o nível mais profundo de diretório de uma pasta compartilhada que pôde ser acessado (limitado pelo argumento --depth)

Como não é trivial verificar permissões de pastas compartilhadas SMB sem tentar a ação em questão, SmbCrawler tentará criar um diretório em cada pasta compartilhada. Seu nome é smbcrawler_DELETEME_<8 caracteres aleatórios> e será deletado imediatamente, mas fique atento de qualquer forma.

[!AVISO] Às vezes você tem permissão para criar diretórios, mas não para deletá-los, então você deixará um diretório vazio lá.

Perfis

Para decidir o que fazer com certas pastas compartilhadas, arquivos ou diretórios, SmbCrawler possui um recurso chamado "perfis". Dê uma olhada no perfil padrão.

Os perfis são carregados de arquivos com extensões *.yml ou *.yaml destes locais:

  • O perfil padrão embutido
  • $XDG_DATA_HOME/smbcrawler/ (~/.local/share/smbcrawler por padrão)
  • O diretório extra definido por --extra-profile-directory
  • Os arquivos extras definidos por --extra-profile-file

Perfis de cada local substituem definições anteriores.

O valor regex define se um perfil corresponde, e o último perfil correspondente será usado. Todas as expressões regulares são insensíveis a maiúsculas/minúsculas, espelhando o comportamento mais comum no mundo Windows.

Como pode ser confuso como perfis de diferentes fontes funcionam juntos, certifique-se de usar o parâmetro --dry-run. Ele mostra a configuração efetiva e não faz mais nada.

Vamos olhar cada seção, que é sempre uma lista de dicionários. Cada uma das chaves do dicionário é um rótulo arbitrário e cada um dos valores é novamente um dicionário com diferentes propriedades.

Arquivos

  • comment: Uma string útil descrevendo este perfil
  • regex: Uma expressão regular que define a quais arquivos este perfil se aplica. A última regex que corresponde é a que conta.
  • regex_flags: Um array de flags que serão passadas para a função match da regex
  • high_value (padrão: false): Se um arquivo é de "alto valor", sua presença será relatada, mas não será necessariamente baixado (pense em discos rígidos virtuais - importantes, mas grandes demais para serem baixados automaticamente)
  • download (padrão: true): Se true, os primeiros 200 KiB serão baixados (ou o arquivo inteiro se high_value=true) e analisados em busca de segredos

Pastas compartilhadas e diretórios

  • comment, regex, regex_flags: Mesmo que acima
  • high_value: sua presença será relatada e a profundidade de rastreamento alterada para infinito
  • crawl_depth: Rastreie esta pasta compartilhada ou diretório até uma profundidade diferente da definida pelo argumento --depth

Segredos

  • comment, regex_flags: Mesmo que acima
  • regex: Uma expressão regular correspondente ao segredo. O próprio segredo pode ser um grupo nomeado com o nome secret.

Fluxo de trabalho típico

Faz sentido primeiro executar SmbCrawler com profundidade de rastreamento 1 para ter uma ideia do que se está lidando. Nesta primeira execução, você pode habilitar a verificação de escrita com -w:

$ smbcrawler -C permissions_check.crwl crawl -D1 -t10 -w \
    -i <ARQUIVO DE ENTRADA> -u <USUÁRIO> -d <DOMÍNIO> -p <SENHA>
Baixar ferramenta