Nossas
Publicações

A vulnerabilidade das CPU’s

Meltdow

por Pedro Milanez:

Recentemente, foi divulgado uma nova falha de segurança presente em processadores Intel, AMD e ARM.

A vulnerabilidade, permite que um software tenha acesso a áreas protegidas da memória do kernel – núcleo do sistema operacional – e do usuário expondo informações sensíveis.

Na quarta-feira, dia 3, os pesquisadores de segurança do Google divulgaram um estudo detalhado sobre essas falhas, descrevendo como Meltdown e Spectre. Elas estão vindo a público somente agora, mas foram descobertas e reportadas para a Intel, a AMD e a ARM em junho de 2017.

O Meltdown, a princípio só atinge processadores Intel e consiste em quebrar um mecanismo de segurança que previne aplicativos de acessarem a memória reservada ao kernel do sistema operacional.

Com áreas da memória do kernel – a ponte entre os software e o hardware da máquina – exposta, a falha é considerada grave. Em teoria, ela permite que um aplicativo comum (inclusive um malware ou até mesmo um código em JavaScript rodando no navegador) tenha acesso a senhas e outras informações restritas.

Meltdown in Action: Dumping memory https://www.youtube.com/watch?v=bReA1dvGJ6Y

A proporção piora uma vez que todos os processadores Intel desde 1995 (com exceção dos Intel Itanium e Intel Atom produzidos antes de 2013) são vulneráveis ao ataque, ou seja, desktops, laptops e servidores do dia a dia.

A correção para a falha já está sendo implementada por software em todos os sistemas operacionais do mercado. No entanto, como o patch consiste em isolar completamente os processos de usuários e a memória do kernel, é possível que haja redução no desempenho entre 5 e 30%. Em um contexto onde servidores trabalham constante com carga elevadas, qualquer perda de desempenho afetará em grande escala todas as indústrias.

Cloud providers como AWS, Azure e Google Cloud já estão aplicando os patches em seus sistemas e máquinas virtuais e impactos já podem ser sentidos. Um estudo feito com o banco de dados PostgreSQL demonstrou uma perda de performance significativa em processos de indexação de tabelas.

O Spectre é uma falha mais difícil de corrigir, porque, para ser totalmente resolvida, exigiria que os chips fossem reprojetados. No entanto, as empresas já trabalham para mitigar o problema por software.

O nome do Spectre está relacionado à causa do problema, que é a execução especulativa (speculative execution, em inglês). Para acelerar o desempenho dos softwares, os processadores modernos tentam adivinhar qual código será executado em seguida. Caso a previsão esteja errada, o resultado é simplesmente descartado; caso esteja certa, há uma economia de tempo.

No entanto, a tecnologia também pode induzir um processador a executar uma operação “adivinhada” que não seria executada em condições normais. Isso permite que um aplicativo vaze uma informação confidencial para outro aplicativo, quebrando vários mecanismos de segurança de softwares, como o sandbox do Chrome, que separa as abas de sites e o resto do sistema operacional, por exemplo.

Com informações: The New York Times, The Verge, ZDNet, Axios e Tecnoblog

Pedro Milanez é ex-CTO da Beblue (www.beblue.com.br), responsável por tecnologia e produto. Foi o primeiro funcionário do Nubank onde foi responsável pelo produto de mobile e pela operação do cartão de crédito. Formado em Sistemas de Informação pela PUC-Rio, abriu a primeira empresa do Rio de Janeiro de desenvolvimento para iOS e Android.