Pesquisadores da empresa IOActive descobriram uma vulnerabilidade (CVE-2023-31315) nos processadores AMD que, com acesso local privilegiado ao sistema, permite modificar a configuração do SMM (Modo de Gerenciamento de Sistema, Ring -2), mesmo que o mecanismo de bloqueio SMM (SMM Lock) esteja ativado, além de potencialmente permitir a execução de código no nível SMM. O nível SMM, que possui prioridade superior ao modo de hipervisor e ao anel de zero proteção, permite acesso irrestrito a toda a memória do sistema e pode ser usado para controlar o sistema operacional.
A vulnerabilidade, codinome Sinkclose, é causada pela verificação incorreta de registradores específicos do modelo (MSR, Model Specific Register). Um espaço de páginas de memória física é vinculado ao SMM, bloqueando o acesso no nível do controlador de memória. A vulnerabilidade identificada permite contornar esse bloqueio manipulando determinados registradores MSR, cuja gravação não foi restringida, apesar da ativação do modo SMM Lock.
A exploração da vulnerabilidade pode ser realizada a partir do anel de zero proteção, onde o kernel do sistema operacional opera, e pode ser utilizada, por exemplo, para manter sua presença após a exploração de outras vulnerabilidades no sistema ou pela aplicação de métodos de engenharia social. O sistema operacional não tem capacidade de monitorar e controlar a execução de código no nível SMM, o que pode ser utilizado para modificar firmwares e implantar códigos maliciosos ou rootkits ocultos, não detectados pelo sistema operacional, além de desativar a verificação na fase de inicialização e realizar ataques a hipervisores para contornar mecanismos de verificação de integridade de ambientes virtuais.
A vulnerabilidade se manifesta em praticamente todos os chips AMD lançados desde 2006, incluindo as séries de processadores AMD EPYC (1ª a 4ª geração), Ryzen (R1000, R2000, 3000-8000, V1000, V2000, V3000), Athlon 3000 e Threadripper PRO. Atualizações de microcódigo para bloquear a vulnerabilidade já foram lançadas para as séries de CPU EPYC e Ryzen móveis e desktop. Para modelos de CPU incorporados, a atualização está prevista para ser publicada em outubro. A única maneira de remover código malicioso implantado através de um ataque ao SMM é a limpeza da memória usando um programador SPI Flash conectado fisicamente.
Fonte: opennet.ru
