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.

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.
Nota: a senha utilizada é senha; a intensidade é 1, que é muito fraca.
Nota: a senha utilizada é password1A força é 28, o que ainda é fraco.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.















