Primeiras coisas primeiro: o SMS ainda é melhor do que a autenticação de dois fatores!
Embora seja importante apresentar o caso contra o SMS aqui, é importante esclarecer uma coisa: usar o SMS é melhor do que não usar a autenticação de dois fatores.
Quando você não usa a autenticação de dois fatores, alguém só precisa da sua senha para fazer login na sua conta. Quando você usa a autenticação de dois fatores com o SMS, alguém precisará adquirir sua senha e obter acesso às suas mensagens de texto para obter acesso à sua conta. O SMS é muito mais seguro do que nada.
Se o SMS for sua única opção, use o SMS. No entanto, se você quiser saber por que os especialistas em segurança recomendam evitar o SMS e o que recomendamos, continue lendo.
Troca de SIM permite que atacantes roubem seu número de telefone
Veja como a verificação de SMS funciona: quando você tenta fazer login, o serviço envia uma mensagem de texto para o número de celular que você forneceu anteriormente. Você obtém esse código em seu telefone e insere-o para fazer login. Esse código só é bom para um único uso.
Se alguém souber o seu número de telefone e puder obter informações pessoais, como os quatro últimos dígitos do seu número de seguro social - infelizmente, isso é fácil de encontrar graças às muitas empresas e agências governamentais que vazaram dados de clientes - eles podem entrar em contato com o telefone empresa e mova o seu número de telefone para um novo telefone. Isso é conhecido como "troca SIM" e é o mesmo processo que você realiza quando compra um novo dispositivo e transfere seu número de telefone para ele. A pessoa diz que é você, fornece os dados pessoais e a empresa de telefone celular configura o telefone com o número de telefone. Eles receberão os códigos de mensagem SMS enviados para o seu número de telefone em seus telefones.
Vimos relatos disso acontecendo no Reino Unido, onde invasores roubaram o número de telefone da vítima e o usaram para obter acesso à conta bancária da vítima. O Estado de Nova York também alertou sobre esse golpe.
Em essência, esse é um ataque de engenharia social que depende de enganar sua empresa de telefonia celular. No entanto, a sua empresa de telefonia celular não deve ser capaz de fornecer acesso a seus códigos de segurança a pessoas.
Mensagens SMS podem ser interceptadas de várias maneiras
Os atacantes também abusaram de problemas no SS7, o sistema de conexão usado para roaming, para interceptar mensagens SMS na rede e encaminhá-las para outro lugar. Existem muitas outras maneiras pelas quais as mensagens podem ser interceptadas, inclusive através do uso de torres falsas de telefone celular. As mensagens SMS não foram projetadas para segurança e não devem ser usadas para isso.
Em outras palavras, um invasor sofisticado com um pouco de informações pessoais poderia seqüestrar seu número de telefone para obter acesso a suas contas on-line e, em seguida, usar essas contas para tentar drenar suas contas bancárias, por exemplo. É por isso que o Instituto Nacional de Padrões e Tecnologia não está mais recomendando o uso de mensagens SMS para autenticação de dois fatores.
A alternativa: gerar códigos no seu dispositivo
Um esquema de autenticação de dois fatores que não depende do SMS é superior, porque a empresa de telefonia celular não poderá conceder a outra pessoa acesso aos seus códigos. A opção mais popular para isso é um aplicativo como o Google Authenticator. No entanto, recomendamos o Authy, pois faz tudo o que o Google Authenticator faz e muito mais.
Aplicativos como este geram códigos no seu dispositivo. Mesmo que um invasor tenha enganado sua empresa de celular a transferir seu número de telefone para o celular, ele não conseguiria seus códigos de segurança. Os dados necessários para gerar esses códigos permanecerão seguros no seu telefone.
Há também tokens de hardware físico que você pode usar. Grandes empresas como o Google e o Dropbox já implementaram um novo padrão para tokens de autenticação de dois fatores baseados em hardware chamado U2F. Tudo isso é mais seguro do que confiar em sua empresa de telefonia celular e na rede telefônica desatualizada.
Se possível, evite o SMS para autenticação de dois fatores. É melhor do que nada e parece conveniente, mas normalmente é o esquema de autenticação de dois fatores menos seguro que você pode escolher.
Infelizmente, alguns serviços forçam você a usar o SMS. Se estiver preocupado com isso, você pode criar um número de telefone do Google Voice e fornecê-lo a serviços que exijam autenticação por SMS. Você pode fazer login na sua conta do Google, que pode ser protegida com um método de autenticação de dois fatores mais seguro, e ver as mensagens seguras no site ou no aplicativo do Google Voice. Apenas não encaminhe mensagens do Google Voice para o número real do seu celular.