Crunch Gerador de WordList

Publicado por Igor Matsunaga em

O crunch é um gerador de lista de palavras onde você pode especificar um conjunto de caracteres padrão ou um conjunto de caracteres que você deseja especificar. Com o crunch você pode gerar todas as combinações e permutações possíveis. Então não vamos perder tempo procurando por wordlists pesadas e que muitas vezes são ineficientes por questões linguísticas e desenvolver nossa própria lista.

Características

  • Crunch gera listas de palavras em ambas as formas de combinação e permutação;
  • Pode dividir a saída por número de linhas ou tamanho de arquivo;
  • Retomar o apoio;
  • Padrão agora suporta números e símbolos;
  • Padrão agora suporta caracteres maiúsculos e minúsculos separadamente;
  • Adiciona um relatório de status ao gerar vários arquivos;
  • Nova opção -l para suporte literal de @,% ^;
  • Nova opção -d para limitar caracteres duplicados veja o arquivo man para detalhes;
  • Suporte unicode;

Uso

O uso do crunch é muito simples, e se tem com o comando:

#  crunch <min> <max> [opções]  

min e max são referentes aos comprimentos mínimo e máximo (respectivamente) . Por padrão, o charset não é obrigatório, mas você pode usá-lo para limitar os caracteres da sua lista de palavras. Se você optar por usar o charset , deverá manter a ordem correta, que é lowUP123 @% # (letras minúsculas, depois letras maiúsculas, números e finalmente símbolos). Você pode pular qualquer um deles, mas o pedido deve permanecer sempre o mesmo.

Opções:

  • -b: o tamanho máximo da lista de palavras (requer -o START) ;
  • -c: números de linhas para escrever na lista de palavras (requer -o START) ;
  • -d: limita o número de caracteres duplicados ;
  • -e: para de gerar palavras em um determinado string ;
  • -f: especifica uma lista de conjuntos de caracteres do arquivo charset.lst ;
  • -i: inverte a ordem dos caracteres na lista de palavras;
  • -l: permite a interpretação literal de @,% ^ ao usar -t ;
  • -o: o arquivo de lista de saída ;
  • -p: imprime permutações sem repetir caracteres (não pode ser usado com -s) ;
  • -q: Como a opção -p, exceto a leitura das sequências de um arquivo especificado ;
  • -r: retoma uma sessão anterior (não pode ser usada com -s) ;
  • -s : especifique uma string específica para iniciar a lista de palavras com;
  • -t: define um padrão específico de @,% ^ ;
  • -z: comprime o arquivo da lista de saída, acompanhado de -o ;

Referência

  • @ representa letras minúsculas ;
  • , representa letras maiúsculas ;
  • % representa números ;
  • ^ representa caracteres especiais;

Exemplos Simples:

# crunch 4 6 1234567890 -o /root/numerica6-8.txt

Será gerado um arquivo numerica6-8.txt no diretório /root com todas as combinações possíveis dos números de 0 a 9. O arquivo fica assim;

120347
120348
120349
120350…

# crunch 9 9 1234567890 -t [email protected]@@@ -o /tmp/wordlist-maria.txt

Assim, você terá resultados como os seguintes:

maria0070
maria0000
maria9091
maria0113…

O “@” marca os lugares que serão substituídos pelos caracteres indicados na linha de comando. Portanto, você pode colocá-los em qualquer lugar da string. Por exemplo, @@maria modificaria apenas os dois primeiros caracteres e adicionaria “maria” ao final, gerando senhas como:

12maria
AAmaria
A3maria
u9maria…

logoNSW

Charset.lst

O arquivo charset.lst (que já vem compilado no Kali em /usr/share/crunch) tem como objetivo facilitar a sua vida oferecendo listas de caracteres pré-definidas, assim você não precisa especificar todos os caracteres que deseja utilizar na sua wordlist na mão. Basta especificar o nome no arquivo charset.lst.

