Os pesquisadores de segurança Omri Misgav e Udi Yavo, da enSilo, descobriram uma nova técnica chamada Turning Tables, que consegue contornar as medidas de proteção do kernel do Windows ao explorar as tabelas de páginas do sistema. No entanto, acredita-se que a maioria dos sistemas operacionais modernos - incluindo Linux e macOS - possam estar, também, vulneráveis.

Uma Table page é uma estrutura de dados utilizado pelo sistema de memória virtual que realiza um mapeamento entre os endereços virtuais e os físicos. Desde os primórdios da computação, ao solicitarmos a abertura de um arquivo ou de um programa armazenado em disco, este é primeiramente copiado para a memória RAM e, então, lido ou executado, pois o acesso à memória é mais rápido do que o acesso ao disco rígido.

Os sistemas operacionais modernos, no entanto, armazenam os processos em endereços virtuais e reservam os físicos ao hardware. Para contornar o fato de que a memória RAM é limitada, o kernel cria "páginas de código compartilhadas", as quais permitem que múltiplos processos armazenem o mesmo código, e as chamam quando são necessárias, como em um carrossel.

A técnica descoberta pelos pesquisadores depende da criação de códigos maliciosos que alteram essas "páginas de códigos compartilhadas" de maneira negativa para afetar a execução de outros processos. Como exemplo do ataque, seria possível causar uma falha de privilege escalation - fazendo, por exemplo, que um programa iniciado por um usuário comum obtenha privilégios de root, ou removê-lo de um ambiente de sandboxing.

Os pesquisadores testaram a técnica apenas no sistema Windows e afirmam que a mesma pode contornar quase todas as medidas de proteção presentes no sistema. No entanto, eles afirmam que, como o conceito de Page Tables também é utilizado pela Apple e pelo Linux, em teoria esses sistemas também poderiam estar vulneráveis, apesar de testes nesses ambientes não terem sido realizados.

Uma demonstração da técnica pode ser vista neste vídeo, a partir das 8h 57min 26s.

Fonte: Bleeping Computer.