Confira !!
O driver gráfico do kernel "i915" da Intel foi corrigido para um problema de software que pode levar a falhas de leitura/gravação DMAR mal-intencionadas no espaço do usuário ou, pior, é a possibilidade de o espaço do usuário obter acesso a páginas de memória aleatórias. Infelizmente, a correção de segurança vem com implicações de desempenho.
Se não estiver sendo executado com um IOMMU ativo, o CVE-2022-0330 pode levar ao acesso do espaço do usuário a páginas de memória aleatórias. Isso pode significar vazamentos de dados e/ou corrupção de memória aleatória. O problema com o driver de gráficos Intel decorre de uma liberação de TLB ausente ao liberar a memória que estava fazendo backup de um objeto de buffer de GPU para a memória do sistema.
O engenheiro da Intel Tvrtko Ursulin escreveu na lista de discussão de segurança do OSS , "A suposição falha foi que a liberação do TLB no início de cada execução da GPU no espaço do usuário é suficiente, dado o modelo de programação em que o espaço do usuário deve declarar quais intervalos de endereços de memória virtual gráfica ele acessará no início de cada execução. Porém o que não foi considerado é que o userspace pode legitimamente (é permitido no uapi) _não_ declarar esses acessos. Isso permite que o espaço do usuário continue o acesso da GPU à memória, enquanto o driver do kernel (i915) não sabe que está em uso e, portanto, tem permissão para liberar o armazenamento de backup de volta ao sistema. Se o sistema devolver essas páginas para um uso diferente, a situação de exploração pode surgir. O retorno das páginas de volta ao sistema pode ser projetado especificamente pelo software malicioso ou pode ocorrer inocentemente por meio da pressão da memória do sistema."
Embora uma correção já tenha sido incorporada ao kernel Linux principal, infelizmente a liberação extra de TLB pode afetar o desempenho da Intel. Tvrtko acrescentou: " A correção já foi desenvolvida e consiste em liberar explicitamente os TLBs antes de liberar memória de volta ao sistema para qualquer Objetos de buffer da GPU que estavam em uso da GPU. Observe que isso terá um impacto de desempenho variável dependendo da GPU específica, da carga de trabalho da GPU e da carga de trabalho geral do sistema. "
Nenhum comentário:
Postar um comentário