Cibersegurança

Um simples código CSS faz o iPhone reiniciar

Foi publicada online uma prova de conceito para explorar um problema encontrado no motor WebKit, nomeadamente no navegador Safari. Depois de carregar uma página HTML que contém um código CSS especial, o iOS bloqueia e reinicia.

O problema é explorado através do efeito CSS backdrop-filter, aplicado a todos os elementos div da página. O filtro de fundo é uma novidade do CSS: este efeito permite desfocar ou distorcer as cores na área situada por trás de um elemento. Uma operação deste tipo exige recursos consideráveis, o que preocupa há muito tempo alguns programadores.

A validade destes alertas foi comprovada durante o fim de semana pelo programador e especialista em segurança Sabri Haddouche, que descobriu o problema. O investigador publicou no Twitter a ligação para a PoC do exploit e também um vídeo de demonstração do ataque, que provocou a reinicialização do smartphone. Consoante a versão do sistema operativo, o ataque causa um simples reinício da interface do utilizador, ou então provoca um kernel panic e conduz igualmente ao reinício.

O investigador criou também uma página especial para mostrar o problema em ação.

Neste caso, Addush indica que a falha não afeta apenas o iOS, mas que pode igualmente ter um impacto negativo no macOS. Segundo o investigador, na sua forma atual (apenas HTML e CSS), o ataque «congela» o Safari e abranda o macOS durante um bom minuto, e só depois disso é que o utilizador consegue fechar o separador problemático.

Um ataque mais sério à versão para computador do navegador exigirá uma modificação do exploit e a adição de JavaScript. No entanto, o investigador não se atreveu a publicar esse exploit, uma vez que o problema persiste mesmo após reiniciar o dispositivo: o Safari volta a carregar a página maliciosa e o ciclo repete-se.

O especialista já informou os engenheiros da Apple sobre a vulnerabilidade e indicou que estes estavam a analisar o problema.

A sua opinião