← back
CVE-2024-43047highunder attackCWE-416

Use After Free in DSP Service

51Vexday Risk Score

Prioritize patching. It under exploitation confirmed by CISA.

ssvc Actcvss 7.8epss 0.7%
from disclosure to weapon
Published on NVDOct 7
CISA KEV+1d
exploitation probability
0.7%top 50% of all CVEs
observed exploitation
yesCISA + VulnCheck
Action required by CISAfederal deadline: 2024-10-29

Apply remediations or mitigations per vendor instructions or discontinue use of the product if remediation or mitigations are unavailable.

Summary

Falha use-after-free (CWE-416) no driver que gerencia memória compartilhada entre o processador principal (HLOS — Android/Linux) e o DSP em chipsets Qualcomm. Está no catálogo KEV da CISA com exploração confirmada, mas o vetor é estritamente local: exige que o atacante já tenha algum nível de acesso ao dispositivo (processo com permissão para falar com o driver do DSP), o que a torna uma peça de escalonamento de privilégio pós-comprometimento, não uma porta de entrada remota.

Technical detail

A falha está no componente de kernel que mantém 'memory maps' — estruturas que registram quais regiões de memória do HLOS (a CPU principal rodando Android) estão mapeadas e acessíveis ao DSP (o coprocessador de sinal digital). Esse subsistema é implementado no driver conhecido como dsp-kernel/fastRPC (adsprpc), que expõe uma interface via ioctl para que processos do userspace criem, usem e liberem esses mapeamentos.

O bug é um use-after-free: um objeto de map de memória é liberado (free) enquanto ainda existe uma referência ativa a ele em outro ponto do código, seja por condição de corrida entre criação/destruição de mapas, seja por falta de verificação antes do reuso. Depois do free, o driver continua operando sobre o ponteiro pendente. Se o atacante conseguir realocar aquela região de memória com conteúdo controlado antes que o ponteiro obsoleto seja usado de novo, ele corrompe estruturas de kernel de forma controlada.

O patch oficial (commit público no repositório dsp-kernel do CodeLinaro, hash 0e27b6c7d2bd8d0453e4465ac2ca49a8f8c440e2) corrige o ciclo de vida desse objeto de map, fechando a janela de uso após liberação. A vulnerabilidade roda em contexto de kernel/driver privilegiado — não em espaço de usuário —, por isso o impacto potencial é alto mesmo partindo de um processo com poucos privilégios.

How it’s exploited

O vetor é local (AV:L): o atacante precisa já estar executando código no dispositivo, tipicamente um processo ou app com permissão para abrir o node de dispositivo do driver fastRPC/adsprpc e emitir as chamadas ioctl que criam e destroem mapas de memória compartilhada com o DSP. Não há interação do usuário (UI:N) e a complexidade de ataque é baixa (AC:L) — uma vez com esse acesso, disparar a condição de corrida/uso indevido é determinístico ou próximo disso, sem depender de engenharia social.

O CVSS reflete impacto total em confidencialidade, integridade e disponibilidade porque a corrupção de memória ocorre em contexto de kernel: uma exploração bem-sucedida permite escalar de um processo com privilégios baixos para execução de código em nível de kernel, efetivamente comprometendo todo o dispositivo (root/escape de sandbox).

A entrada no catálogo KEV da CISA, com prazo de correção fixado para 29/10/2024, confirma exploração ativa observada, mas nem o boletim da Qualcomm nem a CISA detalham publicamente quem explorou ou em que campanha. O padrão típico para esse tipo de falha em drivers de DSP Qualcomm é uso como elo de escalonamento em cadeias de exploração que começam com acesso físico ao aparelho ou com uma app maliciosa/exploit inicial, e terminam em controle total do sistema — perfil consistente com ferramentas de extração forense e spyware móvel que dependem de bugs de privilégio em componentes proprietários de chipset para desbloquear ou rootear o aparelho.

Versions

Affected
Qualcomm descreve o alcance como 'Multiple Chipsets' (múltiplos SoCs Snapdragon e plataformas relacionadas) no Security Bulletin de outubro de 2024. A lista granular de chipsets/plataformas afetados está no boletim oficial da Qualcomm; não foi possível confirmar aqui os identificadores exatos de SoC ou faixas de firmware.
Fixed in
Não especificado com granularidade de versão nas fontes consultadas. A correção corresponde ao commit público no repositório dsp-kernel (CodeLinaro, hash 0e27b6c7d2bd8d0453e4465ac2ca49a8f8c440e2); a entrega efetiva ocorre via atualização de firmware/Android Security Patch Level do fabricante do dispositivo, incorporando esse patch.

How to protect

A correção é o patch do driver dsp-kernel referenciado no boletim de segurança da Qualcomm de outubro de 2024, distribuído aos fabricantes de dispositivo (OEMs) para incorporação nas atualizações de firmware/Android Security Patch Level. Não há CVE isolada resolvível pelo usuário final: a aplicação depende do fabricante do aparelho publicar e o usuário instalar a atualização de segurança correspondente a esse ciclo.

Se a atualização de firmware não estiver disponível para o dispositivo (comum em aparelhos fora de suporte), não existe mitigação de configuração equivalente porque a falha está em um driver de kernel proprietário, não em uma opção ajustável pelo usuário. A própria orientação da CISA no KEV é direta: aplicar a correção do fornecedor ou descontinuar o uso do produto se não houver correção disponível — não há flag, WAF ou controle de rede que neutralize uma falha de kernel local em driver de chipset.

O boletim completo da Qualcomm lista os SoCs afetados por nome; a lista granular de chipsets e das versões de firmware corrigidas não constava no material consultado para esta página — confira o boletim oficial para verificar se o SoC específico do dispositivo está na lista antes de assumir que ele foi ou não corrigido.

How to detect

Não há assinatura de detecção confiável e pública para esta falha. Indícios indiretos possíveis em análise forense pós-incidente incluem entradas de log de kernel (dmesg/logcat) referenciando o driver adsprpc/fastRPC com erros de mapeamento de memória, panics de kernel ou reinicializações inesperadas correlacionadas a atividade nesse driver — mas nenhum desses sinais é exclusivo desta CVE, e ferramentas de EDR móvel convencionais tipicamente não monitoram esse driver de DSP em nível de kernel.

Researched and written with AI from the vendor advisory and public analysis, with the sources above. Always confirm the fixed version in the official advisory before acting.
Memory corruption while maintaining memory maps of HLOS memory.
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H