Tipos de autenticação de dois fatores: os prós e os contras

Quais tipos de autenticação de dois fatores existem no mercado e quais devem ser os preferidos.

Em um post anterior, falamos sobre o que é a autenticação de dois fatores e por que você precisa dela. Resumindo, é um mecanismo de validação de acesso que depende de dois métodos de autenticação diferentes.

Os usuários precisam da autenticação de dois fatores para contar com uma proteção de conta mais confiável: embora cada método de autenticação individual seja vulnerável, dois (ou mais) são usados juntos para dificultar ao máximo perder o controle da conta.

Neste post falarei sobre as opções de autenticação multifatorial disponíveis, os prós e contras de cada uma delas e minha recomendação sobre as melhores para manter suas contas seguras.

Códigos únicos entregues por SMS, e-mail ou chamada de voz

Um dos mecanismos de autenticação de dois fatores mais comuns para validação de login são os códigos únicos. Geralmente, são enviados via mensagem de texto para o número de telefone especificado durante o registro. O e-mail também pode ser usado para isso, mas é menos popular. Os principais serviços geralmente também oferecem a opção de uma chamada de voz para o número de telefone especificado no registro.

Seja qual for o canal de entrega usado, a ideia é a mesma: verificar sua capacidade de ter acesso a alguma outra conta ou número de telefone que você definiu na assinatura do serviço. Assim, se alguém roubar sua senha mas não tiver acesso ao seu telefone, essa proteção funcionará muito bem.

SMS com código de autenticação único da conta do Google

Opção de autenticação de dois fatores mais comum: código único entregue por mensagem de texto

Mas esse mecanismo de autenticação de dois fatores tem suas desvantagens. Se o e-mail for usado para confirmar o login e a senha para efetuar o login for a mesma da conta a ser protegida, você terá uma segurança extra muito limitada. Um invasor que tem conhecimento da senha da conta certamente tentará essa senha para efetuar login no seu e-mail também, obtendo assim o código de validação único.

A validação por número de telefone, seja por SMS ou chamada de voz, apresenta um problema diferente: é fácil perder o acesso. Às vezes, os usuários simplesmente se esquecem de recarregar a conta de telefone, perdem o telefone ou mudam o número.

Também é comum que os criminosos convençam as operadoras de telecomunicações a fornecer-lhes um cartão SIM com o número de telefone da vítima, tendo assim acesso aos códigos de validação. Além disso, as mensagens de texto podem ser interceptadas, casos assim já foram reportados.

Resumo: essa opção de autenticação de dois fatores dá conta do recado, mas para proteger as contas mais valiosas, especialmente as relacionadas às finanças, é melhor usar algo mais confiável.

Senha como segundo fator

Às vezes, a senha não é o primeiro, mas o segundo fator. Isto é o que os serviços de mensagens costumam fazer: por padrão, para efetuar o login, basta inserir o código de uso único do SMS. A senha geralmente é opcional. Opcional, mas necessária, se você quer saber. A senha irá proteger você contra diversos de problemas em potencial de uma só vez.

Mais importante,  protegerá sua correspondência contra a perda acidental de acesso ao número de telefone que você usou para se registrar no WhatsApp ou Telegram. Digamos que você mudou seu número de telefone principal e colocou o cartão SIM antigo em uma gaveta, deixando-o inativo por muito tempo. A operadora revenderá seu número depois de algum um tempo, permitindo assim que o novo proprietário acesse o serviço de mensagens em seu nome, a menos que esteja protegido adicionalmente com uma senha, é claro.

E, com certeza, a senha dará à sua conta do serviço de mensagens pelo menos alguma proteção contra sequestradores que, de uma forma ou de outra,  obtiveram acesso ao seu número de telefone.

Lista pré-gerada de códigos de uso único

Outra opção disponível é uma lista de códigos únicos pré-gerados. Os bancos às vezes emitem essas listas para seus clientes para confirmar transações, enquanto alguns serviços da Internet (como o Google) permitem usá-las para recuperação de conta.

Essa solução pode ser considerada um mecanismo confiável: esses códigos são transmitidos ao usuário extremamente raramente, então há um mínimo de oportunidades de interceptação. Os códigos são aleatórios, o que significa que são únicos, então adivinhá-los é quase impossível.

Mas há o problema de armazenamento: se invasores conseguirem roubar sua lista de códigos pré-gerados, sequestrar sua conta ou roubar dinheiro será extremamente fácil.

Lista de códigos únicos pré-gerados

Lista de códigos únicos pré-gerados para verificação de transações bancárias

Portanto, os códigos de confirmação únicos devem ser armazenados em um cofre ou em sua contraparte eletrônica. Por exemplo, há notas criptografadas no ”Kaspersky. Se você salvar a lista de códigos únicos nessas notas, eles serão protegidos com segurança, desde, é claro, que você defina uma senha principal boa e exclusiva para o próprio Kaspersky Password Manager.

