Ataques de força bruta são bastante simples de entender, mas difíceis de proteger. A criptografia é matemática , e conforme os computadores se tornam mais rápidos em matemática, eles se tornam mais rápidos em tentar todas as soluções e ver qual delas se encaixa.
Esses ataques podem ser usados contra qualquer tipo de criptografia, com vários graus de sucesso. Ataques de força bruta tornam-se mais rápidos e eficazes a cada dia que passa, conforme novos e mais rápidos hardwares de computador são lançados.
Brute-Force Basics
Os ataques de força bruta são simples de entender. Um invasor possui um arquivo criptografado - digamos, seu Última passagem ou KeePass banco de dados de senha. Eles sabem que esse arquivo contém dados que desejam ver e que há uma chave de criptografia que o desbloqueia. Para descriptografá-lo, eles podem começar a tentar todas as senhas possíveis e ver se isso resulta em um arquivo descriptografado.
Eles fazem isso automaticamente com um programa de computador, de modo que a velocidade com que alguém pode fazer a criptografia de força bruta aumenta à medida que o hardware de computador disponível fica cada vez mais rápido, capaz de fazer mais cálculos por segundo. O ataque de força bruta provavelmente começaria com senhas de um dígito antes de passar para senhas de dois dígitos e assim por diante, tentando todas as combinações possíveis até que uma funcione.
Um “ataque de dicionário” é semelhante e tenta palavras em um dicionário - ou uma lista de senhas comuns - em vez de todas as senhas possíveis. Isso pode ser muito eficaz, pois muitas pessoas usam essas senhas fracas e comuns.
Por que os invasores não podem usar serviços da Web de força bruta
Há uma diferença entre ataques de força bruta online e offline. Por exemplo, se um invasor deseja usar a força bruta para entrar em sua conta do Gmail, ele pode começar a tentar todas as senhas possíveis - mas o Google irá rapidamente eliminá-las. Os serviços que fornecem acesso a essas contas restringirão as tentativas de acesso e proibirão os endereços IP que tentam fazer login tantas vezes. Assim, um ataque contra um serviço online não funcionaria muito bem porque muito poucas tentativas podem ser feitas antes que o ataque seja interrompido.
Por exemplo, após algumas tentativas de login malsucedidas, o Gmail mostrará uma imagem CATPCHA para verificar se você não é um computador tentando senhas automaticamente. Eles provavelmente interromperão completamente suas tentativas de login se você continuar por tempo suficiente.
Por outro lado, digamos que um invasor roubou um arquivo criptografado do seu computador ou conseguiu comprometer um serviço online e baixar esses arquivos criptografados. O invasor agora tem os dados criptografados em seu próprio hardware e pode tentar quantas senhas quiser quando quiser. Se eles tiverem acesso aos dados criptografados, não há como impedi-los de tentar um grande número de senhas em um curto período de tempo. Mesmo se você estiver usando criptografia forte, é benéfico para você manter seus dados seguros e garantir que outras pessoas não possam acessá-los.
Hashing
Algoritmos de hash fortes podem retardar ataques de força bruta. Essencialmente, os algoritmos de hash realizam trabalho matemático adicional em uma senha antes de armazenar um valor derivado da senha no disco. Se um algoritmo de hash mais lento for usado, será necessário milhares de vezes mais trabalho matemático para tentar cada senha e reduzir drasticamente os ataques de força bruta. No entanto, quanto mais trabalho é necessário, mais trabalho um servidor ou outro computador precisa realizar a cada vez que o usuário efetua login com sua senha. O software deve equilibrar a resiliência contra ataques de força bruta com o uso de recursos.
Velocidade de força bruta
A velocidade depende do hardware. Agências de inteligência podem construir hardware especializado apenas para ataques de força bruta, assim como os mineradores de Bitcoin constroem seu próprio hardware especializado otimizado para mineração de Bitcoin. Quando se trata de hardware de consumidor, o tipo de hardware mais eficaz para ataques de força bruta é uma placa gráfica (GPU). Como é fácil tentar várias chaves de criptografia diferentes ao mesmo tempo, muitas placas gráficas em paralelo são ideais.
No final de 2012, Ars Technica relatado que um cluster de 25 GPU poderia quebrar todas as senhas do Windows com menos de 8 caracteres em menos de seis horas. O algoritmo NTLM que a Microsoft usou simplesmente não era resiliente o suficiente. No entanto, quando o NTLM foi criado, demoraria muito mais para tentar todas essas senhas. Isso não foi considerado uma ameaça suficiente para a Microsoft tornar a criptografia mais forte.
A velocidade está aumentando e, em algumas décadas, podemos descobrir que mesmo os algoritmos criptográficos e chaves de criptografia mais fortes que usamos hoje podem ser rapidamente quebrados por computadores quânticos ou qualquer outro hardware que usaremos no futuro.
Protegendo seus dados contra ataques de força bruta
Não há como se proteger completamente. É impossível dizer o quão rápido o hardware do computador ficará e se algum dos algoritmos de criptografia que usamos hoje tem pontos fracos que serão descobertos e explorados no futuro. No entanto, aqui estão os princípios básicos:
- Mantenha seus dados criptografados protegidos, onde invasores não possam acessá-los. Depois de copiar os dados para o hardware, eles podem tentar ataques de força bruta contra eles quando quiserem.
- Se você executar qualquer serviço que aceite logins pela Internet, certifique-se de que limita as tentativas de login e bloqueia as pessoas que tentam fazer login com muitas senhas diferentes em um curto período de tempo. O software do servidor geralmente é configurado para fazer isso fora da caixa, pois é uma boa prática de segurança.
- Use algoritmos de criptografia fortes, como SHA-512. Certifique-se de não usar algoritmos de criptografia antigos com fraquezas conhecidas que são fáceis de quebrar.
- Use senhas longas e seguras. Toda a tecnologia de criptografia do mundo não vai ajudar se você estiver usando "senha" ou o sempre popular "hunter2".
Ataques de força bruta são algo com que se preocupar ao proteger seus dados, escolher algoritmos de criptografia e selecionar senhas. Eles também são um motivo para continuar desenvolvendo algoritmos criptográficos mais fortes - a criptografia deve acompanhar a rapidez com que está se tornando ineficaz pelo novo hardware.
Crédito da imagem: Johan Larsson no Flickr , Jeremy Gosney