20 de jun. de 2021

O Wi-Fi do seu iPhone poderá estourar depois de se juntar a este hotspot

Surgiu um bug curioso que estoura com o Wi-Fi do iPhone depois deste se tentar ligar a um hotspot com um SSID específico. Quando é ativada a ligação o iPhone fica impossibilitado de se ligar a uma rede Wi-Fi.

O problema é que, mesmo depois de reiniciar o iPhone, o utilizador não conseguirá ligar o WiFi. Mas o bug não acontece em todos!

PUB

Este bug poderá ser explorado por pessoas mal intencionadas dando o nome ao hotspot para Wi-Fi gratuito o que irá criar problemas aos utilizadores com iPhone.

 

Código no nome do hotspot estoura o seu iPhone

A história é contada de forma simples. Esta semana, Carl Schou, especialista em engenharia reversa, deparou-se com um problema quando se ligou ao seu hotspot Wi-Fi pessoal chamado:

%p%s%s%s%s%n

Isto é, ele deu este nome à sua ligação WiFi (SSID) e tentou ligar a essa “internet Wi-Fi” o seu iPhone. Logo que se ligou o Wi-Fi do smartphone desligou-se, e sempre que tentava ativar novamente, este desligava-se rapidamente, mesmo que ele reiniciasse o dispositivo ou desse um nome diferente ao hotspot:

Depois de renomear o meu Wi-Fi pessoal com o SSID ‘%p%s%s%s%s%n’, o meu iPhone desativou permanentemente a sua funcionalidade WiFi. Nem o reiniciar, nem a alteração do SSID o corrige.

Tweeted Schou.

O engenheiro estava a usar um iPhone XS com a versão iOS 14.4.2 instalada.

 

O problema ainda não está resolvido

Segundo o que foi testado, a versão iOS 14.6 continua a mostrar que a funcionalidade Wi-Fi do iPhone é desativada após a ligação com a rede sem fio, batizada com este tal nome estranho.

Quando se coloca este nome na ligação Wi-Fi, a opção de ativar ou desativar o Wi-Fi no iPhone começa a funcionar de forma errática. Mas acaba por não deixar o sistema funcionar corretamente.

Nalguns iPhones nem era possível fazer a ligação a esse nome e noutros aparecia o comportamento descrito por Schou, onde a configuração de Wi-Fi do iPhones seria desativada e não se conseguia ligar novamente, conforme mostrado abaixo:

A única maneira de resolver o problema e restabelecer o acesso ao Wi-Fi do iPhone é restaurar as configurações de rede do iPhone.

 

Problema parece resolvido no iOS 14.7 beta e iOs 15 beta

Metemos mão na massa e testamos nós este bug. Configuramos no nosso router o SSID em causa e colocamos à prova vários iPhones. Um com iOS 14.6, um com iOS 14.7 beta 3 e iOS 15 beta.

No caso do iPhone 12 Pro Max com iOS 14.6, o problema foi tal e qual o explicado. Depois do iPhone se ligar ao SSID estranho, o Wi-Fi desligou e nada o fez voltar. Solução: repor definições de rede.

Usamos então um iPhone SE 2020 com a versão iOS 14.5 e nada aconteceu assim como com o iOS 14.7 beta 3 e o mesmo com iOS 15 beta.

A mensagem em todos estes últimos foi “Não foi possível aceder a %p%s%s%s%s%n“. Portanto, presumimos que há um bug, mas que não atinge todas as versões e nas mais recentes, ainda em versão beta, isto já não acontece.

 

Como repor as definições de rede

Visto que depois do iPhone cair neste loop sem permitir que o Wi-Fi funcione corretamente, a única solução é repor as definições de rede.

Assim, vamos a Definições > Geral > Repor e depois escolher a opção Repor as definições de rede. Depois o iPhone irá restaurar as definições de fábrica apenas para as ligações, não será feito qualquer restauro que leve a perder dados guardados no iPhone.

Depois de reposto, tudo fica direito e volta a ter acesso às opções Wi-Fi. Contudo, se alguma vez vir este SSID (nome de ligação a uma rede Wi-Fi) nunca se ligue.

 

Também acontece no Android?

Não, Segundo alguns testes este bug não parece afetar o sistema operativo da Google.

 

Provável vulnerabilidade de formatação de string

Outros investigadores de segurança que viram o tweet de Schou acreditam saber o problema.

Quando uma string com sinais “%” existe em nomes de pontos de acesso Wi-Fi, o iOS pode estar a interpretar de forma errada as letras após “%” como especificadores de formato de string, quando não o são.

Fonte: Pplware.