Alguns dos conjuntos de caracteres oferecidos pelo charset.lst são:

  • lalpha: apenas letras minúsculas;
  • ualpha: apenas letras maiúsculas;
  • lalpha-numeric: letras minúsculas e números;
  • ualpha-numeric: letras maiúsculas e números;
  • lalpha-numeric-all-space: letras minúsculas, números e caracteres especiais como ?, ;, :, espaço, etc.;
  • ualpha-numeric-all-space: letras maiúsculas, números e caracteres especiais como ?, ;, :, espaço, etc.;
  • mixalpha: letras minúsculas e maiúsculas;
  • mixalpha-numeric-all-space: letras maiúsculas, minúsculas, números, caracteres especiais e espaço.
# crunch 4 8 -f charset.lst mixalpha -o /root/lista-com-charset.txt

Este comando gerará uma wordlist de no mínimo 4 caracteres, no máximo 8, e irá utilizar o conjunto de caracteres mixalpha (letras maiúsculas e minúsculas), escrevendo todo o resultado no arquivo /root/lista-com-charset.txt.

Você também pode utilizar o “@” com o charset.lst. Ficaria assim:

# crunch 8 8 -f charset.lst mixalpha-numeric-all-space -t @@[email protected]@@ -o /root/wordlist-gigante.txt

O comando acima irá gerar palavras de 8 caracteres, combinando abc com qualquer outro caractere possível e irá escrever o resultado no arquivo /root/wordlist-gigante.txt. Gerar uma lista dessa poderá demorar bastante, dependendo da máquina que você está usando (também irá ocupar um espaço considerável no disco).

Outras opções do crunch

Além das opções que já foram citadas nos parágrafos anteriores, você ainda pode utilizar as seguintes:

-s: permite definir em qual string o crunch irá começar a gerar senhas;
-c : define quantos resultados serão escritos no arquivo de saída (só funciona se você utilizar a opção -o START)

Além disso, definir os caracteres na mão (diretamente na linha de comando) não é obrigatório. Se você não definir quais caracteres deverão ser utilizados para gerar as strings, o crunch irá assumir “abcdefghijklmnopqrstuvwxyz” como os caracteres que participação da combinação para geração de senhas

# crunch 4 4 -f charset.lst mixalpha-numeric-all-space -o /root/thekingwordlist4-4.txt

Isto gerará em alguns minutos uma wordlist de mais ou menos 350 megas em txt de todas as combinações possíveis que contém letras maiúsculas, minúsculas, números, caracteres especiais e espaço. Senhas altamente complexas! Agora para gerar uma wordlist de senhas complexas de 10 dígitos, no lugar de 4 4 coloque 10 10. CUIDADO: o arquivo ficará muito grande e irá demorar bastante para gerar.

Lista Temporária

Um fato muito interessante é a possibilidade da criação de uma wordlist temporária, ou seja, não há necessidade de gastar espaço em disco para realizar um ataque. Para realizar este procedimento basta usar algum dos comandos do crunch acima, e após, adicionar o pipe e subsequentemente o comando do ataque a ser realizado.

Exemplo

Crunch em conjunto com o aircrack:

crunch 8 8 abcdefghijklmnopqrstuvxz 1234567890 | aircrack --bssid 00:1D:AA:9D:27:AC -w- 'root/handshakes/Cafelocuraceb-00:1D:AA:9D:27:AC.cap

Que a segurança esteja com você!!

[products limit=”16″ columns=”4″ orderby=”rating”]

Igor Matsunaga

Diretor Técnico da NSWorld, entusiasta da área hacking a mais de 6 anos, hacker ético, formando em Segurança da Informação.

1 comentário

Cracking WPA com Aircrack-ng - NSW % · junho 9, 2019 às 4:53 pm

[…] Existe um pequeno dicionário que vem com aircrack-ng – “password.lst”. Este arquivo pode ser encontrado no diretório “test” do código-fonte do aircrack-ng. O Wiki FAQ tem uma extensa lista de fontes de dicionário. Você pode usar o John the Ripper (JTR) para gerar sua própria lista e enviá-la para o aircrack-ng ou utilizar o Crunch. […]

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *