As CPUs atuais têm falhas de design. Specter os expôs, mas ataques como Foreshadow e agora ZombieLoad exploram fraquezas semelhantes. Essas falhas de “execução especulativa” só podem ser realmente corrigidas com a compra de uma nova CPU com proteção embutida.
Índice
Patches costumam desacelerar CPUs existentes
A indústria tem lutado freneticamente para corrigir “ataques de canal lateral” como Specter e Foreshadow , que enganam a CPU para revelar informações que não deveriam. A proteção para CPUs atuais foi disponibilizada por meio de atualizações de microcódigo, correções no nível do sistema operacional e patches para aplicativos como navegadores da web.
As correções do Spectre reduziram a velocidade dos computadores com CPUs antigas , embora a Microsoft esteja prestes a acelerá-los novamente . Corrigir esses bugs muitas vezes diminui o desempenho das CPUs existentes.
Agora, ZombieLoad levanta uma nova ameaça: para bloquear e proteger totalmente um sistema contra este ataque, você deve desativar o hyper-threading da Intel . É por isso que o Google acabou de desativar o hyperthreading nos Chromebooks Intel. Como de costume, atualizações de microcódigo de CPU, atualizações de navegador e patches de sistema operacional estão a caminho para tentar tapar o buraco. A maioria das pessoas não precisa desabilitar o hyper-threading depois que esses patches estiverem no lugar.
As novas CPUs da Intel não são vulneráveis ao ZombieLoad
Mas ZombieLoad não é um perigo em sistemas com novas CPUs Intel. Como diz a Intel , ZombieLoad “é endereçado em hardware, começando com processadores Intel® Core ™ de 8ª e 9ª geração selecionados, bem como a família de processadores escaláveis Intel® Xeon® de 2ª geração”. Os sistemas com essas CPUs modernas não estão vulneráveis a esse novo ataque.
ZombieLoad afeta apenas os sistemas Intel, mas Spectre também afetou AMD e algumas CPUs ARM. É um problema de toda a indústria.
CPUs têm falhas de projeto, permitindo ataques
Como a indústria percebeu quando Spectre mostrou sua cara feia , as CPUs modernas têm algumas falhas de design:
O problema aqui é com a “execução especulativa”. Por motivos de desempenho, as CPUs modernas executam automaticamente as instruções que acham que precisam ser executadas e, se não o fizerem, podem simplesmente retroceder e retornar o sistema ao estado anterior …
O principal problema com Meltdown e Spectre está no cache da CPU. Um aplicativo pode tentar ler a memória e, se ler algo no cache, a operação será concluída mais rapidamente. Se ele tentar ler algo que não está no cache, a conclusão será mais lenta. O aplicativo pode ver se algo é concluído de forma rápida ou lenta e, embora tudo o mais durante a execução especulativa seja limpo e apagado, o tempo que levou para realizar a operação não pode ser ocultado. Ele pode então usar essas informações para construir um mapa de qualquer coisa na memória do computador, um bit de cada vez. O armazenamento em cache acelera as coisas, mas esses ataques tiram proveito dessa otimização e a transformam em uma falha de segurança.
Em outras palavras, as otimizações de desempenho em CPUs modernas estão sendo abusadas. O código em execução na CPU – talvez até mesmo apenas o código JavaScript em execução em um navegador da web – pode aproveitar essas falhas para ler a memória fora de sua sandbox normal. Na pior das hipóteses, uma página da web em uma guia do navegador pode ler sua senha de banco on-line em outra guia do navegador.
Ou, em servidores em nuvem, uma máquina virtual pode espionar os dados em outras máquinas virtuais no mesmo sistema. Isso não deveria ser possível.
Patches de software são apenas Bandaids
Não é nenhuma surpresa que, para evitar esse tipo de ataque de canal lateral, os patches tornaram as CPUs um pouco mais lentas. A indústria está tentando adicionar verificações extras a uma camada de otimização de desempenho.
A sugestão de desabilitar o hyper-threading é um exemplo bastante típico: ao desabilitar um recurso que faz sua CPU funcionar mais rápido, você a torna mais segura. O software malicioso não pode mais explorar esse recurso de desempenho – mas não vai mais acelerar o seu PC.
Graças a muito trabalho de muitas pessoas inteligentes, os sistemas modernos foram razoavelmente protegidos de ataques como o Spectre sem muita lentidão. Mas patches como esses são apenas bandaids: essas falhas de segurança precisam ser corrigidas no nível de hardware da CPU.
As correções no nível do hardware fornecerão mais proteção – sem desacelerar a CPU. As organizações não precisam se preocupar se têm a combinação certa de atualizações de microcódigo (firmware), patches de sistema operacional e versões de software para manter seus sistemas seguros.
Como uma equipe de pesquisadores de segurança colocou em um artigo de pesquisa , esses “não são meros bugs, mas, na verdade, estão na base da otimização”. Os designs de CPU terão que mudar.
Intel e AMD estão criando consertos em novas CPUs
Correções em nível de hardware não são apenas teóricas. Os fabricantes de CPU estão trabalhando duro em mudanças arquitetônicas que irão corrigir esse problema no nível de hardware da CPU. Ou, como disse a Intel em 2018, a Intel estava “ aprimorando a segurança no nível do silício ” com CPUs de 8ª geração:
Reprojetamos partes do processador para introduzir novos níveis de proteção por meio do particionamento que protegerá contra as variantes 2 e 3. [Espectro]. Pense neste particionamento como “paredes de proteção” adicionais entre aplicativos e níveis de privilégio do usuário para criar um obstáculo para o mal atores.
A Intel anunciou anteriormente que suas CPUs de 9ª geração incluem proteção adicional contra Foreshadow e Meltdown V3. Essas CPUs não são afetadas pelo ataque ZombieLoad recentemente revelado, então essas proteções devem estar ajudando.
A AMD também está trabalhando em mudanças, embora ninguém queira revelar muitos detalhes. Em 2018, a CEO da AMD, Lisa Su, disse : “A longo prazo, incluímos mudanças em nossos núcleos de processador futuros, começando com nosso design Zen 2, para abordar ainda mais explorações potenciais semelhantes a Espectro.
Para alguém que deseja o desempenho mais rápido sem nenhum patch retardando as coisas – ou apenas uma organização que deseja ter certeza de que seus servidores estão o mais protegidos possível – a melhor solução será comprar uma nova CPU com essas correções baseadas em hardware. As melhorias em nível de hardware também evitarão outros ataques futuros antes que sejam descobertos.
Obsolescência não planejada
Embora a imprensa às vezes fale sobre “obsolescência planejada” – um plano da empresa de que o hardware ficará desatualizado, então você terá que substituí-lo – isso é obsolescência não planejada. Ninguém esperava que tantas CPUs precisassem ser substituídas por razões de segurança.
O céu não está caindo. Todos estão tornando mais difícil para os invasores explorarem bugs como o ZombieLoad. Você não precisa sair correndo e comprar uma nova CPU agora. Mas uma correção completa que não prejudique o desempenho exigirá um novo hardware.