Password CrackerComo descobrir/adivinhar uma senha

⚡ Resumo Inteligente

Quebrar senhas é a prática de recuperar credenciais por meio de tentativas sistemáticas de adivinhação, comparação ou cálculo com base em hashes armazenados. Esta visão geral explica como os atacantes operam, as ferramentas que utilizam, os fatores de segurança que os impedem e os controles que os administradores devem implementar.

  • 🧭 FoundationPrincípio al: A força de uma senha depende do seu comprimento, complexidade de caracteres e imprevisibilidade para resistir a ataques de força bruta e recuperação por dicionário.
  • 🔐 Hashing vs. Criptografia: As credenciais armazenadas são protegidas por funções hash unidirecionais, como MD5, SHA-256 ou bcrypt, em vez de criptografia reversível.
  • 🎯 Técnicas comuns de ataque: Dicionário, força bruta, tabela arco-íris, híbrido, spidering e credential stuffing exploram o comportamento humano previsível.
  • 🛠️ Conjunto de ferramentas de quebra de senhas: John the Ripper, Hashcat, Cain & Abel, Ophcrack, e o Hydra automatizam a recuperação offline e online de hashes capturados.
  • 🤖 Ataques baseados em IA: Modelos generativos preveem senhas realistas a partir de vazamentos de dados, melhorando drasticamente a eficiência do dicionário contra credenciais fracas.
  • 🛡️ Controles defensivos: Hashes com sal, autenticação multifator, políticas de bloqueio e gerenciadores de senhas neutralizam a maioria das tentativas de quebra de senha em ambientes de produção.

Como quebrar (hackear) uma senha?

A quebra de senhas é uma das disciplinas mais antigas em segurança ofensiva, mas continua tão relevante quanto sempre, pois os usuários continuam escolhendo segredos previsíveis. Neste tutorial, apresentaremos as técnicas comuns que os atacantes usam para recuperar senhas, as ferramentas que automatizam o trabalho e as contramedidas que os administradores podem implementar para proteger os sistemas contra esses ataques.

O que é quebra de senha?

Quebrar senhas é o processo de tentar obter acesso não autorizado a um sistema restrito, recuperando o segredo que protege um mecanismo de autenticação. O processo de quebra pode envolver a comparação de hashes de senhas armazenadas com uma lista de palavras pré-computadas ou a execução de algoritmos que geram senhas candidatas até que uma correspondência seja encontrada. Uma vez descoberta a correspondência, o atacante pode se autenticar como um usuário legítimo sem precisar adivinhar a senha online.

O que é força da senha?

A força de uma senha é a medida da sua capacidade de resistir a ataques de quebra de senha. A força de qualquer senha é determinada por três propriedades:

  • Comprimento: O número total de caracteres que a senha contém.
  • Complexidade: seja utilizando uma combinação de letras maiúsculas, letras minúsculas, números e símbolos.
  • Imprevisibilidade: Se a senha pode ser facilmente adivinhada por um atacante que conhece o usuário.

Vamos comparar três senhas: senha, password1 e #senha1$Para este exemplo, usaremos o indicador de força de senha do cPanel. As imagens abaixo mostram a força de cada senha candidata.

O indicador de força da senha do cPanel mostra uma classificação muito fraca para o valor da senha.

Nota: a senha utilizada é senha; a intensidade é 1, que é muito fraca.

O indicador de força da senha do cPanel mostra uma classificação fraca para o valor "password1".

Nota: a senha utilizada é password1A força é 28, o que ainda é fraco.

O indicador de força da senha do cPanel mostra uma classificação forte para o valor hashpassword1dollar.

Nota: a senha utilizada é #senha1$A força é 60, o que é considerado forte. Quanto maior o número da força, melhor a senha.

Agora, suponha que precisamos armazenar as mesmas senhas usando o algoritmo de hash MD5. Usaremos um gerador de hash MD5 online para converter cada senha em seu valor de hash. A tabela abaixo mostra os hashes resultantes.

Senha Hash MD5 Indicador de força do painel
senha 5f4dcc3b5aa765d61d8327deb882cf99 1
password1 7c6a180b36896a0a8c02787eeafb0e4c 28
#senha1$ 29e08fb7103c327d68327f23d8d9256c 60

Agora, usaremos um site público de busca reversa de MD5 para quebrar os hashes acima. As imagens abaixo mostram os resultados da quebra de senha para cada valor.

Resultado da pesquisa reversa MD5 para o hash do valor da senha

