Os processadores de servidores modernos incluem um ambiente de execução confiável (TEE) para tratar informações especialmente sensíveis. Existem várias implementações de TEE, mas duas são as mais relevantes para esta discussão: Intel Software Guard eXtensions (SGX) e AMD Secure Encrypted Virtualization (SEV). Quase de forma simultânea, duas equipes de pesquisa, uma nos EUA e outra na Europa, descobriram de forma independente métodos muito semelhantes (ainda que distintos) para explorar essas duas implementações. O objetivo era acessar dados criptografados mantidos na memória de acesso aleatório. Os artigos científicos detalhando esses resultados foram publicados com apenas alguns dias de diferença:
- WireTap: Breaking Server SGX via DRAM Bus Interposition é o trabalho dos pesquisadores dos EUA, que descreve um ataque bem‑sucedido ao sistema Intel Software Guard eXtensions (SGX). Eles conseguiram isso interceptando a troca de dados entre o processador e o módulo de memória RAM DDR4.
- Em Battering RAM, cientistas da Bélgica e do Reino Unido também comprometeram com sucesso o Intel SGX, bem como o sistema de segurança comparável da AMD, SEV-SNP, manipulando o processo de transferência de dados entre o processador e o módulo de RAM DDR4.
Hacking de um TEE
As duas tecnologias mencionadas, Intel SGX e AMD SEV, foram projetadas para proteger dados mesmo quando o sistema que os processa está completamente comprometido. Por isso, os pesquisadores partiram do pressuposto de que o invasor teria liberdade total de ação: acesso completo tanto ao software quanto ao hardware do servidor, bem como aos dados confidenciais que procura, por exemplo, em uma máquina virtual em execução nesse servidor.
Nesse cenário, certas limitações do Intel SGX e do AMD SEV tornam‑se críticas. Um exemplo é o uso de criptografia determinística: um algoritmo em que uma sequência específica de dados de entrada produz sempre a mesma sequência exata de dados criptografados. Como o invasor tem controle total sobre o software, ele pode inserir dados arbitrários no TEE. Se o invasor também obtivesse acesso à informação criptografada resultante, a comparação entre esses dois conjuntos de dados permitiria calcular a chave privada usada. O que, por sua vez, possibilitaria descriptografar outros dados protegidos pelo mesmo mecanismo.
O desafio, porém, é como ler os dados criptografados. Estes residem na RAM e apenas o processador tem acesso direto a ela. O malware teórico apenas vê a informação original antes dela ser criptografada na memória. Esse é o principal obstáculo, cuja abordagem foi feita de maneiras distintas pelos pesquisadores. Uma solução direta consiste na interceptação a nível de hardware dos dados transmitidos do processador para o módulo de RAM.
Como isso funciona? O módulo de memória é removido e reinserido usando um interposer, que também é conectado a um dispositivo especializado: um analisador lógico. O analisador lógico intercepta os fluxos de dados que trafegam por todas as linhas de dados e de endereço até o módulo de memória. Isso é bastante complexo. Um servidor normalmente tem muitos módulos de memória, de modo que o atacante precisa forçar o processador a escrever a informação-alvo especificamente na faixa desejada. Em seguida, os dados brutos capturados pelo analisador lógico devem ser reconstruídos e analisados.
Mas os problemas não terminam aí. Módulos de memória modernos trocam dados com o processador em velocidades altíssimas, executando bilhões de operações por segundo. Interceptar um fluxo de dados em alta velocidade exige equipamentos de ponta. O hardware utilizado para comprovar a viabilidade desse tipo de ataque em 2021 custava centenas de milhares de dólares.
As características do WireTap
Os pesquisadores dos EUA por trás do WireTap conseguiram reduzir o custo do ataque para pouco menos de mil dólares. A configuração usada para interceptar os dados do módulo de memória DDR4 era a seguinte:

