← volver
CVE-2021-39793highbajo ataqueCWE-787

CVE-2021-39793

51Vexday Risk Score

Prioriza la corrección. Ella está bajo explotación confirmada por CISA.

ssvc Actcvss 7.8epss 0.7%
de la publicación al arma
Publicada en NVD16 mar
CISA KEV+26d
probabilidad de explotación
0.7%top 47% de las CVE
explotación observada
CISA + VulnCheck
Acción exigida por CISAplazo federal: 2022-05-02

Apply updates per vendor instructions.

Resumen

Falha de escrita fora dos limites (CWE-787) no driver de kernel do GPU Mali da ARM (módulo kbase), usado no kernel Android, especificamente na função kbase_jd_user_buf_pin_pages de mali_kbase_mem.c. Um app malicioso sem privilégios especiais consegue escalar para execução em nível de kernel sem interação do usuário — por isso está no catálogo KEV da CISA com indícios de exploração direcionada e limitada já em 2022.

Detalle técnico

kbase_jd_user_buf_pin_pages é a rotina do driver Mali kbase responsável por 'pinar' (fixar em memória física) páginas de um buffer de user-space antes de submeter um job de GPU (JD = Job Dispatch). O Google descreve a causa como um erro de lógica no código que resulta em escrita fora dos limites do buffer alocado. Isso é típico de descompasso entre o tamanho/quantidade de páginas que o driver espera pinar e o que efetivamente é validado antes da escrita, permitindo que dados controlados pelo processo chamador corrompam memória do kernel adjacente à estrutura de páginas pinadas.

O componente é listado pelo Google como 'Display/Graphics' e classificado como EoP (Elevation of Privilege) de severidade High, dentro do Pixel Update Bulletin — ou seja, é tratado como driver de GPU específico de hardware/firmware, não como parte do AOSP público. O bug ID A-210470189 tem asterisco no boletim, o que indica que não há patch público disponível em AOSP: a correção está embutida nos binários de driver GPU distribuídos para dispositivos Pixel, não em código-fonte aberto revisável.

O vetor CVSS (AV:L/AC:L/PR:L/UI:N) descreve um atacante que já possui alguma execução de código no dispositivo (privilégio baixo, como um app instalado) e que, por meio de chamadas ao driver kbase — normalmente via ioctl no nó de dispositivo do GPU —, consegue acionar a condição de escrita indevida sem qualquer interação adicional do usuário e sem precisar de privilégios elevados prévios.

Cómo se explota

A exploração exige que o atacante já tenha capacidade de executar código no dispositivo Android com privilégios de app comum — por exemplo, via uma aplicação maliciosa instalada ou através de uma vulnerabilidade anterior na cadeia (navegador, app de mensagens) que dê esse ponto de entrada. A partir daí, o atacante interage diretamente com o driver Mali kbase (tipicamente através de chamadas ioctl no dispositivo de GPU) para acionar a rotina de pinagem de páginas e induzir a escrita fora dos limites, corrompendo estruturas de memória do kernel e obtendo execução com privilégios de kernel — escalação completa de privilégio local.

O próprio boletim da Google observa que 'há indícios de que CVE-2021-22600 e CVE-2021-39793 podem estar sob exploração limitada e direcionada', o que motivou sua inclusão no catálogo KEV da CISA (adicionada em 2022-04-11, prazo de correção 2022-05-02). Esse padrão — EoP de kernel em GPU combinada com outra CVE de kernel na mesma leva — é consistente com cadeias de exploração usadas para escapar de sandbox de aplicativo e obter controle total do dispositivo, comum em campanhas de spyware direcionado, embora as fontes disponíveis não detalhem o ator ou a campanha específica.

Não há PoC público conhecido nem código de exploração divulgado nas fontes consultadas; a natureza 'closed-source' do driver (marcado com asterisco no boletim) dificulta ainda mais análise independente por pesquisadores fora do ecossistema Google/ARM.

Versiones

Afectadas
Não há uma faixa de versão de kernel/AOSP publicamente especificada pelo fornecedor. A descrição oficial indica apenas 'Product: Android, Versions: Android kernel'. Para dispositivos Google Pixel, o boletim considera vulneráveis todos os níveis de patch de segurança anteriores a 2022-03-05.
Corregidas en
Nível de patch de segurança Google Pixel 2022-03-05 ou posterior corrige a falha nos dispositivos Pixel suportados. Não há confirmação nas fontes disponíveis sobre versões corrigidas específicas de driver Mali kbase para outros fabricantes de dispositivos Android.

Cómo protegerse

Para dispositivos Google Pixel, o boletim recomenda atualizar para o nível de patch de segurança 2022-03-05 ou posterior, que inclui a correção. Como a falha está no driver Mali kbase (fornecido como binário fechado para os dispositivos Pixel), não existe patch de código-fonte público em AOSP a aplicar manualmente — a correção só chega via atualização do firmware/driver de GPU distribuído pelo fabricante.

Para outros fabricantes que utilizam GPUs Mali da ARM (grande parte do mercado Android), a correção depende da distribuição de um driver kbase atualizado pelo próprio fabricante do SoC/dispositivo — as fontes disponíveis não confirmam se ou quando esses fornecedores replicaram a correção, então cada dispositivo precisa ser verificado individualmente pelo nível de patch de segurança do fabricante.

Não há mitigação de configuração ou WAF aplicável: é uma falha de kernel/driver local, não exposta por rede. O único controle compensatório real é reduzir a superfície de instalação de apps não confiáveis (já que a exploração exige execução de código local) e manter o dispositivo atualizado; isso não elimina o risco, apenas reduz a chance de um app malicioso alcançar o driver vulnerável.

Cómo detectar

Não há assinatura ou indicador de comprometimento público conhecido para essa exploração — é uma falha de memória em driver de kernel local, sem tráfego de rede associado. Sinais indiretos possíveis incluem crashes ou panics inesperados envolvendo o módulo kbase/Mali GPU nos logs de kernel (dmesg/kmsg), comportamento anômalo de apps que fazem chamadas ioctl não usuais ao nó de dispositivo da GPU, ou soluções de EDR móvel detectando escalonamento de privilégio pós-exploração. Nenhuma das fontes consultadas (Google, CISA/NVD) publicou IOCs ou regras de detecção específicas.

Investigado y redactado con IA a partir del advisory del fabricante y análisis públicos, con las fuentes citadas. Verifica siempre la versión corregida en el advisory oficial antes de actuar.
In kbase_jd_user_buf_pin_pages of mali_kbase_mem.c, there is a possible out of bounds write due to a logic error in the code. This could lead to local escalation of privilege with no additional execution privileges needed. User interaction is not needed for exploitation.Product: AndroidVersions: Android kernelAndroid ID: A-210470189References: N/A
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Productos afectados
n/a · Android