No entanto, o principal inconveniente desse método de autenticação é que, se você precisar de verificações com frequência, rapidamente seus códigos pré-gerados ficarão descobertos. O que significa que você terá que gerar e salvar novos cada vez mais. Se estiver mantendo várias contas, haverá facilmente confusão com todas essas listas. Portanto, os códigos pré-gerados como o principal método de autenticação foram substituídos por códigos gerados sob demanda, quando você precisar deles.

Códigos únicos gerados por aplicativo autenticador

A geração de códigos únicos “em trânsito” é feita por autenticadores. Às vezes, podem ser dispositivos autônomos com uma tela pequena que exibe o código atual, alguns bancos fornecem esses autenticadores a seus clientes.

Mas hoje em dia os aplicativos autenticadores especiais executados em smartphones são mais populares do que os dispositivos independentes. Temos vários posts sobre o assunto:

Portanto, se estiver procurando informações sobre como esse método de autenticação funciona, como selecionar um aplicativo autenticador e o que ter em mente quando tiver um, siga os links acima. Enquanto isso, aqui, quero apenas lembrar que aplicativos autenticadores oferecem um equilíbrio ideal entre conveniência e segurança, tornando-os cada vez mais populares.

Google Authenticator: o aplicativo autenticador mais conhecido

Google Authenticator: o mais conhecido, mas de longe, não é o único aplicativo autenticador no mercado

Biometria: impressão digital, rosto ou voz

Não faz muito tempo, para a maioria das pessoas, a autenticação biométrica era algo exótico. No entanto, as coisas mudaram rapidamente: a maioria dos smartphones agora tem a capacidade de autenticar por impressão digital ou reconhecimento facial, e isso não é nenhuma surpresa.

Mas alguns métodos biométricos podem parecer incomuns: autenticação baseada em hábitos de voz, íris, caminhada e digitação. Quanto aos mais originais, podemos lembrar da pesquisa sobre autenticação baseada em odor (embora não funcione muito bem)!

A autenticação biométrica tem algumas desvantagens sérias. Primeiro: todas as características nas quais essa solução se baseia são as propriedades permanentes do usuário. Você pode alterar uma senha comprometida e pode até fazer isso várias vezes por motivos de segurança. Mas uma impressão digital registrada pode ser modificada apenas um número limitado de vezes. As tentativas podem ser literalmente contadas nos dedos das mãos.

A segunda questão importante consiste no fato de que os dados biométricos são extremamente confidenciais, tanto por serem inalteráveis quanto porque permitem não só autenticar um usuário, mas também identificar uma pessoa. Portanto, a coleta e transferência desses dados para serviços digitais deve ser tratada com extrema cautela.

É por isso que os dados biométricos são normalmente usados para a autenticação local: armazenados e processados no dispositivo para evitar transmiti-los para qualquer lugar. Para a autenticação biométrica remota, o serviço digital teria que confiar no fornecedor do dispositivo, o que os serviços normalmente não querem fazer. O resultado é o seguinte: apenas a Apple possui um mecanismo de autenticação biométrica remota de alto valor, porque a empresa tem controle total sobre seu ecossistema, desde o desenvolvimento de software até a fabricação do dispositivo.

Autenticação de impressão digital

Login com impressão digital: muito comum nos dias de hoje

Mas a autenticação biométrica tem uma vantagem importante que se sobrepõe às suas desvantagens. Se implementada corretamente, torna a vida dos usuários muito mais simples: chega de digitação, basta pressionar o dedo no sensor ou mostrar o rosto para a câmera. E é bastante confiável também, mas, como já dito antes, apenas se implementado corretamente.

Localização

Mais um tipo de autenticação do usuário é a localização. Você não precisa ativar esse método, pois já está ativado por padrão. É por isso que geralmente passa despercebido, com a pessoa sendo alertada apenas se não tiver êxito: ou seja, se uma tentativa de login vier de uma localização que o serviço não espera. Nesse caso, o serviço pode exigir o uso de um método de verificação adicional.

Obviamente, a localização não é um fator de autenticação muito confiável. Em primeiro lugar, não é único: muitas outras pessoas podem estar no mesmo lugar a qualquer momento. Em segundo lugar, é bem fácil de manipular, especialmente quando se fala de localização baseada em IP, em vez da geolocalização GPS adequada. No entanto, a localização pode ser usada como um dos fatores de autenticação, e muitos serviços fazem isso.

Teclas de hardware FIDO U2F (também conhecido como YubiKey)

As opções de autenticação descritas acima têm uma grande desvantagem: elas permitem autenticar o usuário, mas não o serviço. O que os torna vulneráveis aos ataques MitM (man-in-the-middle).

Os invasores podem criar uma página falsa imitando o mecanismo de login do serviço real. Depois que o usuário envia seu login e senha, os criminosos prontamente os usam para efetuar o login no site real. O código de verificação será a próxima coisa que o usuário será solicitado a fornecer, e em nenhum momento ele será usado para assumir a conta da vítima.