Resultado da pesquisa reversa MD5 para o hash do valor password1

O resultado da pesquisa reversa de MD5 mostrou falha na quebra do hash forte "password1dollar".

Como você pode ver pelos resultados acima, conseguimos quebrar a primeira e a segunda senhas, que tinham números de força mais baixos. Não conseguimos quebrar a terceira senha, que era mais longa, mais complexa e imprevisível. Ela também tinha um número de força mais alto.

Técnicas de quebra de senha

Existem diversas técnicas comprovadas que os atacantes usam para recuperar senhas. Descreveremos as categorias mais comuns abaixo.

  • Ataque de dicionário: Este método utiliza uma lista de palavras candidatas prováveis ​​e compara cada uma delas com senhas de usuários ou hashes de senhas capturados.
  • Ataque de força bruta: Os ataques de força bruta combinam caracteres alfanuméricos e símbolos usando algoritmos para gerar sistematicamente todas as senhas possíveis até encontrar uma correspondência. Por exemplo, uma senha como senha também pode ser experimentado como palavra usando uma regra híbrida de força bruta.
  • Ataque à mesa arco-íris: Este método se baseia em hashes pré-computados. Suponha que um banco de dados armazene senhas como hashes MD5. O atacante cria outra tabela que armazena hashes MD5 de senhas comuns e compara o hash capturado com a tabela de hashes pré-computados. Se uma correspondência for encontrada, a senha é recuperada.
  • Acho: Como o nome sugere, esse método envolve adivinhação. Senhas como QWERTY, senha e admin São comumente usadas ou definidas como padrão. Se não forem alteradas, podem ser comprometidas rapidamente.
  • Aranhas: A maioria das organizações usa senhas que contêm informações da empresa. Essas informações podem ser coletadas de sites corporativos e redes sociais como Facebook e Twitter. A indexação de sites coleta dados dessas fontes para criar listas de palavras-chave específicas, que são então usadas em ataques de dicionário e de força bruta.
  • Recheio de credenciais: Os atacantes reutilizam pares de nome de usuário e senha vazados em uma violação de segurança contra serviços não relacionados, explorando usuários que reutilizam credenciais.

Uma lista de palavras-chave para indexação em uma empresa fictícia poderia combinar: 1976 (ano de nascimento do fundador); Smith, Jones (sobrenomes); Acme (nome da empresa); Built, To, Last (palavras-chave relacionadas à visão); golfe, xadrez, futebol (hobbies).

A tabela abaixo compara as técnicas em termos de velocidade, pré-requisitos e detectabilidade.

Técnica Agilidade (Speed) Requer Hash? Detectável online?
Dicionário pomposidade Opcional Sim
Força bruta Devagar Opcional Sim
Mesa arco-íris Muito rápido Sim Não (offline)
Adivinhação Variável Não Sim
Aranha Devagar Não Sim
Recheio de credenciais pomposidade Não Sim

Password Cracker Ferramentas

Ferramentas de quebra de senhas são softwares que automatizam as técnicas descritas acima. Já mencionamos uma dessas ferramentas no exemplo de força de senha, onde uma busca pública por MD5 usa uma tabela rainbow para reverter hashes comuns. Agora, vamos analisar outras ferramentas que os profissionais utilizam durante avaliações autorizadas.

1) John the Ripper
John the Ripper Utiliza a linha de comando e aceita listas de palavras com regras para gerar candidatos. Detecta automaticamente muitos formatos de hash comuns. O programa é gratuito, enquanto listas de palavras comerciais selecionadas estão disponíveis separadamente. Visite https://www.openwall.com/john/.

2) Cain & Abel
Cain & Abel corre em Windows e recupera senhas de usuários, realiza sniffing de rede e muito mais. Sua interface gráfica a torna popular entre os iniciantes. A ferramenta não recebe manutenção ativa desde 2014, portanto, use-a apenas em sistemas de laboratório legados. Veja https://sectools.org/tool/cain/.

3) Ophcrack
Ophcrack é uma plataforma cruzada Windows Um programa para quebrar senhas que usa tabelas rainbow. Ele roda em Windows, Linux e macOSe inclui um módulo de força bruta. Visite https://ophcrack.sourceforge.io/.

4) Hashcat
Hashcat é o padrão moderno para recuperação de senhas offline. Ele suporta mais de 300 algoritmos de hash, utiliza aceleração por GPU e oferece ataques baseados em regras. A documentação está disponível em https://hashcat.net/hashcat/.

