Uma nova vulnerabilidade denominada LeftoverLocals, que afeta unidades de processamento gráfico da AMD, Apple, Qualcomm e Imagination Technologies, permite a recuperação de dados do espaço de memória local. Rastreada como CVE-2023-4969, a falha de segurança permite a recuperação de dados de unidades de processamento gráfico (GPUs) vulneráveis, especialmente no contexto de grandes modelos de linguagem (LLMs) e processos de aprendizado de máquina (ML).
O LeftoverLocals foi descoberto pelos pesquisadores da Trail of Bits, Tyler Sorensen e Heidy Khlaaf, que relataram o problema em particular aos fornecedores antes de publicar uma visão geral técnica.
A falha de segurança decorre do fato de que algumas estruturas de GPU não isolam completamente a memória e um kernel em execução na máquina pode ler valores na memória local escritos por outro kernel.
Os pesquisadores da Trail of Bits explicam que um invasor só precisa executar um aplicativo de computação GPU — por exemplo, OpenCL, Vulkan, Metal — para ler os dados que um usuário deixou na memória local da GPU. “Usando estes, o invasor pode ler os dados que a vítima deixou na memória local da GPU simplesmente escrevendo um kernel da GPU que despeja a memória local não inicializada”, dizem.
O LeftoverLocals permite ainda que o invasor inicie um “ouvinte” — um kernel de GPU que lê da memória local não inicializada e pode despejar os dados em um local persistente, como a memória global. Se a memória local não for limpa, o invasor pode usar o ouvinte para ler valores deixados pelo ‘gravador’ – um programa que armazena valores na memória local.
Veja isso
Nova falha em CPUs Intel afeta desktops e servidores
Novas CPUs Intel, AMD e ARM são vulneráveis a ataques ‘SLAM’
Os pesquisadores da Trail of Bits criaram uma prova de conceito (PoC) para demonstrar LeftoverLocals e mostraram que um invasor pode recuperar 5,5 MB de dados por invocação de GPU, dependendo da estrutura da GPU. Em uma AMD Radeon RX 7900 XT alimentando o LLM llama.cpp de código aberto, um invasor pode obter até 181 MB por consulta, o que é suficiente para reconstruir as respostas do LLM com alta precisão.
Os pesquisadores da Trail of Bits descobriram o CVE-2023-4969 em setembro de 2023 e informaram o CERT/CC para ajudar a coordenar os esforços de divulgação e correção.
Esforços de mitigação estão em andamento, pois alguns fornecedores já corrigiram o problema, enquanto outros ainda estão trabalhando em uma forma de desenvolver e implementar um mecanismo de defesa.
Para ter acesso à análise completa, em inglês, da vulnerabilidade LeftoverLocals dos pesquisadores Tyler Sorensen e Heidy Khlaaf clique aqui.