Ett ekstra felt krasjet 8,5 millioner PC-er. 78 minutter.
19.
19. juli 2024, 04:09 UTC: CrowdStrike sender Kanalfil 291 – en Rapid Response Content-oppdatering – til hver Windows Falcon-sensor på nett. Malen den mater ble deklarert med 21 inputfelt i februar; koden som leverer inputtene bygger en array med 20. I fire måneder leser ingenting felt 21, fordi hver regel lar det være et jokertegn. Denne oppdateringen setter et ekte mønster der. Den skybaserte Innholds-validator teller 21 mot deklarasjonen og godkjenner den; sensorens Innholds-tolker, uten grensekontroll, leser plass 21 i kjernemodus og Windows får sidefeil: PAGE_FAULT_IN_NONPAGED_AREA, csagent.sys. Driveren lastes tidlig i oppstarten med vilje, leser den samme filen, krasjer igjen – oppstartsloop. Tilbakestilt kl. 05:27 UTC, 78 minutter senere, men 8,5 millioner maskiner (Microsofts tall, under 1% av Windows) har allerede filen, og løsningen er et menneske ved hvert tastatur: Sikker modus, slett C-00000291*.sys, BitLocker gjenopprettingsnøkkel. Flyselskaper, sykehus, banker og 911-sentraler stopper; Delta kansellerer rundt 7 000 flyvninger og krever minst 500 millioner dollar fra CrowdStrike og Microsoft; Parametrix anslår regningen for Fortune 500 til rundt 5,4 milliarder dollar. Postmortem fra CrowdStrikes egen Rotårsaksanalyse, den foreløpige hendelsesgjennomgangen, Microsofts blogg, Deltas 8-K og husets vitnesbyrd. Git blame: 65 CrowdStrike / 25 kjernemodusdesignet / 10 fredagen. Dom over fiksen: SHIP IT, knapt.
Les den skriftlige utgaven (engelsk) ↗
Hva denne videoen dekker
- 28. feb – 24. apr 2024: sensor 7.11 sender IPC Maltype (21 felt deklarert, 20 levert); stresstest bestått 5. mar; fire instanser virker fordi felt 21 er et jokertegn
- 19. jul, 04:09 UTC: to nye Malinstanser; Innholds-validatorens logikkfeil slipper den ikke-jokertegn-baserte gjennom; utenfor-grenser-lesing i kjernen; 05:27 UTC tilbakestilt
- 19.–29. jul: manuell utbedring (Sikker modus, slett filen, BitLocker-nøkkel); ~97% av sensorene tilbake innen 24. jul, ~99% innen 29. jul
- 25. jul – 19. aug: kjøretidsgrensekontroll, kompileringstidsfelt-antallvalidering, Validator-kontroller, kanari + utrullingsringer, kundekontroll over Rapid Response Content, to uavhengige gjennomganger; full RCA med krasjdump 6. aug
Oversatt transkripsjon
Oversatt fra den originale engelske fortellingen. Tilgjengelig lyd og undertekster kontrolleres av YouTube.
0:00 En sikkerhetsoppdatering bærer tjueen felt inn i en driver bygget for tjue, og åtte og en halv million Windows-maskiner får blåskjerm før frokost. 19. juli 2024, 04:09 UTC. CrowdStrike skyver Kanalfil 291 til hver Falcon-sensor. Syttiåtte minutter senere trekker de den tilbake; da stirrer flyselskaper, sykehus og banker på den samme blå rektangelet. Administrerende direktørs første innlegg sier ikke et cyberangrep, sant, og ikke poenget. Hvordan det skjer, hvorfor det er mulig, og hvem får skylden.
0:27 Dette er The Daily Diff, postmortem. 28. februar. Sensor 7.11 sender en ny detektor for navngitte rør. Den deklarerer tjueen inndatafelt; koden som mater den bygger en matrise av tjue. Ingen legger merke til: i fire måneder etterlater hver regel felt tjueen som et jokertegn, og ingen leser et jokertegn. En stresstest bestås, fire regler sendes ut, alt er bra. 19. juli, 04:09. To nye regler; den ene setter et ekte mønster i felt tjueen.
0:51 Skyvalidatoren teller tjueen mot deklarasjonen og sier greit. Hver online Windows-vert laster den ned med en gang, fordi det ikke er noen kanari-ring. Sensoren leser plass tjueen, som ikke er dens minne, og kjernen gjør det kjerner gjør. 05:27, tilbakestilt. For sent for alle som startet på nytt: driveren lastes tidlig i oppstarten, leser den samme filen, og krasjer igjen. Oppstartsloop. Hvorfor er dette mulig? Reglene er konfigurasjon presset fra skyen, så det er ikke kode som hopper over kode-
1:16 pipelinen. Tolkeren har ingen grensekontroll; den stoler på validatoren, og validatoren stoler på deklarasjonen. Og alt kjører i kjernemodus, hvor en dårlig peker ikke er et unntak, men en sidefeil som Windows sier ikke kan beskyttes av try-except. Patrick Wardle leser det fra en krasj-dump den ettermiddagen: indeks null x fjorten, plass tjueen. Løsningen er manuell. Sikker modus, slett C-00000291, omstart. Med BitLocker, skriv først en førtiåtte-sifret
1:43 gjenopprettingsnøkkel som ligger på en server som også er blå. git blame. CrowdStrike, sekstifem prosent: RCA lister seks funn, og funn seks er en full setning: Malinstanser burde hatt trinnvis utrulling. Kjernemodusdesignet, tjuefem: CrowdStrike sier Windows kan ikke ennå hoste sikkerhet utenfor kjernen, Microsoft sier ikke en Microsoft-hendelse, og sidefeilen bryr seg ikke.
2:05 Fredagen, ti. Kommentar til commiten sier ikke kode. Eksplosjonsradius: åtte og en halv million enheter, under én prosent av Windows. Delta kansellerer syv tusen flyvninger og saksøker for fem hundre millioner, Microsoft inkludert. Forsikringsselskaper anslår regningen for Fortune 500 til nesten fem milliarder. Hacker News: førtifem hundre poeng. Ironien: en oppdatering ment å oppdage nye angrepsteknikker leverte en. Dom, postmortem: SHIP IT, knapt.
2:27 Grensesjekk om seks dager, iscenesatte ringer, kundekontroll over innholdsoppdateringer, to eksterne vurderinger. Knapt, fordi alt dette allerede var standard praksis. Mandag: hva enn agenten din trekker fra skyen får en kanariring. Konfigurasjon er kode i det øyeblikket noe parset den der den ikke kan kaste feil. Send meg hendelsen du fortsatt ikke får lov til å snakke om, i kommentarene, eller på daily diff dot dev. Og det er diffen for i dag.
2:48 Jeg er Niko fra Axrisi. Flett ansvarlig.
Kilder
- CrowdStrike, Root Cause Analysis — Channel File 291 (Aug 6, 2024, 12 pp.)www.crowdstrike.com
- CrowdStrike, Executive Summary of the RCA (Aug 6, 2024)www.crowdstrike.com
- CrowdStrike, Preliminary Post Incident Review (Jul 24, 2024)www.crowdstrike.com
- CrowdStrike, Remediation and Guidance Hub — Channel File 291 (the workaround steps)www.crowdstrike.com
- CrowdStrike, tech alert of Jul 19, 2024 (archived: Safe Mode → delete C-00000291*.sys → BitLocker key)web.archive.org
- Microsoft, David Weston, "Helping our customers through the CrowdStrike outage" (Jul 20, 2024; the 8.5 million figure)blogs.microsoft.com
- Delta Air Lines, Form 8-K (Aug 8, 2024; ~7,000 cancellations, at least $500 million)www.sec.gov
- Adam Meyers (CrowdStrike SVP), written testimony, House Homeland Security Subcommittee (Sep 24, 2024)homeland.house.gov
- George Kurtz on X, Jul 19, 2024, 09:45 UTCx.com
- Patrick Wardle on X, Jul 19, 2024 (the crash-dump index 0x14)x.com
- Hacker News, Jul 19, 2024 — "CrowdStrike Update: Windows Bluescreen and Boot Loops" (4,489 points)news.ycombinator.com
- The Guardian, Jul 24, 2024 — "CrowdStrike global outage to cost US Fortune 500 companies $5.4bn" (Parametrix estimate)www.theguardian.com
- Hacker News, Jul 21, 2024 — "Initial details about why CrowdStrike's CSAgent.sys crashed" (519 points)news.ycombinator.com
- Wikipedia — 2024 CrowdStrike-related IT outagesen.wikipedia.org



