← voltar
CVE-2020-9907highsob ataqueCWE-787

CVE-2020-9907

51Vexday Risk Score

Priorize a correção. Ela está sob exploração confirmada pelo CISA.

ssvc Actcvss 7.8epss 3.9%
da publicação à arma
Publicada no NVD16 de out.
CISA KEV+619d
probabilidade de exploração
3.9%top 10% das CVEs
exploração observada
simCISA + VulnCheck
Ação exigida pela CISAprazo federal: 2022-07-18

Apply updates per vendor instructions.

Resumo

Falha de corrupção de memória no driver AVEVideoEncoder do kernel XNU, presente em iOS, iPadOS e tvOS antes das versões 13.6/13.4.8. Uma aplicação instalada localmente pode explorar o driver para executar código com privilégios de kernel, o que na prática significa escape completo do sandbox do app e comprometimento total do dispositivo. Está catalogada no KEV da CISA como exploração confirmada, o que eleva sua relevância muito além do que o CVSS 7.8 sugere isoladamente.

Detalhamento técnico

A falha reside no AVEVideoEncoder, componente do kernel responsável por codificação de vídeo em hardware, tipicamente exposto a aplicações via interfaces IOKit/IOSurface. A Apple classifica o problema como 'memory corruption' e a correção não foi um ajuste de bounds checking — foi a remoção completa do código vulnerável ('addressed by removing the vulnerable code'), o que indica uma superfície de código legada, provavelmente pouco usada e sem necessidade funcional, que foi eliminada em vez de corrigida. A CISA classifica o defeito como CWE-787 (Out-of-Bounds Write).

O vetor CVSS (AV:L/AC:L/PR:N/UI:R) descreve o padrão clássico de escalada de privilégios local via driver de kernel: acesso local ao dispositivo (a aplicação já roda no aparelho), sem necessidade de privilégios adicionais para iniciar a interação, mas com exigência de interação do usuário — normalmente a simples execução/abertura do app malicioso que aciona a chamada vulnerável ao driver.

O que o atacante controla é o input enviado à interface do AVEVideoEncoder a partir do userland. Ao corromper estruturas de memória do kernel através dessa interface, um app malicioso consegue converter uma primitiva de escrita fora dos limites em execução arbitrária de código no contexto kernel — o degrau mais alto de privilégio no dispositivo, acima até do sandbox e das proteções de assinatura de código do sistema.

A descoberta é atribuída ao pesquisador 08Tc3wBB, em colaboração com a ZecOps, empresa especializada em forense móvel e detecção de exploração; isso é consistente com o padrão de vulnerabilidades de kernel do iOS encontradas em investigações forenses de dispositivos comprometidos, embora as fontes disponíveis não detalhem o método exato de descoberta.

Como é explorada

Na prática, a exploração exige que a vítima instale e execute uma aplicação maliciosa no dispositivo — não é um vetor remoto por rede nem depende de interação via Safari ou anexo malicioso isoladamente. Uma vez em execução, o app interage com a interface do driver AVEVideoEncoder para desencadear a corrupção de memória e obter execução de código em contexto de kernel, contornando o sandbox de aplicações do iOS/tvOS.

Esse tipo de falha é o elo clássico de cadeias de jailbreak e de spyware móvel: raramente é usado isoladamente, mas combinado com um vetor de entrada inicial (engenharia social para instalação do app, ou exploração de outra falha que já permita executar código em espaço de usuário) para escalar de um processo restrito para controle total do kernel.

A presença no catálogo KEV da CISA (adicionado em 27/06/2022, com prazo de correção definido para 18/07/2022) confirma exploração no mundo real, mas as fontes consultadas não detalham campanha, ator ou telemetria específica — apenas o registro formal de que a vulnerabilidade foi usada em ataques observados. A CISA não indica associação conhecida com ransomware.

Versões

Afetadas
iOS e iPadOS anteriores à 13.6; tvOS anterior à 13.4.8 (dispositivos suportados: iPhone 6s e posteriores, iPad Air 2 e posteriores, iPad mini 4 e posteriores, iPod touch 7ª geração; Apple TV 4K e Apple TV HD).
Corrigidas em
iOS 13.6, iPadOS 13.6 e tvOS 13.4.8, lançados em 15/07/2020, e versões posteriores.

Como se proteger

A correção definitiva é atualizar para iOS 13.6, iPadOS 13.6 ou tvOS 13.4.8, ou qualquer versão posterior — a Apple removeu o código vulnerável nessas releases, então não há flag de configuração ou parâmetro que mitigue o problema sem atualizar o sistema.

Como é uma falha de kernel dependente de execução local de aplicação maliciosa, o controle compensatório mais efetivo em ambientes que não podem atualizar imediatamente é restringir a instalação de aplicações a fontes confiáveis (MDM com allowlist de apps, bloqueio de perfis de configuração não gerenciados) e monitorar indicadores de comprometimento de jailbreak/spyware — mas isso reduz o risco, não elimina a vulnerabilidade subjacente.

Não existe mitigação via WAF ou controle de rede, já que o vetor é local ao dispositivo e não trafega em requisições HTTP; qualquer medida de perímetro é irrelevante para esta CVE especificamente.

Como detectar

Não há assinatura de rede a procurar, pois a exploração ocorre localmente entre um app e o driver de kernel — não há tráfego de rede associado ao ataque em si. Em investigações forenses de dispositivos comprometidos, os indicadores relevantes são artefatos de jailbreak não autorizado, processos ou perfis de configuração anômalos, presença de aplicações fora da App Store instaladas via sideload, e crash logs relacionados ao AVEVideoEncoder ou a kernel panics inexplicados — nenhuma dessas fontes fornece uma assinatura confiável e pública de exploração desta CVE especificamente.

Pesquisado e redigido com IA a partir do advisory do fornecedor e de análises públicas, com as fontes acima. Confira sempre a versão corrigida no advisory oficial antes de agir.
A memory corruption issue was addressed by removing the vulnerable code. This issue is fixed in iOS 13.6 and iPadOS 13.6, tvOS 13.4.8. An application may be able to execute arbitrary code with kernel privileges.
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Produtos afetados
Apple · iOSApple · tvOS