Hashcat é uma ferramenta de explosão de senha e uma das ferramentas essenciais para segurança da informação. Aqui coletamos este artigo para registrar o resumo em caso de emergência. Também pode ajudar os internautas que leram este artigo.
Hashcat é o programa de quebra de senhas mais rápido do mundo. É uma ferramenta distribuída de código aberto que suporta múltiplas plataformas e múltiplos algoritmos.
Oficial: https://hashcat.net/hashcat/
Github:https://github.com/hashcat/hashcat
https://github.com/hashcat/hashcat/releases 下载最新版压缩包,解压根据自己的平台运行 hashcat64.exe 或者 hashcat32.exe
Especifique o tipo de hash a ser quebrado, seguido do número correspondente ao tipo de hash
Especifique o modo de quebra a ser usado, cujo valor se refere aos parâmetros seguintes:
- [ ataque modos ] - # | Modo = = = = + = = = = = = 0 | Retos # Dicionário direto crack 1 | Combinação # Combinação Crack 3 | Brute-force # Máscara Brute force 6 | híbrido lista de palavras + máscara # dicionário + quebra de máscara 7 | híbrido máscara + lista de palavras # máscara + crack de dicionário
Habilite o modo de crack incremental, permitindo que o hashcat execute o crack dentro da faixa de comprimento da senha especificada
O comprimento mínimo da senha pode ser seguido diretamente por um número inteiro. Configure o modo increment para usar juntos
O comprimento máximo da senha pode ser seguido diretamente por um número inteiro. Configure o modo increment para usar juntos
Ignore as mensagens de aviso durante o processo de crack
<
- -outfile Especifique o local de armazenamento do hash após o crackeamento bem-sucedido e da senha de texto simples correspondente
- -optimized-kernel-enable Habilite o kernel otimizado (limite o comprimento da senha)
- -opencl-devices Especifique dispositivos opencl, a lista de dispositivos suportados aqui é a seguinte:
Código
* Dispositivo #1: Intel (R) Core (TM) i7-9750H CPU @ 2,60 GHz, pulado. * Dispositivo #2: Intel (R) UHD Gráficos 630, 384/1536 MB Alocaível, 24MCU * Dispositivo #3: AMD Radeon Pro 555X Compute Engine, 1024/4096 MB alocável, 12MCU
- -tipos-de-dispositivo-opencl Especifique o tipo de dispositivo do opencl. O Hashcat suporta os seguintes tipos de dispositivo:
bash
1 | CPU2 | GPU3 | FPGA, DSP, Co-processador
Geralmente comumente usado -D 2 especificar GPU crack
bash
? | Conjunto de caracteres = = = + = = = = = = = = = = =
l | abcdefghijklmnopqrstuvwxyz # Letras minúsculas a-z
u | ABCDEFGHIJKLMNOPQRSTUVWXYZ # Letras maiúsculas A-Z
d | 0123456789 # Números 0-9
h | 0123456789abcdef # Número + abcdef
H | 0123456789ABCDEF # Número + ABCDEF
s | ! " #$% & ' () * +, -. /:; < = >? @ [\] ^_` {|} ~ # Caracteres especiais
A | ? Eu? Você? d? s # Todos os caracteres visíveis no teclado
b | 0 - 0xff # Pode ser usado para corresponder a senhas como espaço
bash
- -custom-charset1 [chars] é equivalente a -1 - -custom-charset2 [chars] é equivalente a -2 - -custom-charset3 [chars] é equivalente a -3 - -custom-charset4 [chars] é equivalente a -4
usando na máscara? 1、? 2、? 3、? 4 para representar
alguns casos:
bash
- -custom-charset1 abcd123456! @- +
Neste momento? 1 significa abcd123456! @- +
bash
- -custom-charset2 ? Eu? d
Neste momento? 2 significa ? Eu? d ou seja ? h Número + letra minúscula:
bash
-3 abcdef -4 123456
neste momento ? 3? 3? 3? 3? 4? 4? 4? 4 significa que os primeiros quatro dígitos podem ser abcdef, e os últimos quatro dígitos podem ser 123456
código
1q2w3e4r` o valor do MD5 é ` 5416d7cd6ef195a0f7622a9c56b55e84
bash
hashcat -a 0 -m 0 ' 5416d7cd6ef195a0f7622a9c56b55e84 ' hashpass.txt -o success.txt
Às vezes, o seguinte prompt aparecerá ao quebrar:
código
INFO: Todos os hashes encontrados no potfile! Use - -show para exibir eles.
Isso mostra que a senha foi quebrada com sucesso por nós antes, então o Hashcat não é mais exibido, você pode adicionar parâmetros - -show mais tarde para exibir a senha:
bash
hashcat -a 0 -m 0 ' cbc8f5435c87e13c5d14e6ce92358d68 ' hashpass.txt - -mostrar cbc8f5435c87e13c5d14e6ce92358d68: 123456@abc
O local onde o hashcat armazena o arquivo de senha quebrado com sucesso é: ~ /. hashcat/hashcat.potfile
Se você quiser exibir diretamente a senha quebrada, você pode excluir diretamente o arquivo.
bash
bash
hashcat -a 1 -m 0 ' 5416d7cd6ef195a0f7622a9c56b55e84 ' hashpass1.txt hashpass1.txt
bash
echo -n admin888 |openssl MD5 7fef6171469e80d32c0559f88b377245
Quebrar O valor MD5 de admin888 :
bash
hashcat -a 6 -m 0 ' 7fef6171469e80d32c0559f88b377245 ' hashpass.txt -O
bash
hashcat -a 7 -m 0 ' 7fef6171469e80d32c0559f88b377245 ' ' admi? Eu? d? d? d ' hashpass.txt -O
Criptografia MD5 em 23323323 :
bash
$ echo -n 23323323 |openssl MD5 5a745e31dbbd93f4c86d1ef82281688b
Use o hashcat para hackear:
bash
hashcat -a 3 -m 0 - -force ' 5a745e31dbbd93f4c86d1ef82281688b ' '? d? d? d? d? d? d? d? d ' -O
bash
$ echo -n senha |openssl MD5 a9d402bfcde5792a8b531b3a82669585
Use o hashcat para hackear:
bash
hashcat -a 3 -m 0 -1 '? Eu? u ' - -Força ' a9d402bfcde5792a8b531b3a82669585 ' '? 1? 1? 1? 1? 1? 1? 1? 1 ' -O
Uma regra personalizada -1 é definida aqui, neste momento ? 1 significa ? Eu? u, ou seja, letras maiúsculas e minúsculas.
Admin88 O valor do MD5 é 2792e40d60bac94b4b163b93566e65a9
bash
hashcat -a 3 -m 0 -1 '? Eu? Você? d ' - -força ' 2792e40d60bac94b4b163b93566e65a9 ' - -incremento - -incremento-min 5 - -incremento-max 7 '? 1? 1? 1? 1? 1? 1? 1 ' -O
Uma regra personalizada -1 é definida aqui, neste momento ? 1 significa ? Eu? Você? d, ou seja, letras maiúsculas e minúsculas + números.
admin23323 O valor MD5 é a9991129897a44e0d1c2855c3d7dccc4
bash
hashcat -a 3 -m 0 -1 '? Eu? Você? d ' - -forçar ' a9991129897a44e0d1c2855c3d7dccc4 ' ' admin? 1? 1? 1? 1? 1 ' -O
Ver senha para MySQL:
mysql
mysql > select senha from mysql.user; +-------------------------------------------+ | Senha | +-------------------------------------------+ | * 81F5E21E35407D884A6CD4A731AEBFB6AF209E1B | | * 81F5E21E35407D884A6CD4A731AEBFB6AF209E1B | | * 81F5E21E35407D884A6CD4A731AEBFB6AF209E1B | | * 81F5E21E35407D884A6CD4A731AEBFB6AF209E1B | +-------------------------------------------+ 4 linhas em set (0,00 sec)
em seguida, comece a usar o dictionary crack:
bash
hashcat -a 0 -m 300 - -force ' 81F5E21E35407D884A6CD4A731AEBFB6AF209E1B ' hashpass.txt -O
Veja o arquivo de senha /etc/shadow :
bash
root@kali-linux: ~ # cat /etc/shadowroot:$6$4ojiBMDPrehqrLkX$d2t7cn8lkklk4sdxgch1ieqjhnsuekxanuxsxiziwutndsqyd.9secu80sx9duehgmhoeoEv2o0acytjmett1:18201:0:99999:7::: daemon:*:18024:0:99999:7::: bin:*:18024:0:99999:7::: sys:*:18024:0:99999:7::: Sincronização:*:18024:0:99999:7::: Jogos:*:18024:0:99999:7::: homene:*:18024:0:99999:7::: lp:*:18024:0:99999:7::: Email:*:18024:0:99999:7::: Notícias:*:18024:0:99999:7::: uucp:*:18024:0:99999:7::: proxy:*:18024:0:99999:7::: www-data:*:18024:0:99999:7::: backup:*:18024:0:99999:7::: lista:*:18024:0:99999:7::: irc:*:18024:0:99999:7::: gnats:*:18024:0:99999:7::: Ninguém: *: 18024:0:99999:7::: _apt:*:18024:0:99999:7::: systemd-timesync:*:18024:0:99999:7::: systemd-network:*:18024:0:99999:7::: systemd-resolve:*:18024:0:99999:7::: mysql:!: 18024:0:99999:7::: ntp:*:18024:0:99999:7::: Mensagem:*:18024:0:99999:7::: arpwatch:!: 18024:0:99999:7::: Debian-exim:!: 18024:0:99999:7::: uuidd:*:18024:0:99999:7::: meias vermelhas:!: 18024:0:99999:7::: tss:*:18024:0:99999:7::: rwhod:*:18024:0:99999:7::: iodo:*:18024:0:99999:7::: miredo:*:18024:0:99999:7::: dnsmasq:*:18024:0:99999:7::: postgres:*:18024:0:99999:7::: usbmux:*:18024:0:99999:7::: rtkit:*:18024:0:99999:7::: stunnel4:!: 18024:0:99999:7::: sshd:*:18024:0:99999:7::: Debian-snmp:!: 18024:0:99999:7::: sslh:!: 18024:0:99999:7::: Pulso:*:18024:0:99999:7::: Despachador de discurso:!: 18024:0:99999:7::: avahi:*:18024:0:99999:7::: saned:*:18024:0:99999:7::: inetsim:*:18024:0:99999:7::: cor:*:18024:0:99999:7::: geoclue:*:18024:0:99999:7::: Rei-Phisher:*:18024:0:99999:7::: Debian-gdm:*:18024:0:99999:7::: dradis:*:18024:0:99999:7::: Carne bovina-XSS:*:18024:0:99999:7::: systemd-coredump:!!: 18082::::::
Você pode ver que root tem uma senha, e o método de criptografia do hash de superfície usado anteriormente é $6 : sha512crypt $6$, SHA512 (Unix).
bash
# Senha raiz de quebra de máscara hash de quebra bem-sucedida não é registrado no potfile Especifique o dispositivo 2 (exibição central) para executar a senha e ative a otimização hashcat -a 3 -m 1800 - -force ' $6$4ojiBMDPrehqrLkX$d2T7Cn8LKkLk4SDXgCh1IEqjhnsUekXaNUXSxiZIwUTndSqyd.9sEcu80sX9DuEHGmHOeoMev2O0ACYtjMett1 ' '? Eu? Eu? Eu? l ' -O -d 2 - -potfile-disable# Senha raiz de quebra de máscara Ignore O nome de usuário Não registre O hack bem-sucedido no potfile Especifique O dispositivo 2 (exibição central) para executar a senha e ativar a otimização hashcat -a 3 -m 1800 - -force ' root:$6$4ojiBMDPrehqrLkX$d2T7Cn8LKkLk4SDXgCh1IEqjhnsUekXaNUXSxiZIwUTndSqyd.9sEcu80sX9DuEHGmHOeoMev2O0ACYtjMett1 ' '? Eu? Eu? Eu? l ' -O -d 2 - -username - -potfile-disable
A CPU integrada e O gráfico independente do macOS não podem ser quebrados, aqui O próprio Guoguang alternou manualmente -d 2 usando O display central e saiu com sucesso:
bash
hashcat -a 0 -m 3000 - -force ' 921988ba001dc8e14a3b108f3fa6cb6d ' password.txt
bash
| Parâmetros | Tipo | Descrição | Compreensão de Kunimitsu | Exemplo |
|---|---|---|---|---|
| – servidor cerebral | | Habilitar servidor cerebral | Habilitar o servidor principal | |
| -z, – brain-client | | Habilitar brain client, ativa-s | Habilitar clientes distribuídos | |
| – recursos-cliente-cerebral | Num | Defina os recursos do cliente cerebral, veja abaixo | Defina funcionalidades do cliente | – brain-client-features =3 |
| – brain-host | Str | host do servidor cerebral (IP ou domínio) | IP ou domínio do servidor principal | – brain-host =127.0.0.1 |
| – brain-port | port | Porta do servidor cerebral | Porta do servidor principal | – brain-port =13743 |
| – brain-password | Str | Senha de autenticação do servidor cerebral | <17x1 7> Senha de autenticação do servidor principal | – brain-password = e8acfc7280c48009 |
| – sessão-cerebral | Hex | Substitui a sessão cerebral calculada automaticamente | Substituir automaticamente sessões primárias já calculadas | – brain-session =0x2ae611db |
| – brain-session-whitelist | Hex | Permitir apenas sessões determinadas, separadas por vírgulas | Permitir apenas determinadas conversas, separadas por vírgulas | – brain-session-whitelist =0x2ae611db |
bash
- [ brain Client Features ] - # | Features = = = + = = = = = = = = 1 | Enviar hashed Senhas # Enviar senha quebrada 2 | Enviar Ataque Posições # Enviar localização quebrada 3 | Enviar hashed Senhas e Ataque Posições # Enviar senhas quebradas e posições quebradas