Tutorial de Hashcat

Tutorial de Hashcat

Este tutorial explica como usar o hashcat para quebrar mais de 250 modos de hash através de diferentes métodos de ataque.

Depois de ler este tutorial, você conhecerá os recursos mais importantes do Hashcat e como implementá -los para quebrar hashes.

Introdução funcional ao hashcat

Hashcat é uma ferramenta muito potente. Vale a pena levar em consideração e aprender seus recursos. Antes de começar com exemplos, vamos ver algumas das funcionalidades de Hashcat, incluindo tipos de ataque, hashes quebráveis ​​e configurações de charset.

Hashcat é uma ferramenta muito flexível, permitindo que o usuário otimize e personalize ataques para mais de 250 modos de hash classificados por categorias. Algumas dessas categorias são mostradas na tabela a seguir.

CATEGORIA Suporte ao modo de hash
Hash cru Md4, md5, sha1, sha2, sha3, etc.
Protocolos de rede WPA, Skype, MySQL Cram (SHA1), DNSSEC (NSEC3), etc.
Fóruns, CMS, estruturas phpbb3 (md5), vbulletin, wordpress (md5), joomla (md5), etc.
Servidor de banco de dados PostgreSQL, Oracle, MySQL, etc.
HTTP, SMTP, servidor LDAP Apache $ APR1 $ MD5, MD5APR1, MD5 (APR), NSLDAPS, SSHA-1 (BASE64), Netscape LDAP SSHA, etc.
Sistemas operacionais Samsung Android/Windows Phone 8+ Senha/PIN, Grub 2, Cisco, MacOS, etc.
Arquivos 7-ZIP, Winzip, rar, etc.
Criptografia de disco completo Luks, Android FDE, Veracrypt, Ecryptfs, etc.
Documentos PDF, Microsoft Office, Apple Secure Notes.
Gerentes de senha LastPass, Bitcoin/Litecoin Wallet.Dat, Blockchain, minha carteira, Keepass, etc.

Observação: Você pode ver a lista completa de categorias em https: // gist.Github.com/dwallraff/6a50b5d2649afeb1803757560c176401 ou executando o comando hashcat -help

Hashcat charsets:

Hashcat Permite controlar os charsets para ataques de força bruta. Ao forçar bruto, você pode aplicar os seguintes charsets embutidos em cada posição de senha.

Opção de sinalizador CHARST
?eu a B C D e F G H I J K L M N o p q R S T U V W x y Z
?você A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
?d 0123456789
?h 0123456789ABCDEF
?H 0123456789ABCDEF
?s !”#$%& '()*+,-./:;?@[\]^_ '| ~
?a ?eu?você?d?s
?b 0x00 - 0xFF

Por exemplo, você pode definir o primeiro caractere de senha como um caractere de caixa superior especificando ?u seguido por 5 caracteres minúsculos (?eu?eu?eu?eu?l) e quatro últimos números especificando ?d?d?d?d. Isso vai parecer o seguinte:

Hashcat -a 3 ?você?eu?eu?eu?eu?eu?d?d?d?d

Você também pode especificar quatro charsets personalizados combinando diferentes possibilidades. Você especifica cada charset personalizado adicionando 1, 2, 3 e 4. Por exemplo, para especificar um charset que inclua 5 letras e números minúsculos, o comando parece como mostrado abaixo, porque ?l Especifica caracteres minúsculos e ?D Especifica números.

hashcat -a 3 -1 ?eu?d ?1?1?1?1?1

Hashcat As opções de personalização e otimização também incluem seleção de dispositivos de hardware para vários modos de ataque, incluindo o explicado abaixo.

Modos de ataque hashcat:

  • Ataque de força bruta (3): Este tipo de ataque consiste em uma combinação maciça de caráter tentativas. Esta técnica de ataque foi descontinuada no Hashcat e foi substituída por ataques de máscara.
  • Ataque combinado (1): Este modo permite anexar cada palavra contida em uma lista de palavras até o final de cada contêiner de palavras em uma segunda lista de palavras.
  • Ataque de dicionário (0): Este modo, também chamado de "modo reto", tenta todas as linhas contidas em um arquivo como uma senha. Este é um ataque simples de lista de palavras.
  • Ataque híbrido: O modo de ataque híbrido permite combinar um ataque de dicionário com um ataque de força bruta. Ao usar este modo, você pode anexar ou prender os elementos do WordList a um ataque de força bruta.
  • Ataque de máscara (6 ou 7): O ataque da máscara é uma melhoria do ataque da força bruta, com o objetivo de projetar ataques de força bruta "inteligente" nos quais o usuário tem controle sobre o processo de geração de candidatos a senha. Por exemplo, o ataque da máscara permite que os usuários defina padrões como uma letra maiúscula apenas para a primeira posição da senha Candidat, ou anexar datas no final do candidato de senha, ou antes, etc. O modo 6 permite uma máscara híbrida de palavras +, enquanto o modo 7 permite máscara híbrida + wordlist.

