CVE-2021-30661
Prioritize patching. It under exploitation confirmed by CISA.
Official vendor statements in CSAF/VEX format: whether their product is affected, already fixed, or ruled out — and why. These are the vendor's assertions, not Vexday's judgment.
Apply updates per vendor instructions.
Summary
Use-after-free no componente WebKit Storage que permite execução arbitrária de código ao processar conteúdo web malicioso — basta a vítima visitar uma página ou renderizar conteúdo HTML controlado pelo atacante em qualquer app que use o motor WebKit. A Apple confirmou relatos de exploração ativa antes da correção, e a falha está no catálogo KEV da CISA; o vetor de entrega típico é phishing direcionado ou comprometimento de site, não ataque massivo.
Technical detail
A falha reside especificamente no subsistema WebKit Storage (não no motor de renderização/JS genérico), que lida com APIs de armazenamento web como IndexedDB, Web Storage e mecanismos relacionados de persistência de dados no navegador. Um objeto é liberado (freed) em algum ponto do fluxo de manipulação de storage, mas uma referência a esse objeto permanece acessível e é usada posteriormente — o clássico padrão de use-after-free (CWE-416). Isso ocorre normalmente por erro de gerenciamento de ciclo de vida entre callbacks assíncronos e a liberação de memória: uma operação de storage dispara um callback que ainda referencia um objeto já destruído por outra thread ou fluxo de execução.
O atacante controla o conteúdo HTML/JS servido à vítima e pode manipular o timing e a sequência de operações de storage para forçar a condição de corrida que libera o objeto prematuramente. Ao reocupar a memória liberada com dados controlados (heap grooming) antes que a referência dangling seja usada, é possível transformar a corrupção de memória em execução de código com os privilégios do processo WebKit renderer, e potencialmente escapar para o processo principal via encadeamento com outras falhas (comum em cadeias de exploração iOS da época).
A Apple corrigiu com 'melhor gerenciamento de memória' — descrição genérica que não detalha a mudança exata (uso de referências fortes/weak, reordenação de destruição, checks de nulidade adicional). Nenhum pesquisador publicou write-up técnico detalhado do bug em si; o crédito é da equipe 360 ATA (yangkang, zerokeeper, bianliang), conhecida por reportar falhas WebKit exploradas em campanhas reais.
How it’s exploited
O vetor é puramente web: a vítima precisa carregar conteúdo controlado pelo atacante em um contexto WebKit — Safari, WebView embutido em app iOS/macOS, ou qualquer superfície que renderize HTML via WebKit. Não há necessidade de autenticação nem de configuração não padrão; a interação do usuário exigida (UI:R no vetor CVSS) é simplesmente abrir um link ou visualizar a página, o que é trivial de obter via phishing, malvertising ou comprometimento de site legítimo (watering hole).
A Apple declarou estar ciente de 'um relatório de que essa falha pode ter sido ativamente explorada' — linguagem cautelosa que indica exploração real mas não confirma escala nem atribuição de campanha. Não há detalhes públicos sobre quem foi alvo ou qual ator a usou; a inclusão no catálogo KEV da CISA reforça que a exploração é considerada confirmada, não hipotética.
Dada a natureza de use-after-free em componente de storage, a exploração provavelmente exige um exploit de heap grooming relativamente sofisticado para obter execução confiável, o que é consistente com o padrão de bugs WebKit usados em cadeias de zero-day contra iOS (frequentemente encadeados com escalonamento de privilégios de kernel para escapar do sandbox do WebContent process). Nenhum PoC público funcional foi identificado nas fontes consultadas.
Versions
How to protect
A correção definitiva é atualizar para as versões com patch: Safari 14.1 (macOS Catalina e Mojave), iOS 14.5 / iPadOS 14.5, iOS 12.5.3 (dispositivos mais antigos sem suporte a iOS 14), watchOS 7.4, tvOS 14.5 e macOS Big Sur 11.3. Como o bug está no WebKit e foi ativamente explorado, não há paliativo real que neutralize o risco sem atualizar — desativar JavaScript reduz superfície de ataque para muitos bugs WebKit, mas não há confirmação nas fontes de que essa falha específica dependa de JS habilitado, então não deve ser tratado como mitigação garantida.
Para frotas gerenciadas (MDM) sem atualização imediata possível, o único controle compensatório com efeito real é restringir o uso de navegação web não confiável nesses dispositivos até a atualização — o que na prática é inviável para a maioria dos usuários finais. Não existe flag de configuração, WAF ou controle de rede capaz de bloquear a exploração no lado cliente, já que o bug é de memória no motor de renderização, não uma falha de protocolo ou entrada sanitizável na borda.
O mito a descartar: manter apenas o iOS/iPadOS atualizado não protege usuários de macOS/Safari standalone e vice-versa — cada plataforma teve patch separado e precisa ser aplicado individualmente, incluindo watchOS e tvOS, frequentemente esquecidos em inventários de patch management.
How to detect
Não há assinatura de rede ou log confiável documentada publicamente para detectar tentativas de exploração desse use-after-free específico — a falha ocorre inteiramente no processo de renderização do cliente, sem payload de rede distintivo além do HTML/JS malicioso em si, que pode ser ofuscado. Em ambientes com telemetria EDR em macOS/iOS, procure por crashes anômalos ou reinícios inesperados do processo WebContent/Safari correlacionados com navegação a domínios suspeitos ou recém-registrados, e por indicadores de comprometimento associados a campanhas de exploração WebKit documentadas por fornecedores de threat intelligence para o período de 2021 — nenhum IOC específico desta CVE foi publicado nas fontes consultadas.