O Hashcat é conhecido como a ferramenta de quebra de senhas mais rápida do mundo. Este artigo de hoje extrairá vários parâmetros comuns e os combinará com comandos de quebra de senhas para analisar como usar o Hashcat para quebrar senhas.
Sabemos que o hashcat pode decifrar um grande número de tipos de senhas, ele pode decifrar cerca de 210 senhas, a grande maioria das quais são hash. Se você quiser decifrar uma senha através do hashcat, primeiro precisa entender a forma da senha e, em seguida, indexar o número da senha no hashcat de acordo com a forma da senha.
Vamos usar a senha: digapis e o valor de sal asdf como exemplos para mostrar a forma de alguns valores de hash.
| Nº | Nome | Tipo | Exemplo |
|---|---|---|---|
| 0 | MD5 | Hash, comprimento 32 | 8713d75511bea7e0df78c6063dc778b0 |
| 1400 | SHA-256 | hash | aa106625c7de812d6118992a191ea4627e2457fa80bf6ec06f9c60cbf8e5260f |
| 1700 | SHA-512 | hash | 23afac4524f62ea4d941ca4933249b2b78d19069773266abc36d6fd17a6fbe2f4ccc834acc868358ba32ddca553611218a2865f975339fe45d38cc1999f84b5e |
| 10 | Md5 ($pass.$salt) | Senha Depois de adicionar sal, execute Md5 uma vez, a senha é a primeira | 48985c61e2581c3f9ee5f1cfb775afbc:asdf |
| 20 | md5 ($salt.$pass) | sal primeiro | 4fa1dd606353e055fed67d9812bddf35:asdf |
| 2600 | md5 (md5 ($pass)) | Execute a senha duas vezes md5 | 98177c3f36af4a3f77f5b87594e6cf6a |
| 3710 | md5 ($salt.md5 ($pass)) | Execute uma conversão md5, adicione sal na frente e execute md5 novamente | 88a535877ec21b8786775a7074e4de4c:asdf |
| 4400 | md5 (sha1 ($pass)) | senha execute uma conversão sha1 e outra conversão md5 | ec7bf3099984001a2b0f37ba5d1d68fa |
| 4500 | sha1 (sha1 ($pass)) | omitido | 005a41cfe16c9a5556c7a5cdd5f1958991f2e031 |
| 1460 | HMAC-SHA256 (key = $salt) | omitido | d684ab7c38ddc262f215328334c4d0273cef10d6c5e61988f5cc87fcab8a7a60:asdf |
| 11500 | CRC32 | omitido | 4C244A19:00000000 |
-um comando pode especificar o modo de ataque. Para decifrar senhas com hashcat, não basta conhecer apenas o número da senha. Você também precisa selecionar o modo de ataque que usa hashcat para decifrar senhas.
Hashcat4.0.1 tem 5 modos de ataque, cada modo de ataque tem suas próprias características.
| Número | Modo de ataque | Significado |
|---|---|---|
| 0 | reto | Modo de ataque direto |
| 1 | combinação | Modo de ataque combinado |
| 3 | força bruta | Modo de quebra explosiva |
| 6 | Lista de palavras híbrida + máscara | Combinação de dicionário + máscara |
| 7 | Máscara Hybird + lista de palavras | Combinação de máscara + dicionário |
Nestes 5 modos de ataque, podemos usar o dicionário para decifrar senhas. Use a quebra de força bruta para percorrer todas as senhas possíveis, ou você pode combinar dicionários e máscaras para decifrar senhas. Em diferentes modos de ataque, os parâmetros usados pelo comando hashcat são diferentes. Usamos o modo de ataque reto como exemplo para aprender como o hashcat usa arquivos de dicionário para decifrar senhas. Os colegas também intercalarão o uso de outros parâmetros.
O modo de ataque direto é usar diretamente o dicionário para explosão de senha. Ele pode usar um único arquivo de dicionário ou vários arquivos de dicionário para descriptografia. Você também pode tornar a explosão de senhas mais eficiente combinando dicionários com arquivos de regras.
hashcat-a 0 – m 0 mima.txt – o outfile dic.txt
-a especifica o modo de ataque como ataque direto, -m especifica o tipo de hash como MD5 e-o escreverá a senha decifrada no outfile.
O ataque de dicionário duplo também é uma situação no modo de ataque direto. Ele carregará dois arquivos de dicionário ao usar arquivos de dicionário para explodir senhas. Isso expande o espaço do arquivo do dicionário.
Ataque de múltiplos dicionários usa o carregamento de vários arquivos de dicionário ao mesmo tempo. O comando a seguir usa três dicionários para realizar um ataque de dicionário, carregue três dicionários em sequência para explosão. O dic.txt no comando é o arquivo de dicionário usado na explosão.
O uso de ataques de diretório de dicionário usará vários arquivos de dicionário no diretório de dicionário para ataques diretos. Durante o processo de ataque direto, vários arquivos de dicionário no diretório de dicionário são carregados em sequência. O dic no comando a seguir é a pasta onde os vários arquivos de dicionário estão localizados.
-r/ - -rule-file O comando aplicará várias regras no arquivo de regras a cada palavra no dicionário. Os arquivos de regras podem ser gerados por você mesmo ou você pode usar os arquivos de regras que vêm com o hashcat. Os arquivos de regras que vêm com o hashcat geralmente estão na pasta Regras. Os arquivos de regras na pasta Regras são os seguintes:
No ataque dicionário + regra, você pode usar um único dicionário, vários dicionários ou diretórios de dicionário combinados com arquivos de regras para executar explosão de senha. Na verdade, é uma forma de ataque direto ao toque combinado com arquivos de regras.
As chamadas regras são semelhantes a linguagens de programação que geram senhas candidatas. Elas podem modificar, cortar, expandir palavras ou pular operações com base em operadores condicionais. Isso permite que os ataques sejam realizados de forma mais flexível e eficiente.
Os ataques de regras podem ser usados em combinação com dicionários duplos, dicionários múltiplos e até mesmo diretórios de dicionários. O método de uso é semelhante ao ataque de regra de dicionário único.
-o o parâmetro é seguido pelo arquivo de uso. Use o comando-o para inserir a senha decifrada no arquivo especificado. o padrão o formulário de armazenamento é hash:plain. Há um exemplo de uso deste comando anteriormente, você pode ver a imagem acima.
Este comando pode especificar o formato de saída do arquivo outfile. Existem 15 modos de saída no arquivo Outfile.
Outfile-format =1 gera apenas o hash de texto cifrado decifrado;
Outfile-format =2, gera apenas o texto claro da senha decifrada.
Além de usar o parâmetro-o para gerar, também podemos usar o parâmetro remove para filtrar as senhas decifradas no arquivo de texto cifrado, deixando apenas as senhas que não podem ser decifradas. Desta forma, a duplicação de trabalho pode ser reduzida na quebra de senha subsequente.
Quando o número de senhas quebradas é relativamente grande ou o arquivo do dicionário é muito grande, as seguintes opções aparecerão. A entrada S no teclado imprimirá o próximo status na tela. Através deste status, você pode visualizar o progresso atual da quebra de senha.
Será problemático inserir S toda vez que você quiser verificar o andamento atual da quebra de senha. Isso é para usar o parâmetro de status para fazer a tela atualizar automaticamente a tela de status. Reduzir as operações que você precisa realizar também pode reduzir toques acidentais.
Além de usar o parâmetro status hashcat para atualizar automaticamente o status da tela, você também pode usar o parâmetro- -status-timer para definir o intervalo de atualização da tela de status.
O uso do modo de ataque direto no Hashcat é aproximadamente o conteúdo acima. Se você estiver interessado no hashcat, também pode visitar diretamente o site do hashcat, que contém uma introdução detalhada aos parâmetros de comando do hashcat e a cada modo de ataque.
Artigo reimpresso do Laboratório de Segurança Cibernética Dingniu