Meltdown e Spectre

Bugs em processadores modernos permitem o vazamento de senhas e outros dados confidenciais.

Embora ambos os ataques sejam baseados no mesmo princípio geral, o Meltdown permite que programas mal-intencionados obtenham acesso a partes mais privilegiadas da memória de um computador, enquanto o Spectre rouba dados da memória de outras aplicações em execução em uma máquina. E enquanto os pesquisadores dizem que o Meltdown está limitado aos chips da Intel, afirmam que também verificaram ataques de espectro nos processadores AMD e ARM.

Segundo a publicação no blog do Google, a brecha foi descoberta pelo Project Zero, ação da companhia que visa buscar vulnerabilidades em serviços e produtos de outras empresas para torná-los mais seguros. A falha foi reportada para a AMD, para a Intel e também para a ARM no dia 1º de junho de 2017.

Meltdown e Spectre exploram vulnerabilidades críticas em processadores modernos. Esses erros de hardware permitem que os programas roubem os dados que estão atualmente processados ​​no computador. Enquanto os programas geralmente não tem permissão para ler dados de outros programas, um programa malicioso pode explorar as vulnerabilidades Meltdown e Spectre para ler dados armazenados na memória de outros programas em execução. Isso pode incluir suas senhas armazenadas em um gerenciador ou navegador de senha, suas fotos pessoais, e-mails, mensagens instantâneas e até mesmo documentos críticos para o negócio.

Meltdown e Spectre trabalham em computadores pessoais, dispositivos móveis e na nuvem. Dependendo da infra-estrutura do provedor da nuvem, pode ser possível roubar dados de outros clientes.

 

Meltdown

Meltdown quebra o isolamento mais fundamental entre as aplicações do usuário e o sistema operacional. Este ataque permite que um programa acesse a memória e, portanto, também os segredos, de outros programas e do sistema operacional.

Se o seu computador tiver um processador vulnerável e executar um sistema operacional sem o PATCH, não é seguro trabalhar com informações confidenciais pois haverá a possibilidade de vazamento da informação. Isso se aplica tanto aos computadores pessoais quanto à infra-estrutura da nuvem.

 

Exemplo 1

 

Exemplo 2

Quem reportou o Meltdown?
Meltdown foi descoberto e relatado de forma independente por três equipes:

Jann Horn (Google Project Zero),
Werner Haas, Thomas Prescher (Cyberus Technology),
Daniel Gruss, Moritz Lipp, Stefan Mangard, Michael Schwarz(Graz University of Technology)

 

Spectre

O Spectre quebra o isolamento entre diferentes aplicativos. Ele permite que um invasor engane programas sem erros, que seguem as melhores práticas, para escorrer seus segredos. Na verdade, as verificações de segurança das referidas melhores práticas realmente aumentam a superfície de ataque e podem tornar as aplicações mais suscetíveis ao Spectre.

Quem reportou o Meltdown?
Meltdown foi descoberto e relatado de forma independente por duas pessoas:

Jann Horn (Google Project Zero) e
Paul Kocher em colaboração com, em ordem alfabética, Daniel Genkin (University of Pennsylvania e University of Maryland), Mike Hamburg (Rambus), Moritz Lipp (Graz University of Technology), e Yuval Yarom (University of Adelaide e Data61)

 

 

Desempenho e impacto comercial

Os sistemas que recebem essas atualizações de segurança podem sofrer um impacto no desempenho, embora atualmente seja difícil dizer até que ponto. Se você estiver em uma função operacional, é importante que você avalie o desempenho do sistema depois de ter aplicado os patches do SO para determinar se isso afetará seus clientes.

Em um nível executivo, considere que, no pior dos casos, o desempenho do sistema pode degradar 30% em todo o quadro. Se você estiver executando seus sistemas com 90% de capacidade e suas margens financeiras são finas, você pode encontrar-se em uma situação de crise que resulte em elevar os preços ou fazer outras mudanças para se adaptarem às CPUs que não mais oferecem o desempenho ao qual seu modelo comercial se tornou acostumado. É difícil quantificar as mudanças de desempenho até que alguém faça o trabalho para produzir benchmarks precisos e precisos.

 

Impacto no Design do Hardware

Meltdown e Spectre são uma nova classe de vulnerabilidade, tanto em sua sofisticação e impacto. Eles usam ataques de tempo para explorar falhas no hardware subjacente que usamos para a maioria de nossos aplicativos hoje, tanto na nuvem como em desktops e outros dispositivos.

Uma correção completa para Meltdown e Spectre exigirá uma substituição da CPU. Como CERT diz, a solução é “Substituir a Hardware da CPU”.

É inevitável que outras vulnerabilidades de hardware como essas, com grande impacto que exigem mudanças de hardware, surgirão nos próximos anos. Não podemos comprar hardware novo sempre que isso acontecer. Portanto, uma correção de longo prazo pode exigir que nós inventemos uma maneira de corrigir dinamicamente o hardware no qual nosso software depende.

 

PoC – Exploits para Prova de conceito do Spectre

https://github.com/Eugnis/spectre-attack

https://pastebin.com/CF91uGTG

https://raw.githubusercontent.com/HarsaroopDhillon/SpectreExploit/master/Test1.c

 

Referências:

https://spectreattack.com/

https://googleprojectzero.blogspot.com.br/2018/01/reading-privileged-memory-with-side.html

The Impact of Meltdown & Spectre Vulnerabilities