Blog do Forcepoint Security Labs: Spectre e Meltdown - Uma semana (e pouco) depois
Passou-se apenas um pouco mais que uma semana desde que as vulnerabilidades Meltdown e Spectre foram divulgadas, tirando todo mundo do desânimo pós-festas de fim de ano. Nossa postagem anterior no blog sobre esse assunto discutiu a viabilidade desses ataques no mundo real - o que aprendemos desde então?
MELTDOWN
A maioria dos fornecedores de sistemas operacionais já forneceu patches contra a vulnerabilidade Meltdown, embora muitos considerem o nome surpreendentemente apropriado: o patch teve alguns efeitos significativos para alguns provedores de serviços.
Por exemplo, a Microsoft suspendeu a implementação de patches para determinados sistemas baseados em AMD e aos que rodavam alguns pacotes antivírus depois que as máquinas entraram em um estado de total impossibilidade de reinicialização.
Esses últimos problemas de "bluescreen" não foram previstos, mas os problemas de desempenho eram bastante esperados antes da implementação dos patches: os efeitos da utilização da separação "KAISER" do espaço de endereço do kernel e do usuário no desempenho de aplicações que precisam fazer chamadas frequentes para funções do kernel (ou seja, acesso à rede, acesso ao disco, etc.) eram de pleno conhecimento da comunidade técnica algum tempo antes da implementação dos patches.
Em última instância, porém, implementaram-se patches para a Meltdown e todos deveriam poder dormir em paz (supondo-se que aplicaram os patches de acordo com as orientações do fornecedor).
SPECTRE
O caso da Spectre é um pouco mais complexo e descreve na verdade um tipo de vulnerabilidade de sincronização de canal lateral (side-channel). Assim, foram identificadas no mínimo duas possibilidades de ataque utilizando-se a Spectre e que denominaremos "browser-Spectre" e "kernel-Spectre".
Examinando primeiro a "browser-Spectre", nem todos os navegadores atualizaram seus mecanismos JavaScript para se proteger dessa vulnerabilidade ainda (o Chrome, por exemplo, informa que mitigações serão incluídas no Chrome 64, previsto para 23 de janeiro de 2018). Por outro lado, parece que alguns navegadores estão ou estavam vulneráveis, mas os pesquisadores não parecem ter tido sucesso na utilização da técnica para extrair informações úteis.
Já a "kernel-Spectre" causou inicialmente mais preocupação porque não podia ser mitigada com um patch de sistema operacional - na verdade, houve preocupações iniciais de que pudéssemos até ter de esperar por uma nova geração de CPUs para contar com alguma proteção verdadeira contra a vulnerabilidade.
No final das contas, a Intel e a AMD estão divulgando atualizações para mitigação da Spectre e, por isso, não é preciso esperar até que todo um novo ciclo de CPUs seja lançado. O aspecto negativo é que essas atualizações poderão ter um impacto ruim no desempenho de um número muito maior de aplicações do que os patches da Meltdown por serem relacionadas à forma como as CPUs operam, em um nível bastante fundamental.
RECOMENDAÇÕES
O Forcepoint Security Labs segue recomendando a adesão de uma política de patches robusta: embora existam implicações de desempenho conhecidas associadas a alguns dos patches proporcionados pelos fornecedores, para a maioria das organizações é provável que seja desejável aceitar esse impacto em prol da paz de espírito.
Do mesmo modo, devemos lembrar que os patches, tanto de fornecedores de software (ou seja, Microsoft, Apple, distribuições de Linux, etc.) quanto de hardware (como Intel, ADM, fornecedores de SAN, de placas mãe, etc.) talvez tenham de ser aplicados para se obter o máximo de cobertura contra essas ameaças.
Os clientes da Forcepoint devem consultar o artigo do Knowledge Base que pode ser acessado em https://support.forcepoint.com/KBArticle?id=000014933 para obter conselhos sobre mitigação e aplicação de patches para todos os produtos Forcepoint.
CONCLUSÃO
Como discutimos na postagem anterior, as vulnerabilidades do nível de CPU (kernel-Spectre e Meltdown) são relativamente difíceis de explorar e exigem o acesso à máquina-alvo com permissão para executar o código antes de explorar a vulnerabilidade. Isso reduz significativamente o número de alvos contra os quais se pode desejar utilizar as vulnerabilidades: geralmente, se você tiver acesso pelo shell a uma máquina, você já "ganhou" e não precisa de algo tão tecnicamente complicado como Meltdown ou Spectre.
De fato, as situações em que se pode querer utilizar as técnicas dizem respeito à leitura de dados no sistema host de dentro de uma máquina virtual. Apesar de essas serem vulnerabilidades tecnicamente significativas, os cenários nos quais elas podem ser verdadeiramente úteis para um elemento malicioso são limitados.
A Forcepoint continuará atualizando este blog com novas pesquisas, recomendações e informações sobre produtos.