alexi.sh
Todos os artigosSegurança do navegadorPrivacidade de redeFerramentas de privacidadeModelagem de ameaçasProgramação com IAFerramentas de dev

alexi.shInvestigação

browser-privacy

O impacto do Modo de Bloqueio do iOS 16 no Safari (revisado 2026)

PrivSec LabAtualizado em 8 de junho de 20266 min de leitura
Cadeado de cibersegurança abstrato em fundo digital escuro

O Modo de Bloqueio do iOS 16 desativa a compilação JIT de JavaScript no Safari. Testes de desempenho num iPhone 13 mini mostram uma queda de 95% no Octane e um impacto de 65% no Speedometer — com 12 APIs web bloqueadas.

Índice

A beta 3 do iOS 16 introduziu uma nova funcionalidade de privacidade: o Modo de Bloqueio. A ideia é desativar algumas funcionalidades no iOS para reduzir a possibilidade de ataques relacionados à privacidade.

A Apple fornece uma lista aproximada de funcionalidades desativadas no Modo de Bloqueio, incluindo uma que se destaca imediatamente:

Navegação na web: Certas tecnologias web complexas, como a compilação de JavaScript just-in-time (JIT), são desativadas a menos que o utilizador exclua um site de confiança do Modo de Bloqueio.

Desativar a compilação JIT no JavaScriptCore implica uma queda significativa no desempenho, dado o quão pesado em JavaScript é a web moderna. Este artigo mede quão grande é esse impacto realmente e cataloga o que mais é desativado.

Funcionalidades desativadas

Através de testes manuais e deteção de funcionalidades com Modernizr, as seguintes funcionalidades são desativadas no Modo de Bloqueio:

A maioria destas são desativadas para reduzir vetores de rastreamento passivo do utilizador.

WebAssembly

WASM, embora incrivelmente poderoso, pode ser usado para rapidamente identificar clientes através de discrepâncias de renderização de canvas ou varredura de portas locais, e dificulta a deteção de rastreadores por bloqueadores de anúncios. Isso irá quebrar aplicações Blazor e outras estruturas dependentes de WASM que não têm uma alternativa em JavaScript.

Reprodução de MP3

O suporte a MP3 é uma exceção aqui. Como a maioria dos navegadores o suporta, desativá-lo poderia identificar o dispositivo como estando em Modo de Bloqueio. Uma justificativa: evitar exploits de decodificação de MP3 elaborados. Sites que dependem de MP3 sem alternativas AAC ou OGG irão falhar.

MathML

A renderização de MathML varia ligeiramente por dispositivo, o que pode permitir rastreamento através do objeto DOMRect de uma expressão MathML renderizada.

API de Gamepad

Sem mitigação de identificação, a API de Gamepad pode rastrear utilizadores através das propriedades id e buttons após interação do utilizador com a página. Jogos no navegador e plataformas de streaming de jogos que dependem de entrada de controladores irão falhar.

API de Áudio Web

A API de Áudio Web permite a identificação de utilizadores do Safari através da interface webkitOfflineAudioContext e variações de sinal entre implementações de hardware.

WebGL

A identificação por WebGL é uma das técnicas de rastreamento mais antigas, explorando discrepâncias de renderização entre dispositivos individuais, mesmo executando hardware idêntico. O WebGLRenderingContext também expõe capacidades de hardware e versões de WebGL suportadas.

JPEG 2000

O suporte a JPEG 2000 é hoje um identificador confiável do Safari — é o único navegador mainstream que o suporta.

API de Reconhecimento de Fala

Embora a API de Fala Web funcione no dispositivo no macOS e iOS, pode ser acedida por uma página web para gravar utilizadores sem indicação óbvia. Isto é separado da ditado do iOS e Siri, que permanecem totalmente funcionais.

MediaDevices.getUserMedia()

A interface MediaDeviceInfo expõe uma propriedade deviceId persistente para câmaras, microfones e altifalantes, permitindo rastreamento entre sessões numa única origem. Sites que requerem acesso a microfone ou câmara não irão funcionar.

RTCDataChannel

A API WebRTC pode vazar tanto endereços IP públicos quanto locais — mesmo atrás de uma VPN — ao comunicar com um servidor STUN.

Visualizador de PDF

O visualizador de PDF do WebKit está desativado. Clicar num link de PDF aciona um download em vez disso. Documentos ainda podem ser abertos através da aplicação Ficheiros após o download.

Fontes SVG

As fontes SVG estão desativadas, provavelmente pela mesma razão que o JPEG 2000: são uma funcionalidade exclusiva do Safari que pode ser usada como um sinal de identificação.

Nota: Estas alterações aplicam-se a todos os navegadores iOS e iPadOS, uma vez que todos são obrigados a usar o WebKit. Chrome, Firefox e Brave no iOS são igualmente afetados.

