Em um comunicado ao WIRED, a AMD enfatizou a dificuldade de explorar o Sinkclose: Para aproveitar a vulnerabilidade, um hacker precisa já possuir acesso ao kernel de um computador, o núcleo de seu sistema operacional. A AMD compara a técnica Sinkhole a um método para acessar os cofres de um banco depois de já ter evitado seus alarmes, os guardas e a porta do cofre.
Nissim e Okupski respondem que, embora explorar o Sinkclose exija acesso ao nível do kernel de uma máquina, tais vulnerabilidades são expostas em Windows e Linux praticamente todos os meses. Eles argumentam que hackers sofisticados patrocinados pelo estado, do tipo que podem se aproveitar do Sinkclose, provavelmente já possuem técnicas para explorar essas vulnerabilidades, conhecidas ou desconhecidas. “As pessoas têm exploits de kernel agora para todos esses sistemas,” diz Nissim. “Eles existem e estão disponíveis para os atacantes. Este é o próximo passo.”
A técnica Sinkclose de Nissim e Okupski funciona explorando uma característica obscura dos chips da AMD conhecida como TClose. Em máquinas baseadas na AMD, uma salvaguarda conhecida como TSeg impede que os sistemas operacionais dos computadores escrevam em uma parte protegida da memória destinada a ser reservada para o Modo de Gerenciamento do Sistema conhecida como Memória de Acesso Aleatório do Gerenciamento do Sistema ou SMRAM. No entanto, a característica TClose da AMD foi projetada para permitir que os computadores permaneçam compatíveis com dispositivos mais antigos que usam os mesmos endereços de memória que o SMRAM, remapeando outra memória para esses endereços de SMRAM quando habilitado. Nissim e Okupski descobriram que, apenas com o nível de privilégios do sistema operacional, eles poderiam usar essa característica de remapeamento TClose para enganar o código SMM para buscar dados com os quais eles mexeram, de maneira que lhes permitisse redirecionar o processador e fazê-lo executar seu próprio código no mesmo nível altamente privilegiado do SMM.
“Eu acho que é o bug mais complexo que já explorei,” diz Okupski.
Nissim e Okupski, ambos especialistas em segurança de código de baixo nível como o firmware do processador, dizem que decidiram investigar a arquitetura da AMD dois anos atrás, simplesmente porque sentiram que não havia recebido escrutínio suficiente em comparação com a Intel, mesmo com sua participação de mercado aumentando. Eles descobriram o caso crítico de TClose que possibilitou o Sinkclose, dizem, apenas lendo e relendo a documentação da AMD. “Eu acho que li a página onde estava a vulnerabilidade cerca de mil vezes,” diz Nissim. “E então, na milésima e primeira, eu notei.” Eles alertaram a AMD para a falha em outubro do ano passado, dizem, mas esperaram quase 10 meses para dar à AMD mais tempo para preparar uma correção.
Para os usuários que buscam se proteger, Nissim e Okupski dizem que, para máquinas Windows – provavelmente a maioria dos sistemas afetados – eles esperam que as correções para o Sinkclose sejam integradas às atualizações compartilhadas pelos fabricantes de computadores com a Microsoft, que as incluirá em futuras atualizações do sistema operacional. As correções para servidores, sistemas embarcados e máquinas Linux podem ser mais fragmentadas e manuais; para as máquinas Linux, dependerá em parte da distribuição do Linux que um computador tem instalado.
Nissim e Okupski dizem que concordaram com a AMD em não publicar nenhum código de prova de conceito para sua exploração do Sinkclose por vários meses, para dar mais tempo para o problema ser corrigido. Mas eles argumentam que, apesar de qualquer tentativa da AMD ou de outros de minimizar o Sinkclose como muito difícil de explorar, não deve impedir os usuários de aplicar correções o mais rápido possível. Hackers sofisticados podem já ter descoberto sua técnica – ou podem descobrir como fazê-lo depois que Nissim e Okupski apresentarem suas descobertas na Defcon.
Mesmo que o Sinkclose exija um acesso relativamente profundo, os pesquisadores da IOActive alertam que o nível de controle muito mais profundo que ele oferece significa que os alvos em potencial não devem esperar para implementar qualquer correção disponível. “Se a base estiver quebrada,” diz Nissim, “então a segurança de todo o sistema está comprometida.