← voltar
CVE-2022-22706highsob ataqueCWE-119

CVE-2022-22706

71Vexday 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 1.1%
da publicação à arma1614 dias
Publicada no NVD3 de mar.
1ª PoC+1614d
CISA KEV+392d
probabilidade de exploração
1.1%top 37% das CVEs
exploração observada
simCISA + VulnCheck
1 exploit(s) público(s)
Ação exigida pela CISAprazo federal: 2023-04-20

Apply updates per vendor instructions.

Resumo

Falha no driver de kernel do Arm Mali GPU que permite a um usuário sem privilégios obter acesso de escrita em páginas de memória marcadas como somente leitura. Está no catálogo KEV da CISA com exploração confirmada, mas o CVSS 7.8 exige acesso local prévio (PR:L) — não é uma falha explorável remotamente por si só, e sim uma peça de escalonamento de privilégios/corrupção de memória usada dentro de uma cadeia maior de exploração, típica em comprometimento de dispositivos Android e outros SoCs que usam GPU Mali.

Detalhamento técnico

A Arm classifica a falha apenas como 'unspecified vulnerability' em seu advisory de segurança, sem detalhar o componente exato do driver ou o fluxo de código afetado. O CISA KEV mapeia a falha para CWE-119 (Improper Restriction of Operations within the Bounds of a Memory Buffer), indicando um problema de gerenciamento de memória no driver de kernel — não no firmware da GPU nem no userspace.

O efeito prático é a quebra da separação de permissões de página: uma página mapeada como read-only para o processo (por exemplo, memória compartilhada entre CPU e GPU alocada pelo driver Mali) passa a aceitar escrita a partir de um contexto sem privilégio elevado. Isso é consistente com classes de bugs recorrentes em drivers Mali — manipulação incorreta de mapeamentos de memória (mmap/GPU MMU), contagem de referência de buffers, ou validação insuficiente de flags de proteção ao criar/reutilizar alocações.

O fornecedor não publicou write-up técnico detalhado nem prova de conceito pública nas fontes catalogadas; a Arm historicamente divulga essas falhas em lote (múltiplos CVEs por boletim) sem análise root-cause aberta ao público, o que limita a profundidade de qualquer descrição técnica além da fornecida oficialmente.

Como é explorada

Para explorar a falha, o atacante precisa de execução de código local no dispositivo — ou seja, já ter conseguido rodar algo como aplicativo ou processo sem privilégio no sistema (PR:L no vetor CVSS). A partir daí, interage com o driver Mali (via ioctl ou chamadas de mapeamento de memória expostas pelo device node do GPU) para obter escrita em páginas que deveriam ser somente leitura, o que normalmente é usado para corromper estruturas de kernel ou tabelas de página e escalar para execução com privilégios de kernel ou de sistema.

Essa característica — não ser uma falha de entrada remota, mas um primitivo de escalonamento local — é o motivo de estar no KEV: vulnerabilidades de GPU Mali com esse padrão têm sido historicamente encadeadas em campanhas de spyware comercial contra dispositivos móveis, onde o vetor inicial (navegador, app malicioso, mensagem) entrega o código que dispara essa etapa de escalonamento de privilégio. A CISA não detalha o ator ou a campanha associada no registro do KEV, apenas confirma exploração ativa.

Não há PoC pública documentada nas fontes catalogadas nem detalhamento de payload; a ação recomendada pela CISA é genérica ('apply updates per vendor instructions'), o que reforça que o conhecimento técnico completo do exploit não está disponível publicamente — apenas o fornecedor e possivelmente os operadores da campanha detectada o possuem.

Versões

Afetadas
Arm Mali GPU Kernel Driver: Midgard r26p0 até r31p0; Bifrost r0p0 até r35p0; Valhall r19p0 até r35p0.
Corrigidas em
Não determinado com precisão nas fontes lidas. O fornecedor indica correção em versões posteriores às faixas afetadas (acima de r31p0 para Midgard e acima de r35p0 para Bifrost e Valhall); a versão exata de cada branch deve ser confirmada no advisory oficial da Arm (developer.arm.com/support/arm-security-updates/mali-gpu-kernel-driver), cujo conteúdo detalhado não foi possível verificar diretamente para esta pesquisa.

Como se proteger

A correção definitiva é atualizar o driver de kernel Mali para uma versão acima da faixa vulnerável indicada pela Arm (posterior a r31p0 na linha Midgard, r35p0 na linha Bifrost e r35p0 na linha Valhall — a versão exata de correção por branch deve ser confirmada no advisory oficial da Arm, pois seu conteúdo detalhado não foi possível verificar diretamente a partir das fontes disponíveis). Em dispositivos Android, essa atualização normalmente chega via boletim de segurança do fabricante do SoC/OEM, não via Arm diretamente — o usuário final depende do vendor patch level do dispositivo.

Não há paliativo de configuração conhecido: como o bug está no driver de kernel que faz a ponte entre CPU e GPU, não existe flag de userspace ou mitigação de WAF/rede aplicável — a superfície é local e de kernel. A única redução de risco real sem atualizar é limitar a superfície de execução de código não confiável no dispositivo (controle de instalação de apps, isolamento de processos, atualização do SO), o que reduz a chance de o atacante chegar ao ponto de ter execução local necessária para acionar a falha.

Não funciona como mitigação: reiniciar o dispositivo, remover apps específicos após infecção (não corrige a vulnerabilidade em si, só remove artefatos), ou confiar em antivírus/EDR de userspace para bloquear a interação com o driver — a exploração ocorre em nível de kernel e pode ocorrer antes que ferramentas de detecção em userspace tenham visibilidade.

Como detectar

Não há assinatura de rede aplicável — a exploração ocorre localmente via chamadas ao driver de kernel (device node da GPU), sem tráfego de rede associado à etapa de escalonamento em si. Em nível de host, sinais possíveis incluem crashes ou comportamento anômalo do processo do driver Mali (kernel panics, entradas de log relacionadas a mapeamento de memória do GPU) e, em análise forense de dispositivos móveis comprometidos, presença de processos ou binários que interagem diretamente com o device node do Mali fora do padrão esperado de apps legítimos. Não existe indicador de comprometimento público e confiável documentado nas fontes catalogadas; a confirmação de exploração geralmente vem de análise forense pós-incidente, não de detecção em tempo real.

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.
Arm Mali GPU Kernel Driver allows a non-privileged user to achieve write access to read-only memory pages. This affects Midgard r26p0 through r31p0, Bifrost r0p0 through r35p0, and Valhall r19p0 through r35p0.
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Produtos afetados
n/a · n/a
⚠ Recursos públicos, para você avaliar a exposição de sistemas que controla ou está autorizado a testar. Teste apenas com autorização.