5) Hidra
O Hydra (THC-Hydra) tem como alvo serviços online como SSH, FTP, RDP e formulários de login HTTP. Ele é distribuído com Kali Linux e é amplamente utilizado em operações autorizadas de equipes vermelhas.

Como se proteger contra ataques de quebra de senha?

Uma organização pode utilizar as seguintes medidas para reduzir as chances de suas senhas serem quebradas:

  • Exija um mínimo de 12 caracteres e evite padrões previsíveis como 11552266 ou qwerty1234.
  • Armazene senhas com uma função hash unidirecional lenta, como bcrypt, scrypt ou Argon2, em vez de hashes rápidos como MD5 ou SHA-1.
  • Adicione um sal a cada senha antes de gerar o hash; o sal impede buscas em tabelas rainbow, mesmo quando o hash em si é rápido.
  • Adote políticas de senhas que priorizem pontuações de força elevadas e promovam o uso de frases-senha, conforme recomendado pela NIST SP 800-63B.
  • Habilite a autenticação multifator (MFA) para que uma senha roubada por si só não conceda acesso.
  • Utilize um gerenciador de senhas para gerar credenciais exclusivas para cada serviço, neutralizando ataques de preenchimento de credenciais.
  • Configure o bloqueio de conta, a limitação de velocidade e o monitoramento contínuo para detectar atividades de força bruta online precocemente.

Atividade de hacking: Hackeie agora!

Neste cenário prático, vamos desvendar um Windows Conta que utiliza uma senha simples. Windows Armazena credenciais locais como hashes NTLM (um esquema baseado em MD4), e usaremos o módulo de quebra de NTLM do Cain and Abel para recuperar o valor.

Caim e Abel conseguem quebrar senhas usando ataque de dicionário, força bruta ou criptoanálise (tabelas pré-computadas). Usaremos o ataque de dicionário aqui. Baixe a lista de palavras. 10k-Most-Common.zip de um espelho confiável. Para esta demonstração, criamos uma conta chamada Contas com a senha QWERTY com um Windows 7 máquinas de laboratório.

Windows Foram criados 7 usuários de laboratório chamados "Accounts" com a senha simples "qwerty" para demonstração.

Como quebrar uma senha

O passo a passo abaixo relaciona cada tela de Caim e Abel com a ação a ser tomada. Siga os passos na ordem indicada, usando sua própria conta de teste, nunca em um sistema que não seja seu.

Passo 1) Abra Caim e Abel.
Inicie o aplicativo; você verá a seguinte tela principal.

Interface principal de Caim e Abel com a aba Cracker visível.

Passo 2) Encontre o botão Adicionar.
Certifique-se de que a aba "Cracker" esteja selecionada, conforme mostrado acima, e clique no botão "Adicionar" na barra de ferramentas.

A aba "Cracker" está selecionada e o botão "Adicionar" está destacado na barra de ferramentas de Caim e Abel.

Passo 3) Escolha a fonte de importação.
A seguinte janela de diálogo será exibida. Selecione Importar hashes do sistema local e clique em Avançar.

Diálogo de Caim e Abel perguntando de qual fonte importar os hashes NTLM.

Passo 4) Revveja as contas importadas.
As contas de usuário locais estão listadas a seguir. Os resultados exatos refletirão as contas de usuário em sua máquina de laboratório.

Lista de produtos locais importados Windows contas prontas para serem desvendadas dentro de Caim e Abel

Passo 5) Clique com o botão direito do mouse na conta desejada.
Clique com o botão direito do mouse na conta que deseja invadir. Para este tutorial, usaremos a Contas usuário.

Acesse o menu de contexto clicando com o botão direito do mouse no usuário "Contas" dentro de Caim e Abel.

Passo 6) Abra o painel de ataque de dicionário.
Na janela de ataque de dicionário, clique com o botão direito do mouse na seção do dicionário e selecione Adicionado a lista como mostrado abaixo.

Painel de ataque de dicionário com a opção "Adicionar à lista" destacada.

Passo 7) Navegue até o arquivo da lista de palavras.
Navegue até o 10 mil-mais-comuns.txt O arquivo que você acabou de baixar, selecione-o.

Abra o navegador de arquivos dentro do Cain and Abel para escolher a lista das 10 mil palavras mais comuns em senhas.

Passo 8) RevVeja a senha recuperada.
Se o usuário escolheu uma senha simples como QWERTYVocê verá resultados semelhantes à tela abaixo, com o valor em texto simples ao lado da conta do usuário.

