Gerando Wordlist

As melhores wordlists, são aquelas em que conhecemos bem o nosso alvo, por exemplo, as pessoas costumam colocar em suas senhas, palavras ou números que são fáceis de memorizar ou são importantes, como datas comemorativas, nome familiares, namorado(a), número de telefone, CEP, nome do animal de estimação, time de futebol, etc. Reunir todas essas informações, já entra na área da Engenharia Social e muitas vezes as redes sociais podem nos dar essas informações de forma fácil.

Combinações de Palavras

Uma prática muito comum das pessoas é juntar algo fácil de memorizar (por exemplo uma data comemorativa) com uma sequência simples (como o ano atual ou algo como "1234"). Podemos então pegar uma mini-wordlist que contém essas sequências básicas que geralmente as pessoas usam, e combinar com uma wordlist personalizada sobre determinada pessoa

Crunch

DICA: Caso receba o erro Error: setlocale() failed, execute os comandos abaixo: export LC_CTYPE=en_US.UTF-8 export LC_ALL=en_US.UTF-8

Vamos gerar então uma wordlist com no mínimo 10 caracteres e no máximo 10 caracteres, sendo os primeiros 5 caracteres definido como "teste". Os % serão substituídos pelos dígitos de 0 a 9. O resultado será salvo em um arquivo chamado "wordlist.txt". Caso queira letras minúsculas no lugar números, utilize @ no lugar de %, ou , para letras MAIÚSCULAS, e ^ para símbolos

crunch 10 10 -t teste%%%% > wordlist.txt

Agora vamos gerar uma wordlist que tem no mínimo 10 caracteres e no máximo 10 caracteres, sendo os primeiros 5 caracteres definido como "teste". Os arrobas serão substituídos pelos caracteres "A, z, 8, 9, %" O resultado será salvo em um arquivo chamado "wordlist.txt"

crunch 10 10 Az89% -t teste@@@@ > wordlist.txt

Agora no mínimo 1 caractere e no máximo 4 caracteres, sendo estes contendo somente os dígitos 1, 2, 3 e 4.

crunch 1 4 1234 > wordlist.txt

No arquivo /usr/share/crunch/charset.lst, é possível encontrar atalhos para determinados caracteres/dígitos, por exemplo:

crunch 3 5 -f /usr/share/crunch/charset.lst lalpha > <arquivo_saida.txt> # Wordlist de "a" à "z", de 3 caracteres
crunch 8 8 -f /usr/share/crunch/charset.lst hex-lower
crunch 9 9 -f /usr/share/crunch/charset.lst numeric -t admin@@@@
crunch 9 9 -f /usr/share/crunch/charset.lst numeric -t a@d@m@i@n@ -o <wordlist-saida.txt>

Hashcat

Crie um arquivo de senhas simples, depois utilize o hashcat para adicionar mutações nessa wordlist base e gerar uma nova. No diretório /usr/share/hashcat/rules podemos ver mais scripts do hashcat.

hashcat --force --stdout <default_pass.txt> -r /usr/share/hashcat/rules/best64.rule -r /usr/share/hashcat/rules/toggles1.rule | sort -u | awk 'length($0) > 8' > <output.txt>

CUPP

Gerando Wordlist de acordo com o perfil de uma pessoa

python cupp.py

Genpmk

genpmk -f <wordlist_palavras_chave> -d <arquivo_saida> -s <ssid>

Wordlist de uma Página HTML

Cewl

Pegando todas as palavras de um site e gerando uma wordlist

# -d = Profundidade do scanner (Por padrão o valor é 2)
# -m = Quantidade mínima de caracteres para entrar na wordlist
cewl -d 2 -m 7 <site> -w <wordlist.txt>

Html2Dic

Primeiro vamos pegar o código fonte

curl http://<site>.com > <output.txt>

Agora execute

html2dic <output.txt>

Feito isso, remova os valores duplicados. Isso pode ser feito facilmento com o comando uniq do Linux

NameMash

Ferramenta que lê um arquivo de texto com nomes e sobrenomes e ele faz possíveis combinações de logins. Isso é útil para descobrir logins de rede e endereço de e-mails.

python3 namemash.py <wordlist-names.txt>

Sites

# Tutorial sobre Crunch
https://null-byte.wonderhowto.com/how-to/hack-like-pro-crack-passwords-part-4-creating-custom-wordlist-with-crunch-0156817/

# Namemash
https://gist.github.com/superkojiman/11076951

Last updated