Por Ricardo Anastácio (*)

Desde os primórdios dos sistemas de informação que os dados são protegidos através da utilização de um nome de utilizador e a respetiva palavra-passe. Considerando esta regra, o National Institute of Standards and Technology (NIST), nos Estados Unidos da América publicou, em 2003, a norma 800-63, com o objetivo de promover o que se considerava uma boa palavra passe - uma mistura de letras, números e símbolos. A palavra-passe ideal pressupunha uma boa dose de aleatoriedade, impossibilitando terceiros de a adivinharem. O problema é que estas palavras-passe são difíceis de memorizar e os utilizadores acabam por reutilizar a mesma palavra-passe nos vários sistemas onde se registam ou escrevê-las num papel ou ficheiro (uma grave quebra de segurança).

Recentemente, o NIST revisitou esta norma com um foco bastante diferente. Enquanto a primeira norma se focava na questão técnica da segurança e na qualidade da senha, a nova revisão concentra-se na usabilidade do sistema de autenticação. A razão é fácil de perceber, sendo resumida por Jim Fenton na sua apresentação durante a edição de 2016 do evento PasswordsCon da BSides em Las Vegas: se não é usável, os utilizadores fazem batota e quebram qualquer esquema de segurança.

Para minimizar os riscos de segurança cometidos pelos utilizadores, as boas práticas sugerem que se impeça o registo de senhas comuns (como "123456") e recomenda-se aos utilizadores a utilização de uma palavra-passe de várias palavras, em vez de caracteres aleatórios sem qualquer suporte cognitivo. É também recomendado, caso seja possível e aplicável, que os utilizadores façam uso de ferramentas de gestão de senhas (ex: KeePass, LastPass, Dashlane) evitando a necessidade de memorizar as palavras-passe utilizadas em cada sistema.

Os métodos de recuperação de palavras-passe devem também ser ajustados. Desaconselham-se os desafios de perguntas e respostas (já que não são eficazes, pois obrigam a recordar a palavra-passe, a pergunta e a resposta escolhidos para ajudar a adivinhar a palavra-passe) e a devolução de pistas (como acontecia no ecrã de login do Windows 7), porque facilita o trabalho a hackers com algumas capacidades de engenharia social.

Tendo em vista a usabilidade dos sistemas de autenticação, a norma 800-63 recomenda o fim da expiração periódica de senhas de acesso. Normalmente, estas expiram por existir a probabilidade de alguém ter tido acesso indevido à senha. Tal pode acontecer, essencialmente, de duas formas.

A primeira ocorre quando é o próprio utilizador que partilha a senha. Neste caso, importa perceber a razão desta partilha e identificar se ocorreu por não serem facilitados os mecanismos de delegação no sistema, fazendo com que a palavra-passe seja partilhada de forma ingénua (por exemplo, através de um post-it no computador).

A segunda acontece quando o acesso é comprometido por um hacker e, aí sim, é essencial invalidar a senha e repô-la. Neste caso, a recuperação de acesso deve ser efetuada por um meio alternativo, por exemplo na presença do utilizador. Considerando que os sistemas são devidamente seguros e periodicamente verificados, então a invalidação do acesso só deverá ocorrer mediante evidências de que a conta possa estar comprometida.

A norma revisita ainda todo o processo de autenticação e, apesar do foco estar na usabilidade do sistema, as considerações de cariz técnico não foram postas de lado. São aconselhados procedimentos como o throttling (capacidade do site limitar o ritmo de pedidos efetuados de forma a impedir ataques de força) ou a autenticação de dois fatores (que confirma a identidade do utilizador com recurso a aplicações de autenticação como o Google Authenticator).

Na prática, a revisão da norma 800-63 incorpora a atual tendência de olhar para a segurança e, consequentemente a usabilidade, como parte integrante do ciclo de desenvolvimento de um sistema. Esse será o caminho certo para se construírem sistemas mais seguros.

(*) Coordenador de Projeto na Opensoft