Podemos pensar em Multifator de Autenticação (MFA) como um ou mais passos adicionais que são necessários quando se autentica contra um sistema, após a introdução do primeiro fator (por exemplo, após a introdução do utilizador e da password), e antes de se conseguir aceder a um sistema.
Remetendo para contas online, imagine que de alguma forma as suas credenciais foram comprometidas. Isto é, que alguém as conseguiu descobrir. Se não tiver MFA configurado, o malfeitor vai conseguir aceder à sua conta sem qualquer dificuldade. No entanto, com MFA ativo, após a colocação do binómio utilizador-password, o malfeitor vai ser confrontado com um segundo passo de autenticação de um fator diferente.
O objetivo é que apenas o utilizador, que é o verdadeiro detentor da conta, tenha esse ou esses outros fatores que são necessários para aceder ao sistema em causa. Desta forma, numa situação destas, a conta estará protegida, pois será bem mais difícil para o malfeitor conseguir ultrapassar esses outros fatores. Sendo que mais difícil não significa impossível.
Fatores de autenticação
Existem três fatores de autenticação primários. São eles:
- Algo que sabe, que pode ser uma password, uma passphrase, um PIN, a resposta a perguntas de segurança, etc.
- Algo que tem, que se refere a dispositivos físicos na posse do utilizador que o podem ajudar a autenticar, como um telemóvel, um smart card, um hardware token, um memory card, uma drive USB, etc.
- Algo que é, que se refere a caraterísticas físicas de uma pessoa, como impressões digitais, caraterísticas da face, retina, íris, geometria da mão, etc.
Em adição aos três fatores primários, podem ser acrescentados atributos, como:
- Local onde está, com base num dispositivo, localização geográfica, um número de telefone, etc.
- Autenticação por contexto, na qual é possível, por exemplo, configurar horários de trabalho, não permitindo o acesso à conta fora desses horários. Pode também incluir localização e tipo de dispositivo.
- Algo que faz, pode referir-se, por exemplo, aos gestos que são utilizados nos dispositivos móveis para os desbloquear conectando pontos, ou as passwords por imagem, suportadas pelo Windows 10, nas quais o utilizador move os seus dedos pelo ecrã, por cima de uma imagem.
Algo que sabe
Este fator também é conhecido por autenticação por conhecimento ou fator de autenticação de tipo 1.
Significa que o utilizador indica algo que sabe para se autenticar perante um sistema.
No caso das passwords, estas podem ser simples ou complexas, sendo que:
- Erradamente tendencialmente as pessoas utilizam passwords simples e frequentemente relacionadas com informações próprias, porque são mais fáceis de decorar. Quando assim é, as passwords são facilmente descobertas.
- Quando utilizam passwords complexas, acabam por as escrever em algum lado, seja em post-its que ficam colados ao monitor, num caderno ou mesmo num ficheiro de texto no ambiente de trabalho do computador. Nestes casos, a password fica visível aos olhos de terceiros ou, mesmo que não fique à vista, pode ser encontrada com relativa facilidade.
A solução para estes problemas recai sobre os Gestores de Passwords, que organizam as suas credenciais, guardam-as de forma segura e, melhor que tudo, apenas tem de decorar uma única password, que é a password mestre com a qual faz login no Gestor de Passwords. Essa password mestre deve ser longa (ter um mínimo de 12 carateres) e, para facilitar, pode criar uma passphrase.
As passphrases são passwords baseadas em frases, que se tornam assim mais fáceis de decorar, e resolvem o problema da complexidade, principalmente quando se lhe misturam letras maiúsculas e minúsculas, números e carateres especiais. A frase “Eu sou visitante do YourInfoSec” pode tornar-se na passphrase EuSouVisitanteDoYourInfoSec, longa o suficiente para demorar séculos a descobrir.
Relativamente às perguntas de segurança, a segurança destas também aumenta se o utilizador usar strings complexas, em vez da verdadeira resposta às questões, que por vezes é tão óbvia para quem conhece minimamente bem o utilizador (e com toda a informação que hoje em dia é partilhada nas redes sociais, isto pode não ser difícil), que tornam-se fáceis de comprometer.
Algo que tem
Este fator também é conhecido por autenticação por posse ou fator de autenticação de tipo 2.
Talvez o método mais comum sejam as One-Time Passwords (OTP) que, tal como o nome indica, são códigos que apenas podem ser utilizados uma vez, e que expiram no caso de não serem utilizadas num determinado período de tempo. Podem ser geradas via:
- Software (soft tokens), como as famosas aplicações Authenticators, como o Google Authenticator, Microsoft Authenticator, Cisco DUO, etc.
- Hardware (hard tokens), que são dispositivos de hardware dedicados, como o RSA SecurID.
Além do tipo de dispositivo onde são geradas, as OTP podem ser:
- OTP síncrono, que é o mais comum e menos complexo. Pode ser baseado em tempo ou num contador. Os que são baseados em tempo, são gerados de 30 em 30 ou 60 em 60 segundos; os que são baseados em contador, têm um número que vai sendo incrementando.
- OTP assíncrono, que apesar de menos comum e mais complexo, oferece uma camada de segurança mais robusta.
Já os smart cards, são assim chamados por incluírem um circuito integrado embebido que pode efetuar cálculos e gerar dados únicos de autenticação em cada transação. Podem ser:
- Contact Smart Cards, nos quais o chip no cartão necessita de entrar em contacto com o leitor para receber energia e permitir que a transação seja concluída;
- Contactless Smart Cards, nos quais o leitor envia sinais que são fortes o suficiente para alimentarem e comunicarem com os chips, permitindo-lhe assim efetuar os cálculos que necessita e responder ao leitor.
Os memory cards contêm uma espécie de memória que é incluída numa banda magnética, normalmente na parte de trás do cartão, da qual os mesmos dados são lidos em cada transação.
Algo que é
Também conhecido por autenticação por caraterística ou fator de autenticação de tipo 3.
Divide-se em:
- Caraterísticas fisiológicas, que podem ser impressões digitais, a geometria da mão, caraterísticas da face, caraterísticas dos olhos (como a íris e a retina), etc.
- Caraterísticas comportamentais, que pode ser a forma como a pessoa escreve, caminha, fala, pressiona as teclas de um teclado, etc.
Local onde está
A localização pode ser obtida com base no endereço IP ou por geolocalização.
Este tipo de sistemas pode impedir o acesso por utilizadores que não se encontrem no local onde habitualmente se conectam – local onde não está. Inclusive, uma regra básica é essa mesma: que um utilizador não consiga efetuar login na sua conta fora do seu local de trabalho ou, caso o queira fazer, o solicite. Apesar de este controlo ser facilmente contornado com a utilização de uma VPN, não deixa de ser uma proteção que faz sentido.
Autenticação de Fator Único e Autenticação de Dois Fatores
Existe alguma confusão relativamente ao que é considerado utilização de fatores de autenticação.
Por exemplo, se um sistema utilizar mais do que um tipo de autenticação, mas todos forem do mesmo fator, não estamos perante Autenticação Multifator mas sim Autenticação de Fator Único. Exemplos em que, apesar de se utilizarem diferentes tipos de autenticação, não ocorre Autenticação Multifator:
- A utilização de utilizador/password e a resposta a perguntas de segurança – os dois mecanismos pertencem ao fator algo que sabe;
- A utilização de um token gerado pelo Google Authenticator e outro gerado pelo RSA SecurID – os dois mecanismos pertencem ao fator algo que tem;
- A utilização de um leitor de impressões digitais e de um leitor de retina – os dois mecanismos pertencem ao fator algo que é.
Já a combinação de dois fatores, como por exemplo algo que sabe e algo que tem, pode ser chamada de Autenticação de Dois Fatores.
A diferença de Autenticação de Dois Fatores para Autenticação Multifator é que a primeira refere-se à utilização de dois fatores e a última à utilização de dois ou mais fatores.
É importante notar que a utilização de diferentes tipos de autenticação do mesmo fator, normalmente não acrescenta segurança, na medida em que o mesmo tipo de ataque os pode comprometer. Isto é, utilizar uma password e um PIN não lhe garante que está mais seguro do que se apenas utilizasse uma password, uma vez que os mesmos ataques que podem ser realizados para descobrir a password, também podem descobrir o PIN. Em contraste, quando utiliza fatores diferentes, como por exemplo uma password e OTP por hard token, já seria necessário descobrir a password e roubar-lhe fisicamente o hard token, para conseguir aceder com sucesso à conta.
Multifator de autenticação fraco e forte
Apesar de o Multifator de Autenticação ser uma configuração recomendada, ela não garante, por si só, que as suas contas estão seguras. Por exemplo, o Multifator de Autenticação por SMS é considerado fraco, por causa de um ataque conhecido como SIM Swap, em que os criminosos obtêm o controlo do número de telemóvel da vítima, conseguindo dessa forma acesso ao código que lhe enviado, sendo-lhes dessa forma possível o login nas suas contas.
Contudo, mesmo utilizando fatores de autenticação fortes, deve ter algumas considerações em atenção:
- Quando se utiliza um Authenticator que envia notificações para o utilizador aprovar o acesso, no caso de o utilizador estar distraído ou não saber o que está a fazer, pode aprovar o acesso de um terceiro sem se aperceber do que está realmente a fazer;
- Quando se utiliza Authenticator que envia notificações, que gera código, ou que pede a introdução de um código que é disponibilizado no site, apesar de serem consideradas formas seguras, o utilizador pode ser enganado se aceder a um site falso, em tudo semelhante ao verdadeiro, e que envia os dados que lá digita para o verdadeiro, ou seja, o utilizador e password e, de seguida, o OTP .
Para colmatar isto, pode considerar utilizar passkeys ou security keys (chaves de segurança). pois estes dispositivos têm de ser conectados fisicamente ao dispositivo de onde está a efetuar o login, ou serem aproximados (NFC), para que o acesso seja permitido.
E tem sempre de ser pedido o segundo fator de autenticação?
Não, nem sempre. Por exemplo, há serviços que apenas pedem na primeira vez que utiliza determinado dispositivo. Depois, esse dispositivo passa a estar autorizado a aceder à sua conta e a ser reconhecido como sendo de confiança e, ele próprio e por si só, passa a funcionar como um fator. Apenas lhe será solicitado o segundo fator quando aceder a partir de um dispositivo que o serviço não reconhece.
Há também serviços que permitem guardar os dados por determinado período de tempo, não pedindo o segundo fator de autenticação até esse período expirar.
E se perder o método de MFA?
Deve sempre ter em conta alternativas ao método MFA que configura. Por exemplo, alguns serviços disponibilizam códigos de backup que podem ser utilizado no caso de perder o acesso ao método que configurou. Tome boa nota desses códigos. Já no caso de utilizar como fator de autenticação uma chave de segurança, como por exemplo uma Yubikey, é boa prática ter uma segunda chave de segurança para utilizar no caso de perder a primeira. Pode inclusive considerar colocar essa segunda chave num espaço físico diferente da primeira.
Uma palavra sobre FIDO2
Não podemos terminar este artigo sem falar sobre Fast IDentity Online 2 (FIDO2), ainda que de forma muito resumida. O FIDO2 é um protocolo aberto para autenticação de utilizador que utiliza passkeys, que são credenciais criadas recorrendo a criptografia de chave pública, sendo criada uma chave privada e outra pública. A privada é guardada no dispositivo do utilizador de forma segura e a pública é encriptada e enviada para o servidor do serviço.
O par de chaves é utilizado para realizar a autenticação do utilizador diretamente no dispositivo deste, seja ele um computador, um tablet, um telemóvel ou uma chave de segurança. Sempre que o utilizador efetua login, o serviço apresenta um desafio único ao cliente. A ativação do dispositivo é efetuada recorrendo ao toque, leitura da impressão digital ou da face, ou inseração de um PIN, o que permite que o pedido seja assinado e devolvido. Isto torna o processo criptograficamente protegido de phishing.
Como é gerado um conjunto de chaves diferentes para cada aplicação web ou website, têm também a vantagem de incrementar a privacidade do utilizador, por dificultarem a associação entre serviços.
O FIDO2 implementa ainda o conceito de Passwordless, o que significa que não são utilizadas passwords para efetuar login. Isto torna o acesso não só mais prático mas também mais seguro, pois são conhecidas as vulnerabilidades associadas às passwords.
A primeira versão, que introduziu o Multifator de Autenticação resistente a phishing, foi lançada em 2014, e a segunda, lançada em 2018, definiu o standard para autenticação sem passwords.
Conclusão
Em conclusão, e apesar de toda a informação deste artigo, o principal a reter é a importância de ativar o Multifator de Autenticação em todas as suas contas que o suportem – isto é algo que normalmente pode ser efetuado nas configurações da conta.
Nem todos os serviços utilizam MFA forte, mas ainda assim, ter MFA ativado, mesmo que fraco, é melhor do que não ter.
Faça agora uma auditoria às suas contas com vista à ativação do MFA naquelas em que ainda não o ativou. É verdade que lhe vai tomar algum tempo, mas no final vai ficar mais descansado em relação à segurança das mesmas e da informação que contêm.
Pensar que só acontece aos outros não é uma boa estratégia de segurança. Além disso, é importante reter que existem várias formas de obter as credenciais, seja em ataques que podem ser perpetuados tendo o próprio utilizador como alvo, ou o serviço onde as suas credenciais estão armazenadas. E nem sempre sabemos de que forma os serviços armazenam estes nossos dados, ou seja, há diversas leaks que comprovam que ainda existem serviços a não utilizar as melhores práticas para guardar as credenciais dos seus utilizadores!