Para lidar com esse tipo de ameaça, foram criadas as chaves FIDO U2F, também conhecidas pelo nome de seu modelo mais popular: YubiKey. A principal vantagem desse método consiste no fato de que, durante o registro, o serviço e a chave U2F lembram de determinadas informações únicas para cada serviço e para cada usuário. Durante a autenticação, o serviço deve enviar uma solicitação específica à chave, à qual a chave responderá apenas se a solicitação estiver correta.

Assim, ambos os lados dessa comunicação interpretam se o acesso é legítimo ou não. Além disso, esse mecanismo de autenticação é baseado em criptografia de chave aberta, para que todo o processo seja bem protegido contra falsificação, interceptação e ameaças semelhantes.

Chaves FIDO U2F: Yubico YubiKey e Google Titan (Feitian ePass)

Um par de teclas FIDO U2F: Yubico YubiKey (esquerda) e Google Titan (direita)

Mais uma vantagem além disso: embora a tecnologia seja bastante sofisticada e use criptografia hardcore “embutida”, tudo parece muito simples na superfície do ponto de vista do usuário. Basta conectar a chave a um pendrive USB (ou conectada ao smartphone, essas teclas geralmente têm suporte para NFC) e tocar no teclado do sensor na tecla com o dedo para concluir a autenticação.

O uso de chaves de hardware U2F é o método de autenticação mais confiável disponível hoje e uma opção recomendada para contas valiosas. É asssim com a Google: todos os funcionários da empresa usam essas chaves para suas contas corporativas há mais de cinco anos.

Senhas FIDO: o futuro sem senhas

Não é fácil, mas ainda é possível fazer com que todos os colaboradores da organização usem chaves de hardware para autenticação. No entanto, o método dificilmente é adequado para milhões de usuários comuns da Internet. As pessoas em geral se irritam com a mera ideia de autenticação de dois fatores, quanto mais pagar por algum equipamento especial.

É por isso que a FIDO Alliance, mesma criadora das chaves U2F, desenvolveu um novo padrão de autenticação que usa “chaves de acesso” em vez de senhas. Em termos simples, a tecnologia é quase a mesma das chaves U2F, exceto que você não precisa de nenhum dispositivo especial para armazenar os dados de autenticação.

Você pode armazenar senhas basicamente em qualquer lugar, smartphone, computador, perfil do usuário do navegador ou à moda antiga, com uma chave USB. Você pode optar por sincronizá-las por meio da nuvem ou não sincronizá-las, se preferir o modo de senha exclusiva.

Claro que essa longa lista de opções de armazenamento torna as chaves de acesso um pouco menos seguras. Quanto menos seguro isso se torna depende de qual combinação de equipamentos e serviços você usa.

Para compensar, os usuários contam com essa valiosa vantagem: as chaves de acesso não complementam as senhas da conta, mas as substituem. Além disso, essa autenticação ainda é multifatorial: além de possuir um dispositivo usado para armazenar suas chaves de acesso, você precisa validar o login usando a biometria (se o seu gadget suportar) ou o PIN para desbloquear o dispositivo. Como você pode ver, não é possível ficar completamente sem senhas em alguns casos, mas pelo menos as chaves de acesso reduzem bastante a sua quantidade.

O principal problema da iniciativa é que até agora ela continua a ser uma colcha de retalhos. As plataformas e serviços usam abordagens muito diferentes para armazenamento de dados, autenticação do usuário e segurança como um todo. Portanto, em vez de apenas um método, diversos métodos diferentes são usados, variando muito em termos de confiabilidade.

Por isso, seria um pouco prematuro mudar completamente para as chaves de acesso. Mas você já pode experimentar a solução: há algum tempo, a Google anunciou a compatibilidade total com chaves de acesso pelas contas Google, então, se tiver interesse, qualquer um pode ver como isso funciona na vida real.

Quais os melhores métodos de autenticação de dois fatores e outros pontos importantes para se ter em mente

Para concluir, os pontos principais:

  • Em 2023, a autenticação de dois fatores já não é mais um luxo, mas uma necessidade vital. Use-a sempre que possível.
  • Qualquer método de autenticação de dois fatores é muito melhor do que nenhum.
  • Os aplicativos autenticadores são ideais para a autenticação bidirecional.
  • Uma chave de hardware FIDO U2F – Yubico YubiKey, Google Titan ou outra é uma opção ainda melhor. Especialmente para contas de alto valor.
  • Você já pode experimentar usar as chaves de acesso, mas parece um pouco cedo para abraçar completamente a tecnologia.
  • Portanto, ainda é essencial usar as senhas com cautela: escolha as complexas, não as reutilize para vários serviços e mantenha-as seguras usando um gerenciador de senhas.
  • E, claro, não se esqueça de que a maioria dos métodos de autenticação de dois fatores (exceto U2F e senhas) é vulnerável a phishing. Portanto, use uma solução confiável que remove essa ameaça automaticamente, como o [Kaspersky Premium placeholder] Kaspersky Premium [/placeholder].
Dicas