Sistema de testes para interceptar a troca de dados entre o processador e o módulo de memória Fonte
Metade do orçamento foi gasta em um analisador lógico antigo, com quase 25 anos de uso, comprado em um leilão online. O restante cobriu os conectores necessários, e o interposer (o adaptador onde o módulo de memória-alvo foi inserido) foi soldado manualmente pelos próprios autores. Uma configuração obsoleta como essa não poderia, em tese, capturar o fluxo de dados na sua velocidade normal. No entanto, os pesquisadores fizeram uma descoberta importante: conseguiram reduzir a velocidade de operação do módulo de memória. Em vez das velocidades efetivas padrão de DDR4 (entre 1600 e 3200 megahertz) conseguiram limitar a operação a 1333 megahertz.
A partir daí, os passos são… bem, não exatamente simples, mas claros:
- Garantir que os dados do processo-alvo sejam escritos no módulo de memória comprometido e, então, interceptá‑los ainda criptografados nesse estágio.
- Inserir um conjunto de dados conhecido no Intel SGX para que sejam criptografados.
- Interceptar a versão criptografada do dado conhecido, comparar o texto em claro conhecido com o texto criptografado resultante e calcular a chave de criptografia.
- Descriptografar os dados previamente capturados pertencentes ao processo-alvo.
Em resumo, o trabalho do WireTap não altera fundamentalmente nossa compreensão das limitações inerentes ao Intel SGX. O que ele demonstra é que o ataque pode ficar drasticamente mais barato.
As características do Battering RAM
Em vez da abordagem direta de interceptação de dados, os pesquisadores da KU Leuven (Bélgica) e seus colegas do Reino Unido buscaram um método mais sutil e elegante para acessar informações criptografadas. Mas, antes de entrarmos nos detalhes, vamos ver o componente de hardware e compará‑lo com o trabalho da equipe americana:

Interposer do módulo de memória usado no Battering RAM Fonte
Em lugar de um emaranhado de fios e de um analisador de sinais volumoso, essa configuração utiliza uma placa simples projetada do zero, na qual o módulo de memória-alvo é inserido. A placa é controlada por um microcomputador Raspberry Pi Pico barato. O orçamento de hardware é insignificante: apenas 50 euros! Além disso, ao contrário do ataque WireTap, o Battering RAM pode ser executado de forma encoberta; não é necessário acesso físico contínuo ao servidor. Depois que o módulo de memória modificado é instalado, os dados necessários podem ser roubados remotamente.
O que exatamente essa placa faz? Os pesquisadores descobriram que, ao aterrar apenas duas linhas de endereço no momento certo (linhas que determinam onde a informação é escrita ou lida), eles conseguiam criar uma situação de espelhamento de dados. Isso faz com que a informação seja escrita em células de memória às quais o invasor tem acesso. A placa interposer funciona como um par de interruptores simples controlados pelo microcomputador Raspberry Pi. Embora manipular contatos em hardware energizado normalmente leve a travamentos no sistema ou à corrupção de dados, os pesquisadores obtiveram uma operação estável ao desconectar e reconectar as linhas de endereço apenas nos instantes precisos necessários.
Esse método deu aos autores a capacidade de escolher onde seus dados seriam gravados. Crucialmente, isso significa que nem sequer precisaram computar a chave de criptografia! Primeiro, capturaram a informação criptografada do processo-alvo. Em seguida, executaram seu próprio programa dentro da mesma faixa de memória e solicitaram ao sistema TEE que descriptografasse a informação previamente capturada. Essa técnica permitiu hackear não só o Intel SGX, mas também o AMD SEV. Além disso, esse controle sobre a gravação de dados ajudou a contornar a extensão de segurança da AMD chamada SEV‑SNP. Essa extensão, que usa Secure Nested Paging, foi projetada para proteger a máquina virtual contra comprometimento ao impedir modificações de dados na memória. Em teoria, contornar o SEV‑SNP permite que invasores não só leiam dados criptografados, mas também injetem código malicioso numa máquina virtual comprometida.
A relevância de ataques físicos em infraestrutura de servidores
Fica claro que, embora a aplicação prática desses ataques seja possível, é pouco provável que eles ocorram na prática. O valor dos dados roubados precisaria ser extremamente alto para justificar manipulações no nível de hardware. Pelo menos, essa é a posição adotada tanto pela Intel quanto pela AMD em relação às suas soluções de segurança: ambas as fabricantes afirmaram aos pesquisadores que ataques físicos estão fora do escopo de seu modelo de segurança. No entanto, tanto a equipe americana quanto a europeia demonstraram que o custo desses ataques não é tão elevado quanto se acreditava anteriormente. Isso potencialmente amplia a lista de invasores dispostos a explorar vulnerabilidades tão complexas.
Os ataques propostos, contudo, apresentam restrições próprias. Como já mencionamos, o roubo de informações foi realizado em sistemas equipados com módulos de memória padrão DDR4. O padrão mais recente, DDR5, finalizado em 2020, ainda não foi comprometido, nem mesmo para fins de pesquisa. Isso se deve tanto à arquitetura revisada dos módulos quanto ao aumento de suas velocidades de operação. Ainda assim, é altamente provável que pesquisadores também descubram vulnerabilidades no DDR5. E isso é positivo: a segurança declarada dos sistemas TEE precisa ser regularmente submetida a auditorias independentes. Caso contrário, pode-se chegar a um ponto em que um sistema de proteção supostamente confiável se torne, inesperadamente, completamente inútil.
RAM
Dicas