← voltar
CVE-2020-27932highsob ataqueCWE-843

CVE-2020-27932

76Vexday Risk Score

Priorize a correção. Ela está sob exploração confirmada pelo CISA e tem prova de conceito pública.

ssvc Actcvss 7.8epss 10%
da publicação à arma
Publicada no NVD8 de dez.
CISA KEV+330d
probabilidade de exploração
10%top 5% das CVEs
exploração observada
simCISA + VulnCheck
1 exploit(s) público(s)
Ação exigida pela CISAprazo federal: 2022-05-03

Apply updates per vendor instructions.

Resumo

Falha de type confusion no kernel XNU (subsistema de turnstiles, usado para herança de prioridade em locks) que permite a uma aplicação maliciosa já em execução localmente executar código arbitrário com privilégios de kernel. A Apple confirmou exploração ativa antes da correção e a CISA incluiu a CVE no catálogo KEV — não é um bug teórico, foi usado em ataques reais como parte de cadeias de escalonamento de privilégio em iOS/macOS/watchOS.

Detalhamento técnico

A falha está no código do kernel XNU que gerencia turnstiles — a estrutura interna que a Apple usa para propagar prioridade entre threads bloqueadas em locks (mutex, semáforos, etc.), evitando inversão de prioridade. O advisory da Apple descreve genericamente como 'a type confusion issue... addressed with improved state handling', sem detalhar a rotina exata, mas o título do PoC público catalogado ('XNU Kernel Turnstiles Type Confusion') indica que o kernel trata um objeto de um tipo como se fosse de outro tipo em algum ponto da manipulação de estado do turnstile, permitindo que um atacante influencie ponteiros ou campos de estrutura de forma inconsistente com o tipo real do objeto.

Type confusion (CWE-843) desse tipo em código de kernel tipicamente abre caminho para corrupção de memória controlada: ao forçar o kernel a interpretar uma estrutura de um tipo como outro com layout diferente, o atacante pode manipular ponteiros de função, contadores de referência ou campos de controle de objeto, o que normalmente é o primeiro passo para escrita arbitrária em memória de kernel e, a partir dali, execução de código com privilégios de kernel.

A descoberta é atribuída ao Google Project Zero, que também recebeu crédito por outras CVEs de kernel corrigidas no mesmo pacote de atualizações (CVE-2020-27950, por exemplo), sugerindo uma cadeia de bugs analisados em conjunto, possivelmente como parte de investigação sobre exploração in-the-wild.

Como é explorada

O vetor exige que o atacante já tenha uma aplicação (código nativo) rodando no dispositivo alvo — não é uma falha remota por rede. O vetor CVSS (AV:L/PR:N/UI:R) reflete isso: acesso local, sem necessidade de privilégios elevados prévios, mas com alguma interação do usuário (ex: instalar/abrir a aplicação maliciosa). A partir daí, a aplicação aciona a condição de type confusion no tratamento de turnstiles e escala de processo sandboxed/sem privilégios para execução de código em contexto de kernel — controle total do dispositivo.

A Apple declarou explicitamente estar ciente de relatos de exploração ativa desta CVE antes da correção, e ela está no catálogo KEV da CISA, o que confirma uso em campanhas reais, não apenas prova de conceito acadêmica. Existe também PoC público (referenciado no PacketStorm), o que reduz a barreira para reprodução por outros atores depois da divulgação.

Na prática, esse tipo de bug de kernel raramente é usado isolado: costuma compor cadeias de exploração junto com uma falha de execução remota de código em outro componente (WebKit, parser de fontes, etc.) para converter comprometimento de um processo sandboxed em controle total do sistema — o padrão típico de spyware móvel da época.

Versões

Afetadas
macOS anterior a Big Sur 11.0.1 (incluindo Catalina 10.15.7 antes do Supplemental/Update e High Sierra/Mojave antes do Security Update 2020-006); iOS anterior a 12.4.9 e anterior a 14.2; iPadOS anterior a 14.2; watchOS anterior a 7.1, 6.2.9 e 5.3.9.
Corrigidas em
macOS Big Sur 11.0.1; macOS Catalina 10.15.7 Update / Supplemental Update; Security Update 2020-006 (High Sierra e Mojave); iOS 12.4.9; iOS 14.2 e iPadOS 14.2; watchOS 7.1, 6.2.9 e 5.3.9.

Como se proteger

A correção é atualizar para as versões corrigidas listadas pela Apple: não há flag de configuração, mitigação de rede ou controle compensatório que neutralize uma falha de kernel local desse tipo. Como o vetor exige execução de código nativo local, a única defesa em profundidade real é restringir a instalação de aplicações não confiáveis (MDM, restrições de instalação, não usar lojas de terceiros) e reduzir a superfície de ataque combinada (o bug raramente é explorado isolado, então mitigar o vetor de entrada inicial — phishing, links maliciosos, apps de fora da App Store — reduz o risco prático).

Atualizar o sistema operacional para a versão corrigida elimina a vulnerabilidade; não existe patch de kernel parcial ou desativação seletiva do subsistema de turnstiles, pois ele é central para sincronização do kernel XNU.

Como detectar

As fontes disponíveis não descrevem indicadores de comprometimento específicos (assinaturas, chamadas de syscall anômalas, artefatos em log) associados à exploração desta CVE. A Apple apenas confirma 'relatos de exploração no mundo real' sem detalhar telemetria. Na ausência de assinatura pública conhecida, o sinal mais prático em ambientes gerenciados é monitorar crashes/panics de kernel relacionados a turnstiles ou comportamento anômalo pós-instalação de aplicações não verificadas, combinado com a presença do dispositivo em versões de OS anteriores às corrigidas — mas isso não substitui detecção real de exploração.

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 type confusion issue was addressed with improved state handling. This issue is fixed in macOS Big Sur 11.0.1, watchOS 7.1, iOS 12.4.9, watchOS 6.2.9, Security Update 2020-006 High Sierra, Security Update 2020-006 Mojave, iOS 14.2 and iPadOS 14.2, watchOS 5.3.9, macOS Catalina 10.15.7 Supplemental Update, macOS Catalina 10.15.7 Update. A malicious 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
⚠ Recursos públicos, para você avaliar a exposição de sistemas que controla ou está autorizado a testar. Teste apenas com autorização.