Painel de partidas de aeroporto em que cada linha de voo foi substituída por um painel de erro azul idêntico
CybersecurityTechnologySoftware Development

8,5 milhões de computadores travaram por causa de um arquivo que ninguém do seu lado revisou

Ashutosh SinghalAshutosh Singhal28 de maio de 202612 min

Um amigo que cuida da segurança de uma companhia aérea de médio porte me mandou uma foto no café da manhã do dia 19 de julho de 2024. Era um painel de partidas, só que cada painel estava do mesmo tom de azul, com o mesmo texto de erro branco repetido painel após painel por todo o terminal. Ele não escreveu nada junto. Não precisava.

Quando terminei meu café, o número já era de 8,5 milhões de máquinas Windows, travadas em menos de noventa minutos. Não foi malware. Não foi um zero-day. Foi uma atualização de conteúdo de rotina da CrowdStrike, um fornecedor que essas empresas pagavam justamente para mantê-las seguras. Aquilo que protegia os endpoints foi aquilo que os inutilizou.

Passei o tempo desde então construindo a camada que deveria ter estado entre esses fornecedores e essas máquinas — o que hoje chamamos de integridade na implantação de atualizações de software, um ponto de verificação independente entre o pipeline de atualizações de um fornecedor e a sua frota de produção. Este ensaio é sobre por que essa camada não existia, por que a forma óbvia de construí-la está errada, e o que mudou para toda empresa que roda agentes em nível de kernel no momento em que aquele painel azul se acendeu.

O 21º Campo

Diagrama: Content Validator na nuvem (21 campos, aprovado) vs. Content Interpreter no kernel (20 campos, tela azul)

Li a Análise Externa de Causa-Raiz da CrowdStrike na noite em que foi publicada, em agosto de 2024, e a causa era tão pequena que chegava a ser ofensiva.

O Falcon, o sensor da CrowdStrike, distribui a lógica de detecção por um mecanismo que ela chama de Rapid Response Content — pequenas atualizações de configuração que permitem reagir a novas ameaças sem enviar um binário inteiramente novo. Em 19 de julho, ela distribuiu duas novas Template Instances para detecção de comunicação entre processos. Essas instâncias faziam referência a um 21º parâmetro de entrada. O Content Validator baseado em nuvem da CrowdStrike checou a atualização contra o novo esquema de 21 campos, viu que era válida e a aprovou.

O problema estava no Content Interpreter rodando dentro do kernel do Windows, no Ring 0, a camada mais privilegiada do sistema operacional. Ele ainda esperava 20 campos. Quando tentou acessar o 21º, leu uma região de memória que não existia, e a máquina exibiu a tela azul instantaneamente.

Um validador na nuvem aprovou uma atualização segundo as novas regras. O kernel que a recebeu ainda vivia pelas antigas. Ninguém estava verificando se os dois concordavam.

Aqui está a parte que ainda mais me incomoda como engenheiro. O travamento aconteceu tão cedo na sequência de boot que o próprio agente de gerenciamento do Falcon nunca chegou a subir. Então os endpoints não conseguiam receber o comando de rollback que a CrowdStrike enviou, porque o software encarregado de receber esse comando era justamente aquilo que travava a máquina. O setor tem um nome sombrio para isso — o loop do agente morto. A recuperação não era um botão. Era um humano, em cada máquina, iniciando no Modo de Segurança, navegando até C:\Windows\System32\drivers\CrowdStrike\, e apagando o arquivo defeituoso C-00000291-*.sys manualmente. A Delta fez isso em 40.000 servidores. A recuperação levou cinco dias.

Nunca Foi Sobre Um Único Fornecedor

A história fácil é que a CrowdStrike foi descuidada. Também é a lição errada, e persegui-la teria me levado a construir o produto errado.

Porque o padrão não é da CrowdStrike. Puxe o inventário de endpoints de qualquer grande empresa e você encontrará de oito a doze agentes rodando em nível de kernel ou com privilégios elevados — o agente de EDR, um agente de prevenção contra perda de dados, um agente de criptografia, um agente de aplicação de patches, um cliente de VPN, um agente de gerenciamento de dispositivos. Oito linhas numa planilha, e oito canais de atualização separados, cada um enviando no seu próprio cronograma, cada um liberado sem questionamento.

