Os processadores de computador têm uma grande falha de design e todo mundo está lutando para consertá-la. Apenas uma das duas falhas de segurança pode ser corrigida, e os patches tornarão os PCs (e Macs) com chips Intel mais lentos.
Atualização : uma versão anterior deste artigo afirmava que essa falha era específica dos chips Intel, mas essa não é toda a história. Na verdade, existem duas vulnerabilidades principais aqui, agora apelidadas de “Meltdown” e “Spectre”. Meltdown é amplamente específico para processadores Intel e afeta todos os modelos de CPU das últimas décadas. Adicionamos mais informações sobre esses dois bugs e a diferença entre eles no artigo abaixo.
Índice
Spectre é uma “falha fundamental de design” que existe em todas as CPUs do mercado – incluindo as da AMD e ARM, bem como da Intel. Atualmente não há correção de software, e provavelmente exigirá um redesenho completo de hardware para CPUs em toda a placa – embora, felizmente, seja bastante difícil de explorar, de acordo com pesquisadores de segurança. É possível se proteger contra ataques específicos de Spectre, e os desenvolvedores estão trabalhando nisso, mas a melhor solução será um redesenho do hardware da CPU para todos os chips futuros.
O derretimento basicamente torna Spectre pior, tornando a falha subjacente do núcleo muito mais fácil de explorar. É essencialmente uma falha adicional que afeta todos os processadores Intel fabricados nas últimas décadas. Também afeta alguns processadores ARM Cortex-A de última geração, mas não afeta os chips AMD. O Meltdown está sendo corrigido nos sistemas operacionais de hoje.
Mas como funcionam essas falhas?
Os programas em execução no seu computador são executados com diferentes níveis de permissões de segurança. O kernel do sistema operacional – o kernel do Windows ou do Linux, por exemplo – tem o nível mais alto de permissões porque executa o show. Os programas de desktop têm menos permissões e o kernel restringe o que eles podem fazer. O kernel usa os recursos de hardware do processador para ajudar a impor algumas dessas restrições, porque é mais rápido fazer isso com hardware do que com software.
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, caso não o façam, podem simplesmente retroceder e retornar o sistema ao estado anterior. No entanto, uma falha na Intel e em alguns processadores ARM permite que os processos executem operações que normalmente não seriam capazes de executar, pois a operação é realizada antes que o processador se preocupe em verificar se deve ter permissão para executá-la ou não. Esse é o bug Meltdown.
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.
Portanto, na pior das hipóteses, o código JavaScript em execução no navegador da web poderia efetivamente ler a memória à qual não deveria ter acesso, como informações privadas mantidas em outros aplicativos. Provedores de nuvem como Microsoft Azure ou Amazon Web Services , que hospedam vários softwares de empresas diferentes em máquinas virtuais diferentes no mesmo hardware, estão particularmente em risco. O software de uma pessoa poderia, em teoria, espionar coisas na máquina virtual de outra empresa. É uma falha na separação entre os aplicativos. Os patches para Meltdown significam que esse ataque não será tão fácil de realizar. Infelizmente, colocar essas verificações extras significa que algumas operações serão mais lentas no hardware afetado.
Os desenvolvedores estão trabalhando em patches de software que tornam os ataques Spectre mais difíceis de executar. Por exemplo, o novo recurso de isolamento de sites do Google Chrome ajuda a proteger contra isso, e a Mozilla já fez algumas mudanças rápidas no Firefox . A Microsoft também fez algumas alterações para ajudar a proteger o Edge e o Internet Explorer no Windows Update que agora está disponível.
Se você estiver interessado nos detalhes profundos de baixo nível sobre Meltdown e Spectre, leia a explicação técnica da equipe Project Zero do Google , que descobriu os bugs no ano passado. Mais informações também estão disponíveis no site MeltdownAttack.com .
Atualização : em 9 de janeiro, a Microsoft divulgou algumas informações sobre o desempenho do patch . De acordo com a Microsoft, o Windows 10 em PCs da era 2016 com Skylake, Kabylake ou processadores Intel mais recentes mostram “lentidão de um dígito” que a maioria dos usuários não deve notar. O Windows 10 em PCs da era 2015 com Haswell ou uma CPU mais antiga podem sofrer lentidão maior, e a Microsoft “espera que alguns usuários notem uma diminuição no desempenho do sistema”.
Os usuários do Windows 7 e 8 não têm tanta sorte. A Microsoft diz que “espera que a maioria dos usuários perceba uma diminuição no desempenho do sistema” ao usar o Windows 7 ou 8 em um PC da era 2015 com Haswell ou uma CPU mais antiga. Não apenas o Windows 7 e 8 usam CPUs mais antigas que não podem executar o patch com tanta eficiência, mas “o Windows 7 e o Windows 8 têm mais transições de kernel do usuário por causa de decisões de design legado, como toda a renderização de fonte ocorrendo no kernel” , e isso também retarda as coisas.
A Microsoft planeja realizar seus próprios benchmarks e lançar mais detalhes no futuro, mas não sabemos exatamente o quanto o patch do Meltdown afetará o uso diário do PC ainda. Dave Hansen, um desenvolvedor de kernel Linux que trabalha na Intel, escreveu originalmente que as mudanças feitas no kernel Linux afetarão tudo. Segundo ele, a maioria das cargas de trabalho está tendo uma desaceleração de um dígito, com uma desaceleração de cerca de 5%sendo típico. O pior cenário foi uma desaceleração de 30% em um teste de rede, portanto, varia de tarefa para tarefa. Esses são números para Linux, no entanto, eles não se aplicam necessariamente ao Windows. A correção torna as chamadas do sistema mais lentas, então as tarefas com muitas chamadas do sistema, como compilar software e executar máquinas virtuais, provavelmente serão as que mais ficarão lentas. Mas todo software usa algumas chamadas de sistema.
Atualização : Desde 5 de janeiro, TechSpot e Guru3D executaram alguns benchmarks para Windows. Ambos os sites concluíram que os usuários de desktop não têm muito com que se preocupar. Alguns jogos de PC apresentam uma pequena desaceleração de 2% com o patch, o que está dentro da margem de erro, enquanto outros parecem ter desempenho idêntico. Renderização 3D, software de produtividade, ferramentas de compactação de arquivo e utilitários de criptografia não parecem afetados. No entanto, benchmarks de leitura e gravação de arquivo mostram diferenças perceptíveis. A velocidade de leitura rápida de uma grande quantidade de arquivos pequenos caiu cerca de 23% nos benchmarks do Techspot, e Guru3D encontrou algo semelhante. Por outro lado, o Hardware do Tom encontraram apenas uma queda média de 3,21% no desempenho com um teste de armazenamento de aplicativos do consumidor e argumentaram que os “benchmarks sintéticos” mostrando quedas mais significativas na velocidade não representam o uso no mundo real.
Os computadores com processador Intel Haswell ou mais recente possuem um recurso PCID (Process-Context Identifiers) que ajudará o patch a ter um bom desempenho. Computadores com CPUs Intel mais antigas podem ter uma redução maior na velocidade. Os benchmarks acima foram realizados em CPUs Intel modernas com PCID, então não está claro como as CPUs Intel mais antigas irão se comportar.
A Intel diz que a desaceleração “não deve ser significativa” para o usuário médio de computador, e até agora isso parece verdade, mas certas operações viram uma desaceleração. Para a nuvem, Google , Amazon e Microsoft basicamente disseram a mesma coisa: para a maioria das cargas de trabalho, eles não viram um impacto significativo no desempenho após o lançamento dos patches. A Microsoft disse que “um pequeno conjunto de clientes [Microsoft Azure] pode sofrer algum impacto no desempenho da rede”. Essas declarações deixam espaço para algumas cargas de trabalho verem lentidões significativas. A Epic Games culpou o patch Meltdown por causar problemas no servidor com seu jogo Fortnite e postou um gráfico mostrando um grande aumento no uso da CPU em seus servidores em nuvem após a instalação do patch.
Mas uma coisa é certa : seu computador definitivamente não está ficando mais rápido com este patch. Se você tiver uma CPU Intel, ele só pode ficar mais lento – mesmo que seja por uma pequena quantidade.
Algumas atualizações para corrigir o problema Meltdown já estão disponíveis. A Microsoft lançou uma atualização de emergência para as versões com suporte do Windows por meio do Windows Update em 3 de janeiro de 2018, mas ainda não chegou a todos os PCs. O Windows Update que resolve o Meltdown e adiciona algumas proteções contra Spectre é denominado KB4056892 .
A Apple já corrigiu o problema com o macOS 10.13.2, lançado em 6 de dezembro de 2017. Chromebooks com Chrome OS 63, que foi lançado em meados de dezembro, já estão protegidos. Patches também estão disponíveis para o kernel Linux.
Além disso, verifique se o seu PC tem atualizações de BIOS / UEFI disponíveis . Enquanto a atualização do Windows corrigiu o problema Meltdown, as atualizações do microcódigo da CPU da Intel fornecidas por meio de um UEFI ou atualização do BIOS são necessárias para habilitar totalmente a proteção contra um dos ataques Spectre. Você também deve atualizar seu navegador – como de costume – pois os navegadores também estão adicionando algumas proteções contra Spectre.
Atualização : Em 22 de janeiro, a Intel anunciou que os usuários deveriam parar de implantar as atualizações de firmware UEFI iniciais devido a “reinicializações acima do esperado e outros comportamentos imprevisíveis do sistema”. A Intel disse que você deve esperar por um patch de firmware UEFI final que foi devidamente testado e não causará problemas no sistema. Em 20 de fevereiro, a Intel lançou atualizações estáveis de microcódigo para Skylake, Kaby Lake e Coffee Lake – as plataformas Intel Core de 6ª, 7ª e 8ª gerações. Os fabricantes de PC devem começar a lançar novas atualizações de firmware UEFI em breve.
Embora um impacto no desempenho pareça ruim, recomendamos fortemente a instalação desses patches de qualquer maneira. Os desenvolvedores de sistema operacional não fariam mudanças tão massivas, a menos que fosse um bug muito ruim com consequências graves.
O patch de software em questão consertará a falha Meltdown, e alguns patches de software podem ajudar a mitigar a falha Spectre. Mas o Specter provavelmente continuará afetando todas as CPUs modernas – pelo menos de alguma forma – até que um novo hardware seja lançado para consertá-lo. Não está claro como os fabricantes vão lidar com isso, mas enquanto isso, tudo que você pode fazer é continuar usando seu computador – e se consolar com o fato de que Spectre é mais difícil de explorar e um tanto mais preocupante com a computação em nuvem do que os usuários finais com PCs de mesa.
Crédito de imagem: Intel , VLADGRIN /Shutterstock.com.
Muitos aplicativos de limpeza estão disponíveis para Windows ao longo dos anos, mas hoje em…
Seu PlayStation 4 está congelado? Seus jogos favoritos continuam travando? Reiniciar seu PS4 pode resolver…
A popularidade das mensagens de texto significou aprender uma forma totalmente nova de comunicação. Você…
A foto dos "Pilares da Criação" tirada pelo Telescópio Espacial Hubble é uma das fotos…
O Proton Drive saiu de seu estágio beta há algumas semanas, mas o aplicativo real…
Para ver suas fotos mais de perto ou para uma edição precisa , você pode…