Entre as técnicas de roubo de credenciais, o ataque de dicionário se destaca por sua simplicidade e eficácia contra senhas fracas ou previsíveis.
Diferente do ataque de força bruta - que testa todas as combinações possíveis de caracteres -, o ataque de dicionário restringe suas tentativas a uma lista pré-definida de palavras e senhas populares, o que o torna mais rápido e eficiente em muitos casos.
Neste artigo, exploraremos como funciona o ataque de dicionário, quais são as senhas mais visadas e as variantes mais comuns desse tipo de ataque atualmente.
Além disso, apresentaremos as principais medidas de detecção e proteção recomendadas para se defender contra essa ciberameaça.
1. O que são os ataques de dicionário
Um ataque de dicionário é uma tentativa sistemática de adivinhar credenciais de acesso, como nome de usuário e senha.
Ele utiliza listas de palavras conhecidas - chamadas de “dicionários” - que reúnem combinações frequentemente usadas por pessoas em suas senhas.
Esses dicionários podem incluir nomes próprios, termos comuns, combinações simples de números e letras (como “123456”, “qwerty”, “password”) e até variações mais sofisticadas geradas automaticamente.
O ataque de dicionário é uma variante do ataque de força bruta, mas com um escopo reduzido, priorizando senhas com maior probabilidade de sucesso.
A limitação do conjunto de tentativas permite ao atacante realizar milhões de verificações em segundos, especialmente com o uso de scripts automatizados e servidores distribuídos.
2. Como os ataques de dicionário são realizados
Na prática, o ataque de dicionário pode ocorrer de diferentes maneiras, dependendo do alvo e do serviço exposto.
Um dos exemplos mais comuns é o ataque contra o serviço SSH (porta 22), utilizado para conexões seguras entre servidores.
Ataques a SSH são detectáveis nos logs do sistema (por exemplo, em /var/log/auth.log em sistemas Linux).
Nesses registros, é possível observar tentativas sucessivas de autenticação com nomes de usuários como admin, root, webadmin, sales, staff, entre outros.
O processo típico segue três etapas:
- Enumeração de usuários: o invasor tenta identificar nomes de contas válidas no sistema, testando nomes comuns ou obtidos de vazamentos anteriores;
- Tentativa de senha: uma vez identificado um nome de usuário válido, o atacante utiliza seu “dicionário” de senhas conhecidas para tentar autenticar-se;
- Acesso e persistência: se a senha correta for encontrada, o invasor ganha acesso ao sistema e pode instalar backdoors, roubar dados ou escalar privilégios.
2.1. Senhas mais visadas em ataques de dicionário
Muitos ataques utilizam senhas embutidas em malwares e worms.
Um caso emblemático é o Conficker Worm, que continha uma lista de 240 senhas comuns, como: 123456, password, admin, qwerty, abc123, test123, love123 e 111111.
Essas senhas refletem o comportamento previsível dos usuários ao escolher combinações simples ou repetitivas.
Assim, mesmo sistemas protegidos por autenticação segura (como SSH ou RDP) podem ser comprometidos se as senhas utilizadas forem fracas ou comuns.
3. Ataques de dicionário automatizados e variações modernas
Os ataques de dicionário atuais são quase sempre automatizados e podem ser executados em larga escala.
Bots percorrem blocos de endereços IP, escaneando portas abertas e tentando combinações de credenciais conhecidas.
Além disso, novas variantes surgiram:
- Ataques híbridos: combinam listas de palavras com regras de mutação (ex: substituir “a” por “@”, “e” por “3”);
- Ataques distribuídos: realizados por botnets, que distribuem as tentativas entre milhares de dispositivos, evitando bloqueios por volume de acessos;
- Ataques combinados com engenharia social: inclui informações públicas (como nomes de familiares e datas de nascimento, cidades) no dicionário para aumentar a taxa de acerto.
Essas evoluções tornam o ataque de dicionário uma ameaça constante, mesmo em ambientes corporativos protegidos.
4. Como detectar ataques de dicionário
A detecção de ataques de dicionário é uma etapa essencial para identificar tentativas de invasão antes que resultem em comprometimentos reais.
Esses ataques podem ser reconhecidos por meio da análise dos arquivos de log do sistema, que registram todas as tentativas de autenticação realizadas no servidor.
Sinais comuns incluem múltiplas tentativas de login em um curto intervalo de tempo, o que indica um padrão anormal de acesso.
Essas tentativas costumam partir do mesmo endereço IP ou de uma sequência de IPs suspeitos - um comportamento típico de bots automatizados.
Administradores podem visualizar essas tentativas em tempo real usando o comando: tail -f /var/log/auth.log | sed G
Esse monitoramento revela padrões de acesso anormais e facilita a identificação de ataques em andamento.
Além da análise manual, ferramentas especializadas como Fail2Ban e DenyHosts desempenham um papel crucial nesse processo.
Elas monitoram continuamente os logs do sistema, detectam comportamentos suspeitos e podem bloquear automaticamente endereços IP responsáveis por múltiplas tentativas de login mal-sucedidas.
Dessa forma, a detecção e a resposta tornam-se automatizadas e mais eficazes, reduzindo significativamente o risco de intrusão por meio de ataques de dicionário.
5. Medidas de proteção contra ataques de dicionário
A defesa contra ataques de dicionário exige uma abordagem múltipla, combinando boas práticas de autenticação, monitoramento e controle de acesso.
A seguir, estão as principais medidas recomendadas.
5.1. Uso de senhas fortes e imprevisíveis
O primeiro passo é eliminar senhas curtas, previsíveis ou baseadas em palavras de dicionário.
Senhas fortes devem conter letras maiúsculas e minúsculas, números e símbolos, com mínimo de 12 caracteres.
Idealmente, devem ser geradas por gerenciadores de senhas ou políticas automatizadas de complexidade.
5.2. Autenticação multifator (MFA)
Mesmo que um atacante descubra a senha, o uso de MFA impede o acesso sem a segunda etapa de verificação (token, app autenticador, biometria, etc.).
Essa é uma das defesas mais eficazes contra ataques de dicionário e força bruta.
5.3. Restrições de IP e firewall
Em redes domésticas e corporativas, é possível limitar o acesso SSH ou RDP apenas a endereços IP específicos.
Em sistemas Linux, isso pode ser feito com:
/etc/hosts.allow : sshd: [IP_autorizado]
/etc/hosts.deny : ALL: ALL
Essa simples configuração bloqueia tentativas externas não autorizadas.
5.4. Ferramentas de bloqueio automático
Fail2Ban
O Fail2Ban é atualmente a ferramenta mais eficaz para proteção de servidores Linux.
Ele monitora os logs do sistema e, ao detectar falhas de login em excesso, adiciona o IP ofensivo ao firewall, bloqueando novas tentativas temporariamente.
Os principais parâmetros de configuração incluem:
- bantime: tempo de bloqueio do IP (em segundos);
- findtime: intervalo de tempo para contagem das tentativas;
- maxretry: número máximo de tentativas permitidas.
O administrador também pode configurar alertas por e-mail e ações automáticas específicas.
DenyHosts
O DenyHosts, embora mais antigo, ainda é amplamente utilizado.
Ele registra IPs maliciosos no arquivo /etc/hosts.deny, bloqueando o acesso após um número definido de tentativas.
O sistema também permite sincronizar listas de IPs bloqueados com outros servidores, criando uma espécie de defesa colaborativa contra ataques globais.
5.5. Monitoramento e auditoria contínua
Administradores devem revisar logs regularmente e configurar alertas automáticos para comportamentos suspeitos.
Ferramentas de SIEM (Security Information and Event Management) podem correlacionar tentativas de login em diferentes sistemas, identificando ataques coordenados.
5.6. Bloqueio de usuários inativos e revisão de credenciais
Contas antigas ou não utilizadas devem ser removidas ou desativadas.
O uso de nomes genéricos (como admin, guest, test) deve ser evitado, pois são os primeiros alvos nos ataques de dicionário.
6. Considerações finais
Os ataques de dicionário continuam sendo uma das ameaças mais comuns e bem-sucedidas contra sistemas conectados à internet.
A simplicidade da técnica - combinada com a recorrente negligência dos usuários ao escolher senhas - garante sua relevância até hoje.
Proteger-se contra esse tipo de ataque exige uma estratégia abrangente que inclua:
- senhas fortes e únicas;
- autenticação multifator;
- ferramentas de bloqueio automático (Fail2Ban, DenyHosts);
- restrição de IPs e monitoramento constante;
- políticas de hash e armazenamento seguro.
Contudo, a proteção efetiva vai além da adoção de boas práticas individuais - ela depende de gestão contínua e visibilidade total sobre quem acessa o quê, quando e como.
Pensando nisso, a Diazero Security oferece um serviço completo de Gestão de Acessos, unindo a inteligência do SOC a uma governança contínua e estratégica.
A solução garante visibilidade total dos acessos, controle preciso de permissões e resposta automatizada a comportamentos suspeitos.
Principais benefícios:
- Redução de riscos e prevenção de acessos indevidos;
- Automação no ciclo de permissões, otimizando a gestão de usuários;
- Conformidade com a LGPD e políticas internas.
Com a Diazero, sua empresa reforça a resiliência cibernética, aumenta a eficiência operacional e eleva a maturidade da gestão de identidades.
Fale conosco e saiba como aprimorar a segurança do seu ambiente digital.
Segurança