Eu continuava fazendo aos CISOs a mesma pergunta naquele verão: quem revisa essas atualizações de fornecedores antes de elas chegarem à produção? A resposta, todas as vezes, era alguma versão de temos um comitê consultivo de mudanças. E então, um instante depois, a parte honesta: o comitê consultivo de mudanças revisa as implantações internas linha por linha, mas as atualizações de fornecedores pulam a fila de tickets, pulam o staging e vão direto para todos os endpoints — porque "nós confiamos no fornecedor." Essa frase era estrutural para o setor inteiro, e não havia mecanismo algum por trás dela.

Há um segundo modo de falha do qual quase ninguém fala, e é pior de diagnosticar. Quando dois fornecedores atualizam interfaces de kernel no mesmo dia, seus drivers podem entrar em conflito e produzir exatamente a mesma tela azul que um bug de um único fornecedor produziria. Só que agora a análise de causa-raiz leva semanas em vez de horas, porque você está triangulando entre duas equipes de suporte de fornecedores que, cada uma razoavelmente, culpam a outra.

A Versão Que Construímos Primeiro, e Por Que Ela Falhou

Quando começamos, eu tinha certeza de que a resposta era detecção. Observe os endpoints, aprenda como é o normal, e grite no instante em que uma atualização começar a se comportar mal. É o instinto que todo o mercado de observabilidade nos treinou a ter — Datadog, Dynatrace, Splunk, todos brilhantes em contar o que acabou de acontecer.

Construímos uma versão disso. Rodamos contra um replay de falhas causadas por atualizações. E funcionou, da forma mais inútil possível: pegou o problema lindamente, depois que as primeiras máquinas já haviam caído.

Lembro da ligação em que isso ficou claro. Um CISO piloto viu nosso dashboard se acender poucos segundos após o início de uma implantação ruim simulada e disse, mais ou menos, que não precisava de um jeito mais rápido de descobrir que já estava pegando fogo. Ele precisava que a atualização nunca chegasse a todos os seus endpoints de uma vez, para começar. Detecção depois da implantação, para uma falha que leva noventa minutos para atingir 8,5 milhões de máquinas, é um alarme de fumaça que toca depois que a casa já se foi.

A observabilidade te diz que o prédio está pegando fogo. A essa altura, a única pergunta que resta é quantos dias a reconstrução leva.

Aquele foi o mês em que eu havia silenciosamente apostado o trabalho na camada errada, e assistir àquele dashboard provar isso foi a coisa mais útil que nos aconteceu. O problema nunca foi velocidade de detecção. Era que não havia ponto de verificação algum antes de a atualização chegar.

Então Por Que as Ferramentas Existentes Não Pegam Isso?

Diagrama de arquitetura: pipeline de atualização de um fornecedor roteado através de um ponto de verificação independente antes da frota de produção

As pessoas presumem que a segurança da cadeia de suprimentos de software já cobre isso. Não cobre, e a razão é precisa.

Ferramentas de SBOM e análise de composição de software — Snyk, Sonatype — auditam a sua árvore de dependências de código aberto. Elas são feitas para lhe dizer que algum pacote npm três níveis abaixo tem uma vulnerabilidade conhecida. Mas o Rapid Response Content de um fornecedor, um arquivo de canal, um blob de configuração proprietário assinado e enviado pela CrowdStrike ou por qualquer fornecedor equivalente — isso é invisível para elas. Não está na sua árvore de dependências. É enviado por fora dela, direto para o kernel. As ferramentas feitas para proteger a sua cadeia de suprimentos de software estão auditando a camada completamente errada.

ITIL e o seu comitê consultivo de mudanças? Procedurais. São checklists e aprovações projetados para mudanças que você inicia, e nunca foram conectados à cadência de lançamentos de um fornecedor.

E a própria remediação da CrowdStrike — modo de autorrecuperação, fixação de conteúdo, "controles de implantação para o cliente" escalonados, um framework Resilient-by-Design emprestado da CISA — é trabalho real, e eu não o descarto. Mas leia o que ele de fato é: cada um desses controles é autofiscalização do fornecedor. A mesma empresa que enviou o 21º campo é a que certifica que agora está seguro. Ainda não há uma parte independente parada entre o envio do fornecedor e o seu endpoint. A retenção bruta da CrowdStrike ficou acima de 97% no trimestre seguinte ao apagão, o que lhe diz que o mercado não os puniu — e nada lhe diz sobre se a lacuna subjacente foi fechada. Não foi.