Impacto no desempenho

Ecrã inicial de um smartphone

Desativar a compilação JIT no JavaScriptCore afeta o desempenho em praticamente todos os sites, com um provável efeito secundário na vida útil da bateria.

Os testes de desempenho abaixo são médias de 10 execuções, registadas num iPhone 13 mini executando a beta 3 do iOS 16 para desenvolvedores.

Octane

Octane já não é mantido, mas continua a ser uma linha de base relativa útil para o desempenho de JavaScript dentro do mesmo navegador.

Resultado: queda de ~95% no desempenho. Isto parece dramático — e é para cargas de trabalho puramente JS — mas o navegador como um todo não é 95% mais lento, uma vez que o pipeline de renderização, layout e rede não são afetados.

JetStream 2.0

JetStream não pôde ser concluído: seu foco pesado em WebAssembly significa que simplesmente falha no Modo de Bloqueio.

Speedometer 2.0

Speedometer avalia o desempenho de frameworks JavaScript do mundo real simulando interações do utilizador em vários frameworks. Isso dá uma visão mais prática do impacto.

Resultado: queda de ~65% no desempenho. Significativa, mas não tão extrema quanto o resultado do Octane. Para utilizadores que requerem a troca pela privacidade, isso muda a decisão de "completamente impraticável" para "um compromisso deliberado."

MotionMark 1.2

Ao contrário da maioria dos testes de desempenho gráfico, o MotionMark depende principalmente de renderização HTML e SVG através de operações CSS e canvas em vez de WebGL.

Resultado: queda de ~20% — largamente imperceptível no uso diário.

Conclusão

Para utilizadores em risco de ataques direcionados, o Modo de Bloqueio é uma primeira linha de defesa prática. É fácil de ativar e cobre um conjunto significativo de vetores de rastreamento e exploração baseados em navegador sem exigir conhecimentos técnicos.

Não bloqueará toda a identificação — o nosso verificação da realidade da prevenção de rastreamento do Safari detalha o que ainda escapa. A Apple especificamente direcionou APIs que são difíceis para utilizadores não técnicos controlarem por meios convencionais. A penalidade de 65% no Speedometer é o verdadeiro custo — aceitável para um indivíduo de alto risco, proibitivo para uso geral.


Atualização 2026

Quatro anos depois — a nossa retrospectiva de quatro anos do Modo de Bloqueio cobre todo o período — o Modo de Bloqueio foi ainda mais reforçado no iOS 17 e iOS 18. A Apple adicionou proteções fora do navegador — restringindo certas funcionalidades do FaceTime, acessórios USB e opções de conectividade sem fio em cenários de ameaça extrema.

No Safari, a troca do JIT permanece inalterada: o JIT continua desativado no Modo de Bloqueio, e a diferença de desempenho é aproximadamente a mesma em hardware moderno — os nossos testes de desempenho do JIT do WebKit de 2026 fornecem os números atuais. A lista de APIs web bloqueadas cresceu ligeiramente; WebGL2 e algumas funcionalidades avançadas do WebRTC agora juntam-se à lista de bloqueio.

A funcionalidade já não é experimental. Está documentada, suportada e usada por jornalistas, ativistas e investigadores de segurança em todo o mundo. Se você executa o iOS 18 e trabalha num contexto sensível, o caso para ativar o Modo de Bloqueio — pelo menos num dispositivo secundário — é mais forte do que era em 2022.

Photo: Towfiqu barbhuiya — Unsplash (source)

Também disponível em

FAQ

O Modo de Bloqueio do iOS desacelera significativamente o Safari?
Sim. Desativar a compilação JIT causa uma queda de ~95% no teste Octane e uma queda de ~65% no Speedometer 2.0. O MotionMark (renderização CSS/SVG) é apenas ~20% mais lento.
Quais APIs web são desativadas no Modo de Bloqueio do iOS?
WebAssembly, reprodução de MP3, MathML, API de Gamepad, API de Áudio Web, WebGL, JPEG 2000, API de Reconhecimento de Fala, MediaDevices.getUserMedia(), RTCDataChannel, o Visualizador de PDF e fontes SVG.
O Modo de Bloqueio afeta o Chrome ou Firefox no iOS?
Sim. Todos os navegadores iOS e iPadOS são obrigados a usar o WebKit, portanto, o Modo de Bloqueio afeta o Chrome, Firefox e Brave de forma idêntica.
O Modo de Bloqueio do iOS ainda é relevante em 2026?
Muito. A Apple expandiu as proteções do Modo de Bloqueio no iOS 17 e iOS 18, e a troca do JIT permanece a mesma: máxima privacidade a um custo real de desempenho.