Os dicionários de senhas e a falência de um modelo

Por Colaborador externo | 31.10.2013 às 07:00

Por André Facciolli*

Durante décadas, a senha de oito caracteres, com pelo menos um numeral e um símbolo não alfanumérico, foi vista como muito segura e até chamada "senha forte". Até mesmo na comunidade técnica, que sempre reconheceu haver uma taxa de vulnerabilidade nesse esquema, havia a ponderação de que explorar tal vulnerabilidade seria tarefa dificílima e custosa, o que acabou legitimando o uso da “senha forte” em serviços críticos como e-commerce e transações bancárias.

O raciocínio tinha sua lógica. Uma senha de oito caracteres, livremente escolhidos pelos usuários entre os 94 personagens disponíveis em um teclado padrão, resulta em uma possibilidade singular num universo de 6,1 quatrilhões (isto mesmo, “quatrilhões”) de possibilidades. Assim, mesmo dispondo de um cartão com todos os requisitos de conexão do cliente, um invasor com grande maestria técnica poderia levar meses – ou até anos – para encontrar a sequência correta.

No entanto, o forte avanço dos processadores e dos analisadores de algoritmos já vem mudando esta realidade há muito tempo. Além disso, uma série de fatores relacionados não à estatística, mas ao comportamento humano, contribui para tornar este modelo algo cada vez mais inseguro e até perigoso para o usuário. Em recente palestra no Brasil, o especialista em senhas de proteção John Richardson – evangelista da empresa de segurança Lieberman Software – apresentou alguns elementos para contextualizar o tema.

Em primeiro lugar, explicou Lieberman, os seres humanos têm grande dificuldade para se lembrarem de uma sequência de oito dígitos em sua memória de curto-prazo, sendo mais afeitos a uma extensão de cinco dígitos. A inclusão de símbolos e números na sequência cognitiva ajuda a fragmentar sua imagem mental, tornando-a ainda mais difícil de ser retida.

Como resultado, as pessoas usam uma variedade de truques para criar senhas que possam ser lembradas de forma mais fácil. Assim, ao invés de criar senhas ilegíveis, difíceis de soletrar, a tendência é de se usar palavras ou pedaços de palavras e, de preferência, relacionados a nomes próprios, acontecimentos ou coisas relacionadas à experiência cotidiana.

Como é obrigado a inserir um símbolo e ao menos um número, a tendência mais forte é colocar uma maiúscula no início da palavra-chave e um número ou mais no final. Quando se usa mais de um número, o hábito predominante é colocá-los em sequência crescente, como “123”, ou “789”.

Apesar de dispor de um teclado com possibilidades quase infinitas, os humanos, geralmente, só criam uma meia dúzia de senhas para dezenas de usos. E, para facilitar a lembrança, estas poucas senhas são ainda muito parecidas, com poucas mudanças pontuais e pouca presença do aleatório.

Em um estudo recente de seis milhões de senhas de usuários reais, as 10 mil senhas mais comuns se mostraram capazes de acessar 98,1% das contas de usuários em aplicações como jogos, redes sociais, bases de dados e até cartões de compra.

Conhecendo tal situação, os hackers desenvolvem “dicionários” de palavras usadas em senhas com suas típicas combinações de letras, símbolos e sequências numéricas. Com o uso de tal ferramenta, eles se tornam aptos a romper com um segredo de acesso de forma milhões de vezes mais fácil do que aconteceria se agissem dentro de um universo aleatório.

E senhas não aleatórias ainda estão longe de ser o maior problema. Acima desta vulnerabilidade aparece o hábito do reuso. O usuário médio tem 26 contas protegidas por senha, mas apenas cinco senhas diferentes em todas essas contas. Assim, um pequeno descuido que cometa com sua senha em um site de jogo, por exemplo, pode representar a chave para que os hackers entrem em diversas outras aplicações mais críticas, como a de conta corrente, por exemplo.

Houve também avanços substanciais no hardware usado para quebrar senhas. Ao lado de ataques de dicionário e baseados em comportamento – que são considerados “elegantes” – o emprego da "força bruta", via uso intensivo de hardware, vem tendo cada vez mais sucesso.

Em um ataque de força bruta, simplesmente aplica-se cada um dos 6,1 quatrilhões de combinações de uma possível senha de oito caracteres, até que se quebre uma barreira. Hoje, uma máquina bem configurada para quebra de senha, com software dedicado (disponível em vários sites para hackers) pode quebrar uma chamada senha forte, mesmo que bem construída, em um espaço de 5,5 horas.

O custo de uma máquina desse tipo, há poucos anos altíssimo, chegou em 2012 a um patamar de US$ 30 mil, portanto, bastante acessível para hackers financeiramente estruturados. O fato, porém, é que possuir uma máquina dessas deixou também de ser uma exigência para o ataque de força bruta.

Tal como as universidades e grandes instituições de pesquisas, os hackers hoje contam com comunidades globais de comutação colaborativa. Trata-se do Multitude-Hacking, um modelo de processamento distribuído que permite ao hacker desmembrar a decupagem do algoritmo ao longo de milhares de máquinas normais de usuários, que são usadas como zumbis e que, em conjunto, compõem um formidável parque de hardware para a quebra de senhas fortes.

Conclui-se assim que as pessoas e – principalmente – organizações devem rever imediatamente suas políticas de segurança através de senha. Além da sintaxe sequencial, as regras atuais de controle sobre a expiração da senha, seu comprimento mínimo, o uso do conjunto de símbolos completo e formas de redefinições de senha são comprovadamente muito fracas.

* André Facciolli é diretor da NetBR