Algoritmo brasileiro pode aumentar a proteção das senhas

cybersecurityO algoritmo brasileiro LYRA2 ganhou reconhecimento especial entre finalistas em competição internacional de proteção de senhas. Elogiado pelo seu design elegante e pela sua abordagem alternativa contra ataques feitos com vários processadores em paralelo, o algoritmo é disponibilizado gratuitamente para uso público (http://lyra2.net/).

Em 2012, foi mostrado que qualquer senha de até oito caracteres utilizada em um computador poderia ser hackeada em menos de 5 horas e trinta minutos. Visando aumentar a segurança dos usuários, especialistas da área de segurança abriram as inscrições para uma competição de algoritmos capazes de defender senhas de ataques cibernéticos (Password Hashing Competition). Essa oportunidade fez com que o professor Marcos Simplicio Jr, juntamente com seus orientandos Leonardo Almeida, Ewerton Andrade e Paulo dos Santos, e o professor Paulo Barreto formassem o grupo que seria responsável pela criação do novo algoritmo. A competição durou de 2013 até 2015, reunindo especialistas da área de segurança do mundo todo.

O código do algoritmo é aberto, ou seja, qualquer um pode acessá-lo e ver como ele funciona (sabendo um pouco de programação). Isso faz com que o algoritmo seja livre de backdoors, caminhos mais curtos para burlar o sistema de verificação, como os que a agência de segurança americana (NSA) costuma instalar em seus sistemas para facilitar a vigilância do governo norte-americano sobre a população. Assim, qualquer ataque que queira descobrir a senha do usuário terá de usar a força bruta virtual, com uma máquina testando senha por senha, a um elevado custo computacional.

Diferentemente de cifras criptográficas, que usam uma chave para codificar e decodificar senhas, o LYRA2 realiza processos de hashing e salting em senhas, embaralhando os bits dos números e caracteres que compõem a senha de forma específica para cada usuário, formando um código final muito mais complexo do que o digitado. Isso impede que um hacker faça o caminho inverso e chegue à senha original a partir do código final. Assim, mesmo que um hacker descubra o código final da senha (hash) do Facebook de alguém, e a pessoa utilize a mesma senha em seu cartão de crédito, o atacante não terá acesso ao segundo, pois os códigos finais são únicos e diferentes.

Mas a intenção do algoritmo é que o atacante não descubra código nenhum.

Táticas de Defesa – como prejudicar o atacante e não o usuário legítimo

Além dos processos de hashing e salting, o LYRA2 apresenta outras maneiras interessantes de defender as senhas de atacantes especializados; entre elas, destacam-se a resistência a ataques em paralelo e a necessidade de se acessar uma quantidade de memória repetidamente.

Um dos problemas enfrentados pelo algoritmo é o cenário em que o atacante tem acesso a um elevado poder computacional. Se um governo ou hacker dotado de hardware especializado estivesse atrás da informação de algum usuário, ele não usaria um hardware processando senha por senha, mas centenas deles ao mesmo tempo.

A forma que o LYRA2 encontrou para combater isso foi atrelar um custo de memória a cada tentativa, assim a memória total do hardware seria dividida entre os diversos canais de ataque. Dessa maneira, os ataques simultâneos perdem sua eficácia, pois como a capacidade de processamento de dados em paralelo é atrelada à memória utilizada, a velocidade do teste de cada senha diminui. Isso tudo faz com que o custo da tentativa de quebra de senha aumente, tanto em tempo, quanto em material tecnológico à disposição. Por exemplo, se um usuário legítimo configurar o algoritmo para executar em 1 segundo e utilizar 1 Gigabyte de memória, um atacante, para testar mil senhas por segundo, precisaria de mil processadores e um total de 1 Terabyte de memória RAM, algo não muito viável.

Segundo o professor Marcos Simplício Jr. o algoritmo foi pensado com o intuito de “prejudicar o atacante e não o usuário legítimo”, de forma que quando o usuário insira sua senha, a verificação não demorará mais do que alguns instantes. O tempo de verificação e o uso de memória também podem ser modificados, de acordo com as preferências do usuário.

Parâmetros

O algoritmo permite que o usuário ajuste os parâmetros do uso de memória e do custo de processamento de acordo com a capacidade de seu computador, e de acordo com suas necessidades de segurança, otimizando seu desempenho contra ataques. Assim, LYRA2 é um algoritmo que pode ser utilizado tanto por usuários finais quanto por grandes corporações, utilizando diferentes níveis de recursos computacionais dependendo da aplicação.

Aplicação – A defesa virtual além das senhas

Desde que o grupo de pesquisa disponibilizou o algoritmo para o uso do mundo todo, ele vem conquistando espaço e novas formas de uso, inclusive entre uma das moedas virtuais, o VertCoin. Como o LYRA2 é capaz de neutralizar boa parte da eficácia de testes simultâneos, ele impede que pessoas com hardwares especializados ganhem vantagens no processo da geração de moeda virtual, que antes era mais dependente da tecnologia que cada pessoa dispunha.

Os comentários estão desativados.

%d blogueiros gostam disto: