- A autenticação em duas etapas (2FA) baseada em SMS não é apenas insegura, como também causa grande inconveniência para moradores de regiões montanhosas
- Em áreas montanhosas com sinal de celular fraco, é difícil receber os códigos de autenticação enviados por SMS
- Apenas chamadas por Wi‑Fi ou o uso de um smartphone não bastam para resolver o problema do 2FA
- O método TOTP (senha de uso único baseada em tempo) pode ser uma alternativa, mas o acesso à configuração inicial não é fácil
- Explica a situação absurda enfrentada por milhões de moradores de áreas montanhosas no processo de login em sites
Visão geral do problema
- A amiga do autor é uma mulher na faixa dos 70 anos que vive na região montanhosa da Carolina do Norte
- Ela não gosta de computadores, mas participa de chats em grupo no Signal e usa smartphone para se comunicar com a comunidade
- Ela usou telefone fixo por muito tempo, o que funciona bem com aparelho auditivo
- A Spectrum tem monopólio local de telecomunicações, e ela usa tanto telefone fixo quanto internet a cabo pela Spectrum
Surgimento do problema com serviço celular e 2FA por SMS
- Alguns anos atrás, ela assinou o serviço móvel da Spectrum Mobile, que usa a rede da Verizon
- Em casa, quase não há sinal de celular. Fica a 20 minutos de carro do centro urbano e há muitos vizinhos
- Todas as contas principais (e‑mail, banco, plano de saúde etc.) tentam enviar códigos de 2FA por SMS
- Os códigos por SMS não chegam. Em casa falta serviço celular e, mesmo com chamadas por Wi‑Fi ativadas, SMS de segurança enviados por números curtos (5 dígitos) não são entregues
- Ela usa iPhone recente e equipamentos fornecidos oficialmente, e sabe usá-los
Busca por alternativas e suas limitações
- Alguns telefones fixos oferecidos por ISPs têm recurso de ler SMS em voz sintetizada no computador, mas a Spectrum não oferece isso
- Alguns sites permitem mudar para 2FA via TOTP, mas é necessário conseguir acesso no momento do primeiro login
- Procedimento trabalhoso para tentar resolver:
- Fazer uma lista dos sites em que o login falha
- Ir até a cidade para encontrar a amiga e tentar resolver o problema
- Tentar, um por um, mudar para TOTP ou outro método; alguns nem oferecem suporte
- Tentar falar com o atendimento ao cliente, o que é difícil ou impossível
Alternativas praticamente inviáveis
- Portar o número para VOIP para tentar receber SMS de números curtos
- Gastar centenas de dólares para instalar um amplificador de sinal celular
- Até considerar se mudar de residência
- O texto aponta o quão irracional é precisar de tudo isso para fazer um único login
Problema de confiabilidade dos mapas de cobertura celular
- No mapa de cobertura da Spectrum, a casa e os arredores aparecem com serviço perfeito
- Na prática, não há serviço na casa, e basta andar 100 metros para o sinal desaparecer
Dificuldade comum a inúmeras pessoas que vivem em áreas montanhosas
- Um amigo millennial também descreveu que "2FA por SMS é um sofrimento na vida"
- Mesmo em lugares que não ficam em vales profundos, ainda há problemas causados pelo 2FA por SMS
Limitações e dificuldades do método TOTP
- TOTP também não é perfeito
- Exige instalar um aplicativo separado
- O processo de escolher qual app usar é complexo e cheio de explicações técnicas
Resumo e a questão da escala
- O motivo de o 2FA por SMS ser tão amplamente usado é sua UX intuitiva e um certo grau de confiabilidade
- No entanto, 1,1 milhão de pessoas na região montanhosa da Carolina do Norte e 25 milhões em toda a Apaláchia, entre outros milhões, vivem em condições precárias
- Mesmo com internet, o sinal de celular é muito ruim
- Falta uma alternativa razoável ou consideração adequada para quem mora nessas regiões
1 comentários
Comentário do Hacker News
É interessante que uma das outras opções que ela poderia escolher seria portar o próprio número de celular para uma operadora de VOIP que consegue receber SMS por Wi‑Fi, mas ela descobriu que algumas empresas, por motivos de seGuRaNçA, não enviam códigos SMS-OTP para números VOIP ou exigem que o número esteja registrado no nome dela; acho que essas restrições deveriam ser ilegais, número é só um número; com Wi‑Fi Calling ativado ela recebe SMS de amigos e familiares, mas os códigos de 2FA continuam não chegando; eu achava que SMS over IMS era implementado de forma transparente para remetentes externos, mas como o próprio protocolo SMS foi feito de forma muito frágil, isso não me surpreende
Acho que consigo explicar como o sistema de SMS funciona: ele simplesmente envia a mensagem “às cegas”; se o destinatário estiver offline ou sem sinal, a operadora armazena a mensagem por algo como 3 a 7 dias; sistemas de OTP fazem checagem de alcançabilidade com APIs como Vonage, Twilio etc., mas essa checagem não é perfeita; se algo parecer estranho, a mensagem nem é enviada; isso é feito para reduzir custo de envio de mensagens; acho irracional aplicar isso até a números já validados
Falando da perspectiva europeia, pela diretriz financeira PSD2, só números que já passaram por KYC podem receber SMS para 2FA; no fim, 2FA funciona como uma assinatura eletrônica para provar “algo que você possui”, e esse algo é um número de telefone com identidade verificada; também se enfatiza que SMS é o único método de 2FA que pode ser aplicado com facilidade a toda a população, regiões e aparelhos
Acho realmente sem sentido que essas mesmas empresas permitam apenas SMS como 2FA e, ao mesmo tempo, não enviem para VOIP; provavelmente porque todas usam algum serviço específico para envio de SMS, e esse serviço bloqueia VOIP; quase todos os bancos exigem SMS 2FA obrigatoriamente, enquanto outros lugares suportam app, o que é bem estranho
Só em 2025 o número de telefone ainda é um jeito de ao menos mitigar o problema de Sybil (uma pessoa criar várias contas); ele permite algum nível de verificação de identidade mesmo sem um processo formal de KYC
Já usei Wi‑Fi Calling só para receber SMS de 2FA, com combinação de RedPocket (MVNO) e T-Mobile, sem problema nenhum; naquela região não havia sinal direto da T-Mobile, então SMS só funcionava via Wi‑Fi; o plano também era barato; dito isso, havia problemas com celulares antigos, como falta de suporte a Band
Pela natureza do recebimento de mensagens, amigos e família chegam por P2P, enquanto 2FA é A2P, de máquina para pessoa; o tratamento dos dois é claramente diferente
Mesmo portando o número para uma operadora de VOIP, acho que quem envia não consegue distinguir se aquele número é celular ou VOIP; recebo SMS 2FA normalmente mesmo depois de portar desse jeito
Se você usa vários serviços bancários, vê que alguns enviam tokens por SMS para Google Voice sem nenhum problema, enquanto outros só permitem Google Voice SMS via atendimento ao cliente; a política parece aleatória; pior ainda, eles não mandam pelo canal normal, mas leem o mesmo código por chamada de voz automática; a política de segurança parece randômica
A opção de receber códigos SMS-OTP por VOIP acaba sendo uma má ideia; funciona por pouco tempo e depois é bloqueada quando a política de segurança aperta; no fim, todas essas medidas não existem para proteger de fato a segurança do usuário, mas para criar barreiras contra o fluxo constante de spam e tráfego fraudulento; ter um número de telefone real está sendo usado como “Proof of Work”, e realisticamente não há alternativa
O problema é o próprio SMS, então toda essa discussão não faz sentido; na minha opinião, o uso de SMS em si deveria ser ilegal
Se você tiver uma microcell/femtocell, isso é muito eficaz em lugares com sinal fraco, como casa ou escritório; se você contatar a operadora e disser que o sinal é ruim, ela envia de graça um AP (Access Point) que converte internet → celular; esses aparelhos têm entrada RJ-45 e antena GPS, então até suportam dados de localização do e911; nossa loja também fica num vale com paredes metálicas, então antes era preciso subir o morro para conseguir fazer chamada, mas depois que pedimos femtocells para cada operadora, qualquer pessoa passou a funcionar normalmente com comutação automática pela rede do ISP; até MVNO é suportado; porém, para usar femtocell, talvez seja preciso usar o serviço direto da operadora em vez de um MVNO
Parece que a T-Mobile não oferece mais um equipamento chamado microcell; veja a página de suporte
Femtocell também tem desvantagens: precisa obrigatoriamente de sinal de GPS, então em terreno montanhoso pode ser difícil de usar; usei femtocell por anos, e às vezes ele simplesmente parava de funcionar sem motivo aparente, sem dizer por quê
Recebi um 4G LTE Network Extender grátis da Verizon; um problema é que a conexão cai ao sair de casa; uma vez eu estava ligando para o 911 e a chamada caiu enquanto eu me deslocava; quando você sai do alcance, a chamada é interrompida até reconectar; depois a Verizon entrou em contato para ajustar as informações de localização
Surpreende que as grandes operadoras aceitem que qualquer pessoa opere uma torre celular (microcell) conectada a um ISP não verificado; normalmente são empresas bem rígidas com gestão de marca, mas nisso são incrivelmente permissivas
Em roaming internacional, eu deixo o SIM guardado no meu Android em casa, ligado na tomada, e uso um app que encaminha SMS por API; assim recebo todos os SMS por e-mail; uso esse método há anos sem problemas; no dia a dia também é conveniente receber SMS de OTP no computador; ele não recebe MMS, mas isso não faz falta
Eu chamo isso de "2FA Mule"; uso esse método há mais de 4 anos e acho que funciona muito bem; é uma boa opção
Se o celular suportar dual SIM e Wi‑Fi Calling, dá para usar um eSIM só de dados no país visitado e continuar recebendo SMS no SIM antigo
Eu fiz algo parecido, deixando um Android em casa e acessando um serviço de mensagens web no notebook para receber SMS; hoje em dia o SMS também funciona via Wi‑Fi Calling, então isso nem sempre é um problema
Dizem que telefones Android podem passar a reiniciar automaticamente a cada 3 dias, então esse método pode deixar de funcionar em breve
Não entendo por que isso estaria relacionado a roaming; já usei roaming com frequência na Europa e em vários outros lugares e nunca tive problema para receber SMS
Este artigo é um pouco de nicho; parece que o código SMS 2FA chegou assim que o serviço celular foi ativado, mas na prática pode ser necessário concluir primeiro o cadastro do 2FA e só depois sair para fora para que o código seja ativado; TOTP também não é tão difícil assim; basta escolher um app para a pessoa e ajudar a imprimir os códigos de backup, e normalmente dá tudo certo
O Google Fi consegue receber por Wi‑Fi qualquer SMS de autenticação em dois fatores, inclusive de short codes; mesmo se o celular estiver desligado ou quebrado, dá para receber em qualquer dispositivo pelo navegador web; gosto muito dessa função; o serviço começa em US$ 20 por mês; antigamente funcionava bem em áreas montanhosas por causa da parceria com a US Cellular, mas recentemente a situação mudou um pouco com a absorção parcial pela T-Mobile
Morei 12 anos fora dos EUA e, antes de adotar o Google Fi, sempre tive problemas com SMS; muitos bancos insistem em autenticação por SMS, mas números virtuais VOIP sofrem com dois problemas: (1) alguns bancos recusam por segurança e (2) por razões técnicas às vezes o SMS nem chega; o Google Fi funciona até redirecionando por Wi‑Fi quando não há serviço celular; depois de 1 mês fora dos EUA os dados são cortados, mas poder usar SMS/voz já basta
Queria saber se ainda é possível usar RCS e “messages for web”; antigamente era preciso ativar o Fi Sync para usar texto/voz com o celular desligado, mas nesse caso o RCS era desativado; queria saber se isso ainda acontece e em qual URL dá para usar texto/voz
Concordo com a opinião de que a expectativa do usuário às vezes é alta demais; por exemplo, ao alugar um patinete Lime, uma falha na configuração da VPN me deixou sem internet e eu não conseguia concluir a devolução; como o GPS detectou que eu tinha parado, me reembolsaram a cobrança extra, mas se a bateria do celular tivesse acabado eu teria ficado em apuros; é preciso se preparar para imprevistos assim quando se está em movimento
Sempre vai existir algum elemento hostil para certos grupos; com 2FA também não existe solução perfeita, e cada método é inconveniente à sua maneira SMS 2FA tem segurança fraca, mas é o mais difundido e o mais fácil de recuperar Apps TOTP têm segurança forte, mas a recuperação é difícil em caso de perda ou troca de aparelho Tokens de hardware como Yubikey têm custo e também sofrem com problema de recuperação Acho que o método mais confiável seria o governo federal operar um sistema centralizado de autenticação por hardware (na prática, o Departamento de Defesa dos EUA já usa cartões CaC), mas nos EUA seria muito difícil implementar algo assim por questões de privacidade e orçamento; SMS 2FA é hostil para regiões montanhosas etc., mas na verdade nenhum 2FA é perfeito
A privacidade da autenticação é importante em situações específicas, como votação, mas em situações em que é preciso provar claramente quem você é, como em bancos, acho que a preocupação com privacidade não se aplica tanto
Yubikey e afins podem parecer difíceis de recuperar, mas se você cadastrar várias chaves, perder uma não é um problema: dá para registrar uma nova com outra chave já cadastrada
Se você instalar o app do Google Voice, alguns serviços de 2FA funcionam, mas outros não; alguns rejeitam números do GV; o GV consegue receber SMS por Wi‑Fi; antigamente dava para pedir uma femtocell à operadora por um preço baixo, mas hoje saíram de linha e chegam a custar US$ 2500; também dá para se cadastrar no mightytext.net para receber SMS no computador, embora eu não tenha certeza se isso funciona sem sinal celular; eu uso porque é mais confortável escrever SMS no teclado do notebook do que com os dedos
Também é possível conectar um modem USB ao computador, deixá-lo num lugar onde haja sinal e acessá-lo pela internet; eu faço o oposto disso para monitoramento remoto com Raspberry Pi; no protótipo eu também fazia parsing de SMS; não é para todo mundo, mas estou compartilhando no espírito do HN
O mightytext.net não funciona se o telefone estiver sem sinal; o encaminhamento de SMS só pode ser feito pela operadora; integrar isso com todas as operadoras dos EUA também é difícil e há limitações técnicas; só o serviço de SMS via satélite da Apple consegue acessar diretamente um roteador de SMS para fazer retransmissão
Uma das vantagens desse método é que você pode proteger o acesso ao SMS com MFA (autenticação multifator)
TOTP, HOTP etc. podem ser implementados sem dados de identificação pessoal como número de telefone; SMS exige um número, e se esse número estiver vinculado às suas informações pessoais, ele passa a ter muito mais valor para marketing ou agregação de dados
Na maioria dos lugares que exigem autenticação por SMS, eles já conhecem seus dados pessoais como nome e endereço (por exemplo: finanças, licenças, instituições médicas etc.), então a controvérsia sobre agregação de dados para marketing na prática não significa muita coisa; se alguém como o TikTok quiser seu número à força, eu usaria um número descartável ou recusaria
TOTP/HOTP não oferecem a propriedade WYSIWYS (“o que você vê é o que você assina”), como em “estou tentando pagar este valor nesta loja”; em pagamentos bancários e similares, é necessária confirmação direta; de fato, na UE o WYSIWYS pode ser exigido por regulamentação, então apps bancários dedicados acabam sendo necessários para cobrir essa lacuna temporária; os padrões atuais (como WebAuthN) não bastam, e acho que serão necessários métodos novos, como extensões SPC, além de autenticadores de hardware
Eu também moro em área rural e às vezes tenho o problema de o código SMS não chegar; em alguns dias chega, em outros não, e eu nunca soube por quê, mas este texto explica claramente a causa; normalmente uso o serviço da Spectrum tanto para Wi‑Fi quanto para celular, e como acabo dependendo do Wi‑Fi conforme a força do sinal, era isso que estava causando o fenômeno