CrowdStrike desvenda causa de pane global
7 de Agosto de 2024

A empresa de cibersegurança CrowdStrike publicou sua análise de causa raiz detalhando a falha na atualização do software Falcon Sensor que incapacitou milhões de dispositivos Windows globalmente.

O incidente "Channel File 291", originalmente destacado em sua Revisão Preliminar Pós-Incidente (PIR), foi rastreado até um problema de validação de conteúdo que surgiu após a introdução de um novo Tipo de Template para possibilitar visibilidade e detecção de técnicas de ataque inovadoras que abusam de named pipes e outros mecanismos de comunicação interprocesso (IPC) do Windows.

Especificamente, está relacionado a uma problemática atualização de conteúdo implementada via nuvem, descrita como uma "confluência" de vários problemas que levaram a uma falha: Uma incompatibilidade entre os 21 inputs passados para o Validador de Conteúdo via o Tipo de Template IPC em oposição aos 20 fornecidos ao Intérprete de Conteúdo.

A CrowdStrike disse que a incompatibilidade de parâmetros não foi descoberta durante "múltiplas camadas" do processo de teste, em parte devido ao uso de critérios de correspondência de curinga para o 21º input durante o teste e nas primeiras instâncias do Template IPC que foram entregues entre março e abril de 2024.

Em outras palavras, a nova versão do Channel File 291, lançada em 19 de julho de 2024, foi a primeira Instância de Template IPC a fazer uso do 21º campo de parâmetro de input.

A falta de um caso de teste específico para critérios de correspondência não-curinga no 21º campo significou que isso não foi identificado até depois que o Conteúdo de Resposta Rápida foi enviado aos sensores.

"Sensores que receberam a nova versão do Channel File 291 carregando o conteúdo problemático foram expostos a um problema latente de leitura fora dos limites no Intérprete de Conteúdo," disse a empresa.

Na próxima notificação IPC do sistema operacional, as novas Instâncias de Template IPC foram avaliadas, especificando uma comparação contra o 21º valor de input.

O Intérprete de Conteúdo esperava apenas 20 valores.

Portanto, a tentativa de acessar o 21º valor produziu uma leitura de memória fora dos limites além do final do array de dados de input e resultou em uma falha do sistema.

Além de validar o número de campos de input no Tipo de Template no tempo de compilação do sensor para abordar o problema, a CrowdStrike disse que também adicionou checagens de limites do array de input em tempo de execução ao Intérprete de Conteúdo para prevenir leituras de memória fora dos limites e corrigiu o número de inputs fornecidos pelo Tipo de Template IPC.

"A checagem de limites adicionada impede que o Intérprete de Conteúdo realize um acesso fora dos limites do array de input e cause a falha do sistema," observou.

A checagem adicional adiciona uma camada extra de validação em tempo de execução de que o tamanho do array de input corresponde ao número de inputs esperados pelo Conteúdo de Resposta Rápida.

Além disso, a CrowdStrike disse que planeja aumentar a cobertura de teste durante o desenvolvimento do Tipo de Template para incluir casos de teste para critérios de correspondência não-curinga para cada campo em todos os (futuros) Tipos de Template.

Algumas atualizações de sensores também são esperadas para resolver as seguintes lacunas:

O Validador de Conteúdo está sendo modificado para adicionar novas checagens para garantir que o conteúdo nas Instâncias de Template não inclua critérios de correspondência que ultrapassem mais campos do que os que estão sendo fornecidos como input para o Intérprete de Conteúdo


O Validador de Conteúdo está sendo modificado para permitir apenas critérios de correspondência curinga no 21º campo, o que previne o acesso fora dos limites nos sensores que fornecem apenas 20 inputs

O Sistema de Configuração de Conteúdo foi atualizado com novos procedimentos de teste para garantir que cada nova Instância de Template seja testada, independentemente do fato de que a Instância de Template inicial seja testada com o Tipo de Template na criação

O Sistema de Configuração de Conteúdo foi atualizado com camadas adicionais de implementação e checagens de aceitação

A plataforma Falcon foi atualizada para fornecer aos clientes maior controle sobre a entrega do Conteúdo de Resposta Rápida

Por último, mas não menos importante, a CrowdStrike disse que contratou dois fornecedores independentes de segurança de software de terceiros para conduzir uma revisão adicional do código do sensor Falcon tanto para segurança quanto para garantia de qualidade.

Está também realizando uma revisão independente do processo de qualidade de ponta a ponta, desde o desenvolvimento até a implantação.

Comprometeu-se ainda mais a trabalhar com a Microsoft à medida que o Windows introduz novas maneiras de realizar funções de segurança no espaço do usuário, em vez de depender de um driver de kernel.

"O driver de kernel da CrowdStrike é carregado desde uma fase inicial da inicialização do sistema para permitir que o sensor observe e defenda contra malware que é lançado antes dos processos do modo usuário começarem," disse ela.

Fornecer conteúdo de segurança atualizado (por exemplo, o Conteúdo de Resposta Rápida da CrowdStrike) para essas capacidades de kernel permite que o sensor defenda sistemas contra uma paisagem de ameaças rapidamente evolutiva sem fazer alterações no código do kernel.

O Conteúdo de Resposta Rápida é dados de configuração; não é código ou um driver de kernel. A liberação da análise de causa raiz ocorre enquanto a Delta Air Lines disse que "não tem escolha" a não ser buscar indenizações da CrowdStrike e da Microsoft por causar disrupções massivas e custar uma estimativa de $500 milhões em receita perdida e custos extras relacionados a milhares de voos cancelados.

Tanto a CrowdStrike quanto a Microsoft responderam à crítica, afirmando que não são responsáveis pela paralisação de vários dias e que a Delta recusou suas ofertas de assistência no local, indicando que os problemas da transportadora podem ser muito mais profundos do que suas máquinas Windows parando como resultado da atualização de segurança defeituosa.

Publicidade

Curso gratuito de Python

O curso Python Básico da Solyd oferece uma rápida aproximação à linguagem Python com diversos projetos práticos. Indo do zero absoluto até a construção de suas primeiras ferramentas. Tenha também suporte e certificado gratuitos. Saiba mais...