Esse ataque resulta em tentativas mais precisas e na omissão ou redução de candidatos a senha improvável.

  • Ataque baseado em regras: Isso é descrito pelos desenvolvedores Hashcat como o tipo mais difícil de ataque, pois consiste em programar a geração de candidatos de senha com funções para cortar, modificar, estender os candidatos a senha.
  • Ataque em caso de alternância: Este tipo de ataque funciona se o ataque baseado em regras estiver ativado. Ele permite que você experimente todas as possibilidades superior e minúscula para candidatos a senha.

Introdução ao Hashcat:

Para começar nos sistemas Linux, com sede no Debian, execute o comando abaixo para instalar o hashcat.

sudo apt install hashcat

Para outras distribuições Linux, você pode baixar e extrair o arquivo 7ZIP compactado de https: // hashcat.net/hashcat/.

Para o primeiro exemplo, usarei um arquivo chamado A Hashlist contendo dois hashes e uma lista de palavras chamada uma lista de palavras.

A bandeira -m é usada para definir o tipo de hash. O hash que eu quero quebrar é o MD5; é um tipo 0. Você pode verificar como definir cada tipo de hash lendo a página do homem, como mostrado abaixo e rolando para baixo para a seção Tipos de hash.

Homem Hashcat

Você também pode aprender todos os tipos de ataque e como eles são definidos na página do homem, isso foi explicado anteriormente na seção Modos de Ataque Hashcat neste tutorial.

O primeiro exemplo de ataque tem como alvo um hash md5 (-m 0) usando um ataque de dicionário (-a 0) para quebrar hashes contidos na hashlist, seguido pela lista de palavras.

hashcat -m 0 -a 0 hashlist list

Hashcat começará a correr; No meu caso, estou usando uma lista de palavras dummy contendo as listas de palavras corretas, assim como você pode ver abaixo, hashcat avisa minha lista de palavras é pequena.

Observação: Os hashes usados ​​neste tutorial são:

DB6585658634149C23CCB4C72AF8E614
8D6C31287B2BA4D4BA11DBF65E8110FC

Como você pode ver, Hashcat conseguiu descriptografar hashes contendo “Linuxhint.com" e "Siga o Linux Dint““.

Vamos ver o que acontece se executarmos o mesmo ataque novamente.

hashcat -m 0 -a 0 hashlist list

Como você pode ver antes de iniciar o ataque, Hashcat nos informa que o resultado já está presente no Potfile Porque já descriptografamos anteriormente.

Potfile é onde Hashcat lojas de resultados de hash quebrados; Por padrão, o Hashcat.Potfile está localizado no diretório oculto .Hashcat dentro da casa do usuário (~/.Hashcat/hashcat.Potfile).

Nesse caso, você precisa adicionar a opção -Show, como mostrado no exemplo abaixo.

hashcat -m 0 -a 0 hashlist wordlist - -show

O exemplo a seguir mostra como descriptografar um hash sha1. O arquivo chamado sha1 contém um hash sha1. Como você pode ver, além de um nome diferente, a única diferença é o modo de hash, alterado para 100 (sha1). O ataque é um ataque de dicionário como o anterior.

hashcat -m 100 -a 0 sha1 wordlist

Como você pode ver, o hash de descriptografia sha1 é LinuxHintPassword.

Este último exemplo mostra um ataque de força bruta usando um Hashcat Charset para descriptografar uma senha numérica. Nesse caso, eu sei que é uma senha numérica 6 caracteres. Usando o -3 estou instruindo Hashcat para executar um ataque de força bruta e implementando 6 vezes o ?D CHARSET, eu especificar para experimentar todos os números 6 vezes, um para cada personagem.

hashcat -m 100 sha1.txt -a 3 ?d?d?d?d?d?d

Como você pode ver, a senha 123456 foi descriptografada corretamente.

Conclusão:

Hashcat é uma ferramenta simples, mas poderosa, para descriptografar cem tipos de hash em algumas etapas. É uma ferramenta multiplataforma que pode nos ajudar a recuperar arquivos zip protegidos, documentos, wpa .Arquivos PCAP e mais de 250 modos de criptografia diferentes. Seus recursos, como ataques de máscara, fazem Hashcat Uma ferramenta inteligente para realizar ataques inteligentes totalmente personalizáveis ​​pelo usuário.

Espero este tutorial mostrando como usar Hashcat foi útil para você.