Essa lacuna é o produto inteiro. O lugar certo para se posicionar não é no endpoint vigiando o incêndio, e não é dentro do fornecedor confiando na palavra dele. É no meio: um ponto de verificação neutro em relação ao fornecedor que pega a atualização antes de ela chegar à produção, a executa através de um sandbox que espelha a sua frota real, checa o conteúdo contra o que o seu kernel de fato espera, e modela o raio de destruição caso esteja errada. Essa é a camada que acabamos construindo, e você pode ver o formato dela na nossa página de solução. Uma incompatibilidade de esquema como o bug dos 21-contra-20 campos é exatamente a classe de coisa que um sandbox de pré-implantação revela num anel canário em vez de em 8,5 milhões de máquinas de uma vez.

O Terreno Jurídico Se Moveu, e a Maioria dos Contratos Não Acompanhou

Por um tempo tratei o lado regulatório como ruído de fundo. Eu estava errado, e os compradores me mostraram por quê: os contratos nas gavetas deles já não os protegem da forma que eles pensam.

Comece com Delta v. CrowdStrike. Em maio de 2025, no Tribunal Superior do Condado de Fulton, a juíza Ellerbe permitiu que reivindicações de negligência grave, invasão de computador e fraude por omissão prosseguissem — por cima do limite de responsabilidade contratual da CrowdStrike. A parte da invasão de computador é a que deveria fazer todo CISO se endireitar na cadeira: a Delta havia optado por desativar as atualizações automáticas, e o arquivo de canal chegou ao kernel mesmo assim. Se um fornecedor pode enviar conteúdo em Ring 0 por um canal que as suas configurações não governam, as preferências de atualização no seu contrato podem ser inexequíveis. A maioria dos MSAs corporativos nem sequer distingue uma atualização completa do sensor de um rapid-response content. Deveriam distinguir.

Então a UE se moveu, e essa é a parte que eu agora trago em cada renegociação de contrato de que participo. A Diretiva de Responsabilidade sobre Produtos revisada agora classifica o software explicitamente como um "produto" sob responsabilidade objetiva, e diz que as empresas não podem excluir contratualmente a responsabilidade por defeitos de software e de cibersegurança. O limite de responsabilidade de poucos milhões que o seu fornecedor circulou no contrato pode simplesmente não valer nas jurisdições da UE. Ao lado disso, o Cyber Resilience Act da UE inicia a obrigatoriedade de relato de vulnerabilidades em 11 de setembro de 2026 — um relógio de 24 horas que, de forma crucial, começa a contar quando você toma conhecimento, não quando o fornecedor o notifica. O apagão de um fornecedor pode se tornar a sua obrigação de relato, rapidamente.

E nos EUA, a SEC agora exige que empresas de capital aberto divulguem incidentes materiais de cibersegurança dentro de quatro dias úteis e descrevam o risco da cadeia de suprimentos de software em seus arquivamentos 10-K. Faça as contas com os dados de custo: o estudo da New Relic de setembro de 2025 colocou o custo mediano de uma queda significativa de TI em US$ 2 milhões por hora, e 41% das empresas de médio a grande porte colocam o próprio número entre US$ 1 milhão e US$ 5 milhões por hora. Um apagão de quatro horas causado por uma atualização de fornecedor que o seu comitê de mudanças nunca viu cruza o limiar de materialidade por si só. A sua equipe de relações com investidores precisa de um manual para apagões de fornecedores, não apenas de um manual para violações.

Um apagão de quatro horas causado por uma atualização que ninguém do seu lado revisou chega a cerca de US$ 8 milhões na mediana — o tipo de número que aterrissa na mesa do CFO, não na do CISO.

"Isto Poderia Acontecer Conosco?"

Depois de julho de 2024, todos os conselhos do mundo fizeram ao seu CISO as mesmas quatro palavras. E os CISOs com quem conversei, em sua maioria, não tinham uma resposta estruturada — o que não é uma crítica a eles. Os dados da IANS Research do início de 2026 constataram que apenas 29% dos membros de conselho consideram que o relato de segurança do seu CISO é "muito eficaz", e o risco na implantação de atualizações é exatamente o tipo de coisa que é real, cara, e quase impossível de quantificar com as ferramentas que a maioria das equipes tem.

Essa é a metade mais silenciosa do que construímos. Não apenas o ponto de verificação técnico, mas aquilo que transforma "isto poderia acontecer conosco" numa resposta pronta para o conselho: um inventário de cada agente privilegiado e seu canal de atualização, um modelo quantificado de raio de destruição por fornecedor, um registro de quais atualizações foram testadas em sandbox e o que elas fizeram ali. Isso converte um slide que costumava dizer "nós confiamos nos nossos fornecedores" em um que mostra o trabalho.

As pessoas me perguntam se isto é realmente necessário agora que a Microsoft está tirando os fornecedores de segurança do kernel — a Windows Resiliency Initiative, com o Quick Machine Recovery e a mudança gradual da segurança de endpoints do modo kernel para o modo usuário. É uma mudança estrutural genuinamente boa, e vai reduzir o pior raio de destruição ao longo do tempo. Mas o cronograma se estende por 2026 e 2027, você vai passar toda essa janela rodando uma frota mista no meio da migração, e "menos catastrófico" não é "verificado". Um agente em modo usuário que envie uma configuração ruim ainda pode derrubar aquilo pelo qual é responsável. A necessidade de uma verificação independente não desaparece quando o kernel desaparece; ela apenas sobe uma camada.

A outra coisa que as pessoas dizem é que adicionar um ponto de verificação torna tudo mais lento — que a razão de ser do Rapid Response Content é a velocidade contra ameaças ao vivo. Justo. Mas a escolha nunca foi velocidade versus segurança. O validador na nuvem da CrowdStrike rodou rápido e ainda assim aprovou a atualização defeituosa, porque checou o arquivo contra o novo esquema e nunca checou se o kernel concordava. A velocidade não foi a falha. A ausência de uma verificação independente foi. Um anel canário que pega uma incompatibilidade de esquema em 30 máquinas custa a você alguns minutos. A alternativa custou à Delta cinco dias e US$ 550 milhões.

O Que o Painel Azul Realmente Significou?

Eu não paro de voltar à foto do meu amigo daquele painel de partidas. Por uma manhã, a abstração dentro da qual toda empresa vive — nossos fornecedores de confiança nos mantêm seguros — foi renderizada em azul literal, tela após tela, num prédio cheio de gente presa.

Os fornecedores não falharam por serem imprudentes. Eles falharam porque nós, coletivamente, construímos um setor onde um único arquivo de configuração de um único fornecedor podia chegar a todos os endpoints de uma vez sem nenhuma parte independente conferindo as contas. A CrowdStrike foi aquela cujo número saiu. A estrutura que permitiu isso está, neste exato momento, no inventário de endpoints de quase toda empresa que você conseguir nomear — de oito a doze agentes privilegiados, de oito a doze canais, e ninguém no meio.

Você pode ler a arquitetura completa do ponto de verificação que construímos aqui. Mas a parte que eu gostaria que um CISO levasse consigo é mais simples do que qualquer produto. O próximo apagão desse tipo não vai se anunciar como um incidente de segurança. Ele vai chegar assinado, confiável e aprovado — exatamente do jeito que o último chegou. A única coisa que muda o desfecho é alguém parado entre o envio e a frota de produção, verificando se a atualização e a máquina ainda concordam antes que todos os 8,5 milhões deles descubram de uma vez.

Pesquisa relacionada

Também publicado em

Construa sua IA com confiança.

Faça parceria com uma equipe que tem profunda experiência na construção da próxima geração de IA empresarial. Deixe-nos ajudá-lo a projetar, construir e implementar uma estratégia de IA em que você possa confiar.

Veriprajna consultoria de Deep Tech é especializada na construção de sistemas de IA críticos para a segurança nas áreas de saúde, finanças e domínios regulatórios. Nossas arquiteturas são validadas em relação a protocolos estabelecidos, com documentação de conformidade abrangente.