Caim e Abel mostrando a senha em texto simples recuperada (tipo "qwerty") para o usuário de Contas.

Observação: o tempo necessário para quebrar uma senha depende da força da senha, da complexidade da lista de candidatos e da capacidade de processamento da sua máquina. Se o ataque de dicionário não recuperar a senha, tente um ataque de força bruta ou criptoanálise.

Como a IA é Reshaping Quebra e defesa de senhas

A inteligência artificial tornou-se uma força importante em ambos os lados da quebra de senhas. Os atacantes treinam modelos de linguagem com base em vazamentos de credenciais para prever senhas realistas, enquanto os defensores combinam esses mesmos modelos com sistemas de telemetria para detectar invasões mais rapidamente.

Eis como a IA está transformando o setor atualmente:

  • Geração de listas de palavras mais inteligente: Modelos generativos como o PassGAN aprendem padrões de senhas humanas e produzem listas de candidatos que quebram mais hashes do que dicionários estáticos.
  • Avaliação de Risco Comportamental: A IA defensiva inspeciona a localização geográfica de login, a impressão digital do dispositivo e o tipo de usuário.ping ritmo, enviando contextos incomuns para aprimorar a autenticação.
  • Detecção de anomalias em tempo real: Classificadores de aprendizado de máquina monitoram registros de autenticação e sinalizam tentativas de preenchimento de credenciais ou ataques de força bruta lentos que as regras de assinatura não detectam.
  • Aconselhamento automatizado sobre políticas públicas: As plataformas de identidade avaliam novas senhas em relação a conjuntos de dados específicos da organização e sugerem alternativas mais robustas antes que os usuários as finalizem.
  • Defesa contra phishing: A IA acelera a implementação dos fluxos FIDO2 e de chaves de acesso, analisando sinais de risco e reduzindo o atrito para o usuário.

Combine o monitoramento por IA com autenticação multifatorial, algoritmos de hash modernos como o Argon2 e notificações rápidas de violações de segurança para manter a defesa automatizada à frente do ataque automatizado.

Perguntas Frequentes

A quebra de senhas é legal apenas quando realizada com autorização escrita explícita, como em testes de penetração, auditorias internas ou recuperação de suas próprias credenciais. A quebra não autorizada viola as leis de uso indevido de computadores em praticamente todas as jurisdições.

O hashing é uma transformação unidirecional: o valor original não pode ser recuperado. A criptografia é reversível com a chave correta. As senhas devem sempre ser armazenadas como hashes com salt, usando algoritmos como bcrypt, scrypt ou Argon2, e nunca como strings criptografadas.

Para quebra de senhas offline, Hashcat Geralmente é o mais rápido porque utiliza aceleração por GPU e suporta ataques baseados em regras em mais de 300 formatos de hash. John the Ripper Continua sendo uma opção popular quando os recursos da GPU são limitados.

Um salt é um valor aleatório único adicionado a cada senha antes de ela ser criptografada. O uso de salt impede ataques de tabela arco-íris, pois tabelas pré-computadas só funcionam contra hashes sem salt. Além disso, o salt garante que dois usuários com a mesma senha produzam valores armazenados diferentes.

Uma senha de 12 caracteres, misturando letras, números e símbolos, pode levar séculos para ser quebrada por força bruta contra um hash lento como o bcrypt. Contra um MD5 sem salt, a mesma senha pode ser quebrada em dias. A escolha do hash e seu comprimento são fatores importantes.

Os atacantes treinam modelos generativos como o PassGAN em vazamentos de credenciais para que eles prevejam senhas humanas realistas. As listas de palavras resultantes quebram consideravelmente mais hashes do que dicionários estáticos durante o mesmo período de execução, especialmente quando combinadas com mutações baseadas em regras. Hashcat.

Sim. A IA defensiva estabelece parâmetros de referência para o comportamento normal de login, avalia o risco de cada tentativa e sinaliza ondas de ataques de preenchimento de credenciais ou campanhas lentas de força bruta que os mecanismos de regras não detectam. Combine o monitoramento por IA com autenticação multifator e algoritmos de hash modernos, como o Argon2, para obter os melhores resultados.

A autenticação multifator bloqueia a grande maioria das tentativas de quebra de senha, pois uma senha recuperada sozinha não é suficiente para concluir o login. Fatores de segurança resistentes a phishing, como chaves de segurança FIDO2 e senhas de acesso, oferecem a proteção mais robusta e devem ser ativados sempre que possível.

Resuma esta postagem com: