Como usar o John the Ripper: Dicas e tutoriais

John the Ripper é uma ferramenta de quebra de senha que é importante conhecer. Continue lendo para saber mais sobre esse programa-padrão de pentesting e hacking.
Michael Buckbee
3 minuto de leitura
Ultima atualização 3 de Março de 2023

John the Ripper (JtR) é uma das ferramentas de hacking que a equipe de RI da Varonis usou em sua primeira demonstração de ataque cibernético ao vivo e um dos programas de quebra de senhas mais populares que existem. Neste artigo, vamos dar uma olhada em John the Ripper, mostrar como ele funciona e explicar por que é importante.

Notas sobre hacking: hacking é uma busca por informações sobre sistemas, projetos e humanos. Neste caso, estamos fazendo referência a softwares e sistemas operacionais.

Receba gratuitamente o e-book Pentesting Active Directory Environments

Hackear não é necessariamente um ato criminoso, embora possa ser uma ferramenta usada com intenções perigosas. Defendemos o hacking ético. Permaneça no lado luminoso da Força.

Como o John the Ripper funciona?

definição gráfica do john the ripper

O JtR é compatível com várias tecnologias de criptografia comuns e prontas para uso para sistemas baseados em UNIX e Windows (por exemplo, os computadores Mac são baseados em UNIX). O JtR detecta automaticamente a criptografia nos dados com hash e a compara com um grande arquivo de texto simples que contém senhas populares, criptografando cada senha e interrompendo quando encontra uma correspondência. Simples.

Em nossa incrível demonstração de ataque cibernético ao vivo, a equipe de RI da Varonis demonstra como roubar uma senha com hash, usar o JtR para encontrar a senha verdadeira e usá-la para fazer login em uma conta administrativa. Esse é um caso de uso muito comum para o JtR.

Além disso, o JtR inclui listas de senhas comuns em mais de 20 idiomas. Essas listas fornecem ao JtR milhares de senhas possíveis para gerar valores de hash correspondentes para adivinhar com precisão a senha de destino. Como a maioria das pessoas escolhe senhas fáceis de lembrar, o JtR é costuma ser muito eficaz, mesmo com suas listas de senhas prontas para uso.

O JtR está incluído nas versões de pentesting do Kali Linux.

Para que serve o John the Ripper?

O JtR é principalmente um cracker de senhas usado durante exercícios de pentesting que pode ajudar as equipes de TI a identificar senhas fracas e políticas de senha ruins.

Aqui está uma lista de tecnologias de criptografia disponíveis no JtR:

  • UNIX crypt(3)
  • DES tradicional
  • “bigcrypt”
  • DES com extensão de BSDI
  • MD5 do FreeBSD (Linux e Cisco IOS)
  • Blowfish do OpenBSD
  • Kerberos/AFS
  • DES do Windows LM
  • Tripcodes de DES
  • Hashes SHA-crypt (versões mais recentes do Fedora e Ubuntu)
  • Hashes SHA-crypt e SUNMD5 (Solaris)

Essa é a lista “oficial”. O JtR é open source, portanto, se a criptografia escolhida não estiver na lista, continue procurando. Alguém pode já ter escrito uma extensão para ele.

lista de motivos para usar o john the ripper com uma ilustração de cartola

Como baixar o John the Ripper

O JtR é um projeto de código aberto, então você pode decidir se quer baixar e compilar o código-fonte por conta própria, baixar os binários executáveis ou encontrá-lo como parte de um pacote de pentesting.

O site oficial do John the Ripper está no Openwall, onde você pode encontrar o código-fonte e os binários e entrar no GitHub para contribuir com o projeto.

O JtR está disponível no Kali Linux como parte de seus metapacotes de quebra de senha.

Tutoriais para usar o John the Ripper

Vamos examinar vários comandos básicos que você precisa saber para começar a usar o John the Ripper. Para começar, tudo o que você precisa é de um arquivo que contenha um valor de hash para descriptografar.

Para ver uma lista de comandos no JtR, execute este comando:

.\john.exe

Quebra de senhas

ilustração dos modos do john the ripper

Os principais modos de quebra de senhas do John the Ripper são o modo Quebra simples, o modo Dicionário e o modo Incremental. O modo Quebra simples é a maneira mais rápida e eficiente se você tiver um arquivo de senha completo para quebrar. O modo Dicionário compara hashes a uma lista conhecida de possíveis correspondências de senha. O modo Incremental é o mais poderoso e possivelmente não será concluído. É a abordagem clássica de força bruta que tenta todas as combinações de caracteres até que um resultado possível seja encontrado.

A melhor maneira de tentar quebrar uma senha é permitir que o JtR tente vários modos comuns de quebra. O comando abaixo diz ao JtR para tentar o modo “simples”, depois mudar para as listas de palavras-padrão contendo senhas prováveis e, em seguida, tentar o modo “incremental”.

.\john.exe passwordfile

Você também pode baixar diferentes listas de palavras da internet e criar suas próprias para executar o JtR com o parâmetro –wordlist.

.\john.exe passwordfile –wordlist=”wordlist.txt”

Para especificar um modo de cracking, use o parâmetro exato para o modo.

.\john.exe --single passwordfile 
.\john.exe --incremental passwordfile

Regras de manipulação de palavras (mangling)

Mangling é um pré-processador no JtR que otimiza a lista de palavras para acelerar o processo de cracking. Use o parâmetro –rules para definir as regras de mangling.

.\john.exe --wordlist=”wordlist.txt” --rules --passwordfile

Visualizar o output

Para ver a lista de senhas quebradas, use o parâmetro –show.

.\john.exe –show passwordfile

Se a lista de senhas quebradas for longa, você poderá filtrá-la com parâmetros adicionais. Você também pode redirecionar o output usando o redirecionamento básico no shell. Por exemplo, para ver se você quebrou algum usuário root (UID=0), use o parâmetro –users.

.\john.exe --show --users=0 passwordfile

Como alternativa, para mostrar usuários de grupos privilegiados, use –groups.

.\john.exe –-show –-groups=0,1 passwordfile

Abaixo está o comando do JtR do nosso webinar de ataque cibernético ao vivo. Nesse cenário, nosso hacker usou o kerberoast para roubar um Tíquete de concessão de tíquete (TGT) Kerberos, contendo o hash a ser quebrado, que foi salvo em um arquivo chamado ticket.txt. No nosso caso, a lista de palavras usada é o clássico arquivo de senha rockyou do Kali Linux, e o comando foi definido para destacar o progresso a cada três segundos.

.\john.exe "--format=krb5tgs" "ticket.txt" "--wordlist=”rockyou.txt" "--progress-every=3"

Para ver algumas táticas de defesa e pentesting com a Varonis, confira os webinars de ataque cibernético ao vivo. Escolha o horário de sua preferência!

O que devo fazer agora?

Listamos abaixo três recomendações para reduzir os riscos de dados na sua organização:

1

Agende uma demonstração conosco: Veja a usabilidade de Varonis em uma sessão personalizada com base nas necessidades de segurança de dados da sua organização. Responderemos a todas as suas perguntas.

2

Veja um exemplo do nosso Relatório de Risco de Dados: Conheça as ameaças que podem permanecer no seu ambiente. O Relatório da Varonis é gratuito e demonstra claramente como realizar a remediação automatizada.

3

Siga-nos no LinkedIn, YouTube e X (Twitter): Obtenha insights detalhados sobre todos os aspectos da segurança de dados, incluindo DSPM, detecção de ameaças, segurança de IA, entre outros.

Experimente Varonis gratuitamente.

Obtenha um relatório detalhado de risco de dados com base nos dados da sua empresa.
Implanta em minutos.

Keep reading

Varonis tackles hundreds of use cases, making it the ultimate platform to stop data breaches and ensure compliance.

saiba-como-a-tecnologia-nac-pode-ajudar-a-combater-as ameaças-cibernéticas
Saiba como a tecnologia NAC pode ajudar a combater as ameaças cibernéticas
NAC é um termo usado para soluções que concedem acesso à rede a dispositivos com base em um ou diversos critérios.
o-que-é-mimikatz?-guia-completo
O que é Mimikatz? Guia completo
Benjamin Delpy criou o Mimikatz como uma prova de conceito para mostrar à Microsoft que seus protocolos de autenticação eram vulneráveis a um ataque.
como-usar-o-netcat:-exemplos-e-lista-de-comandos
Como usar o Netcat: exemplos e lista de comandos
Descubra o programa utilitário Netcat e os diferentes tipos de comandos que ele pode usar para ajudar as organizações de TI a gerenciar redes com mais eficiência.
como-usar-o-nmap:-comandos-e-guia-tutorial
Como usar o Nmap: comandos e guia tutorial
O Nmap é uma ferramenta de mapeamento de rede poderosa e rápida. Neste guia, explicaremos como instalar e usar o Nmap e mostraremos como proteger suas redes.