Vocês já devem ter visto que um zero day nos atingiu, e dessa vez foi no hardware, mais especificamente nos chips Intel, mas tudo indica também que afeta chips AMD e ARM.Praticamente todo mundo está vulnerável. Os kernels do Linux, Mac e Windows estão vulneráveis. Basicamente o problema permite que código rodando em user mode possa acessar memória de kernel mode.

O que está acontecendo

Vou tentar compilar aqui o que já levantei e que parece que vale a pena ler:

Explicação de alto nível das vulnerabilidades Meltdown e Spectre, do Beta News: https://betanews.com/2018/01/03/meltdown-spectre-apocalypse/

Explicação de médio nível, do The Register: https://www.theregister.co.uk/2018/01/02/intel_cpu_design_flaw/

Explicação de baixo nível, do Google Project Zero: https://googleprojectzero.blogspot.com.br/2018/01/reading-privileged-memory-with-side.html

Site agregando informações diversas dos dois problemas: https://meltdownattack.com/

Como anda a correção

A Intel disse que vai liberar um update de firmware que vai ajudar a resolver o problema. Lembro de ter lido que em até uma semana. Tudo isso está sendo um inferno de relações públicas pra eles e as informações estão desencontradas. Há chance de que estas correções de firmware não resolvam o problema e já tem gente dizendo que isso só será resolvido com novo hardware.

Parece que o impacto na AMD é menor, mas também não consegui concluir. Tem gente dizendo que afeta da mesma forma, tem gente dizendo que afeta de maneira menos grave, e tem gente dizendo que não afeta.

Microsoft lançou a correção hoje, feita out of band (normalmente os updates acontecem na segunda terça-feira do mês): https://support.microsoft.com/en-us/help/4056892/windows-10-update-kb4056892 Após instalar a atualização você vai ter que reiniciar a máquina, e vai levar cerca de dez minutos. No final, verifique se a versão do seu Windows está correta, deve ser 16299.192. Pra isso, aperte a tecla Start do Windows, digite winver e tecle enter. Deve estar assim:

winver

Builds do Windows Insider já estão corrigidas faz um bom tempo.

Parece que a Apple corrigiu o problema em 6 de Dezembro de 2017 na versão 10.13.2 do macOS High Sierra: https://twitter.com/aionescu/status/948609809540046849

No Linux, eu li que o código já estaria no git do Kernel, mas não ainda liberado. As informações estão desencontradas, então, pra mim, está inconclusivo. A AWS disse que já aplicou o patch no Amazon Linux, então alguma coisa já está pronta.

Avaliação do Google no projeto Chromium: https://www.chromium.org/Home/chromium-security/ssca Essa avaliação poderia significar que estamos vulneráveis a CSRF via GET, ou seja, ninguém está livre e muita gente vai ser owned.

O Firefox, a partir da versão 57 (a mais atual, estável) já tem alguma proteção. Veja o que a Mozilla está dizendo: https://blog.mozilla.org/security/2018/01/03/mitigations-landing-new-class-timing-attack/

No Chrome, uma forma que pode ajudar na mitigação é colocar cada site em um processo separado. No suporte do Google explica a fazer isso: https://support.google.com/chrome/answer/7623121 Basicamente:

  • Navegue para chrome://flags/#enable-site-per-process
  • Clique em Enable
  • Reinicie o Chrome

Impactos

Os patches liberados pra Linux, Mac e Windows vão impactar o desempenho em até 30%. Ninguém sabe exatamente o número correto. Relatos de problema de desempenho já estão aparecendo nas clouds. Isso porque os kernels agora precisarão separar as memórias de kernel e user mode, e isso obrigará a recarga de dados da memória e a dispensa de cache, entre outras operações.

Entre ontem e hoje tivemos diversos relatos de que as clouds estão reiniciando todas as máquinas, deixando inclusive serviços indisponíveis.

Aqui o que o Azure está fazendo: https://azure.microsoft.com/en-us/blog/securing-azure-customers-from-cpu-vulnerability/

O que o Google está fazendo: https://security.googleblog.com/2018/01/todays-cpu-vulnerability-what-you-need.html

O que a AWS está fazendo: https://aws.amazon.com/security/security-bulletins/AWS-2018-013/

Irresponsabilidade na liberação da informação

Eu ainda não entendi o que houve, mas alguém fez algo muito errado. Não parece que houve Responsible Disclosure. Muita gente foi pega descoberta, e o exploit foi revelado antes que os responsáveis pudessem corrigir o problema.

Conclusão

Atualize todos os seus softwares hoje. Verifique atualizações todos os dias. Tudo indica que o problema não vai passar do dia pra noite.

O que vai acontecer com a Intel é especulativo. Tem gente dizendo que as ações vão cair, outros dizendo o contrário. De fato, se eles forem processados e perderem o dano vai ser grande. Por outro lado, se todo mundo comprar novos processadores, eles vão ganhar muito dinheiro. Façam suas apostas.

E aí, o que vocês tem feito? Estão acompanhando o problema?