+− THE DAILY DIFFdev & AI news
SHIP IT

Бір артық өріс 8,5 миллион ДК-ны істен шығарды. 78 минут.

2024 жылғы 19 шілде, 04:09 UTC: CrowdStrike әрбір Windows Falcon сенсорына Channel File 291 — Rapid Response Content жаңартуын жіберді.

2024 жылғы 19 шілде, 04:09 UTC: CrowdStrike әрбір Windows Falcon сенсорына Channel File 291 — Rapid Response Content жаңартуын жіберді. Ол толтыратын үлгі ақпанда 21 кіріс өрісімен жарияланған болатын; кірістерді беретін код 20 элементтен тұратын массив құрады. Төрт ай бойы 21-ші өрісті ешкім оқымайды, өйткені әрбір ереже оны "жолбелгі" ретінде қалдырады. Бұл жаңарту оған нақты үлгіні қойды. Бұлт жағындағы Content Validator жарияланымға сәйкес 21-ді санайды және оны өткізеді; сенсордың Content Interpreter-і, шекараларды тексермей, 21-ші ұяшықты ядролық режимде оқиды және Windows бет-қатесін шығарады: PAGE_FAULT_IN_NONPAGED_AREA, csagent.sys. Драйвер жүктеу кезінде әдейі ерте жүктеледі, сол файлды оқиды, қайтадан істен шығады — жүктеу циклі. 05:27 UTC-те, 78 минуттан кейін кері қайтарылды, бірақ 8,5 миллион машинада (Microsoft деректері бойынша, Windows-тің 1%-дан азы) файл қазірдің өзінде бар, және түзету — әрбір пернетақтадағы адам: Қауіпсіз режим, C-00000291*.sys файлын жою, BitLocker қалпына келтіру кілті. Әуе компаниялары, ауруханалар, банктер және 911 орталықтары тоқтады; Delta шамамен 7 000 рейсті тоқтатты және CrowdStrike пен Microsoft-тан кем дегенде 500 миллион доллар талап етті; Parametrix Fortune 500 шығындарын 5,4 миллиард долларға жуық деп бағалады. CrowdStrike-тың Root Cause Analysis, Preliminary Post Incident Review, Microsoft блогы, Delta 8-K және Өкілдер палатасының куәлігінен кейінгі талдау. Git кінәсі: 65 CrowdStrike / 25 ядролық режим дизайны / 10 жұма. Түзету туралы үкім: SHIP IT, әрең.

Жазбаша басылымды оқыңыз (ағылшынша) ↗

Бұл бейне не туралы

  • 2024 жылғы 28 ақпан – 24 сәуір: 7.11 сенсоры IPC Template Type-ты (21 өріс жарияланған, 20 өріс берілген) жеткізеді; жүктеме сынағы 5 наурызда өтеді; төрт инстанция жұмыс істейді, өйткені 21-ші өріс "жолбелгі" болып табылады.
  • 19 шілде, 04:09 UTC: екі жаңа Template Instances; Content Validator-дың логикалық қатесі "жолбелгі" емес бір инстанцияны өткізеді; ядрода шекарадан тыс оқу; 05:27 UTC кері қайтарылды.
  • 19–29 шілде: қолмен түзету (Қауіпсіз режим, файлды жою, BitLocker кілті); 24 шілдеге дейін сенсорлардың ~97%-ы, 29 шілдеге дейін ~99%-ы қалпына келтірілді.
  • 25 шілде – 19 тамыз: орындалу уақытында шекараны тексеру, компиляция уақытында өрістер санын тексеру, Validator тексерулері, canary + орналастыру сақиналары, Rapid Response Content мазмұнын тұтынушы басқаруы, екі тәуелсіз шолу; 6 тамызда апат дампымен толық RCA.

Аударылған транскрипция

Бастапқы ағылшын тіліндегі баяндамадан аударылған. Қолжетімді аудио және субтитрлерді YouTube басқарады.

0:00 Бір қауіпсіздік жаңартуы жиырма бір өрісті жиырмаға арналған драйверге жібереді, және сегіз жарым миллион Windows машиналары таңғы асқа дейін көк экранға түседі. 2024 жылғы 19 шілде, 04:09 UTC. CrowdStrike Channel File 291-ді әрбір Falcon сенсорына жібереді. Жетпіс сегіз минуттан кейін олар оны кері қайтарады; сол кезде әуе компаниялары, ауруханалар мен банктер бірдей көк тіктөртбұрышқа қарап тұр. Бас директордың алғашқы хабарламасы кибершабуыл емес дейді, бұл рас, бірақ мәселе онда емес. Бұл қалай болады, неліктен мүмкін және кім кінәлі.

0:27 Бұл The Daily Diff, постмортальді талдау. 28 ақпан. Сенсор 7.11 атауы бар құбырларға арналған жаңа детекторды жеткізеді. Ол жиырма бір кіріс өрісін жариялайды; оны толтыратын код жиырма элементтен тұратын массив құрады. Ешкім байқамайды: төрт ай бойы әрбір ереже жиырма бірінші өрісті "жолбелгі" ретінде қалдырады, және "жолбелгіні" ешкім оқымайды. Жүктеме сынағы өтеді, төрт ереже шығарылады, бәрі жақсы. 19 шілде, 04:09. Екі жаңа ереже; біреуі жиырма бірінші өріске нақты үлгі қояды.

0:51 Бұлт валидаторы жарияланымға сәйкес жиырма бірді санайды және жақсы дейді. Әрбір онлайн Windows хосты оны бірден жүктейді, өйткені canary ring жоқ. Сенсор жиырма бірінші ұяшықты оқиды, бұл оның жады емес, және ядро ядролар істейтін істі істейді. 05:27, кері қайтарылды. Қайта жүктегендер үшін кеш: драйвер жүктеу кезінде ерте жүктеледі, сол файлды оқиды және қайтадан істен шығады. Жүктеу циклі. Неліктен бұл мүмкін? Ережелер бұлттан жіберілетін конфигурация болып табылады, сондықтан код код

1:16 құбырын өткізіп жібермейді. Интерпретаторда шекараны тексеру жоқ; ол валидаторға сенеді, ал валидатор жарияланымға сенеді. Және бәрі ядролық режимде жұмыс істейді, мұнда дұрыс емес көрсеткіш ерекшелік емес, бірақ Windows try-except арқылы қорғалмайды дейтін бет қатесі. Патрик Уордл сол күні түстен кейін апат дампынан оқиды: нөлдік индекс х он төрт, жиырма бірінші ұяшық. Түзету қолмен жасалады. Қауіпсіз режим, C-00000291 жою, қайта жүктеу. BitLocker-мен бірге, алдымен қырық сегіз таңбалы

1:43 қалпына келтіру кілтін теріңіз, ол да көк серверде орналасқан. git кінәсі. CrowdStrike, алпыс бес пайыз: RCA алты тұжырымды тізімдейді, және алтыншы тұжырым толық сөйлем: Template Instances кезеңді орналастыруы керек. Ядролық режим дизайны, жиырма бес: CrowdStrike Windows әлі де қауіпсіздікті ядродан тыс орналастыра алмайды дейді, Microsoft бұл Microsoft оқиғасы емес дейді, және бет қатесіне бұл бәрібір.

2:05 Жұма, он пайыз. Commit хабарламасында код емес делінген. Жарылыс радиусы: сегіз жарым миллион құрылғы, Windows-тің бір пайызынан аз. Delta жеті мың рейсті тоқтатады және бес жүз миллионға сотқа береді, Microsoft қоса алғанда. Сақтандырушылар Fortune 500 шығындарын бес миллиардқа жуық деп бағалайды. Hacker News: төрт мың бес жүз ұпай. Ирония: жаңа шабуыл әдістерін анықтауға арналған жаңарту өзі біреуін жеткізді. Үкім, постмортальді талдау: SHIP IT, әрең.

2:27 Алты күн ішінде шекараны тексеру, кезеңді сақиналар, мазмұн жаңартуларына тұтынушылық бақылау, екі сыртқы шолу. Әрең, өйткені мұның бәрі қазірдің өзінде стандартты тәжірибе болған. Дүйсенбі: сіздің агентіңіз бұлттан тартатын кез келген нәрсе canary ring алады. Конфигурация - бұл бірдеңе оны талдаған сәтте код болып табылады, егер ол қате жібере алмаса. Маған әлі де айтуға рұқсат етілмеген оқиғаны жіберіңіз, комментарийлерде немесе the daily diff dot dev мекенжайында. Бүгінгі айырмашылық осы.

2:48 Мен Axrisi-ден Никомын. Жауапкершілікпен біріктіріңіз.

Дереккөздер

  1. CrowdStrike, Root Cause Analysis — Channel File 291 (Aug 6, 2024, 12 pp.)www.crowdstrike.com
  2. CrowdStrike, Executive Summary of the RCA (Aug 6, 2024)www.crowdstrike.com
  3. CrowdStrike, Preliminary Post Incident Review (Jul 24, 2024)www.crowdstrike.com
  4. CrowdStrike, Remediation and Guidance Hub — Channel File 291 (the workaround steps)www.crowdstrike.com
  5. CrowdStrike, tech alert of Jul 19, 2024 (archived: Safe Mode → delete C-00000291*.sys → BitLocker key)web.archive.org
  6. Microsoft, David Weston, "Helping our customers through the CrowdStrike outage" (Jul 20, 2024; the 8.5 million figure)blogs.microsoft.com
  7. Delta Air Lines, Form 8-K (Aug 8, 2024; ~7,000 cancellations, at least $500 million)www.sec.gov
  8. Adam Meyers (CrowdStrike SVP), written testimony, House Homeland Security Subcommittee (Sep 24, 2024)homeland.house.gov
  9. George Kurtz on X, Jul 19, 2024, 09:45 UTCx.com
  10. Patrick Wardle on X, Jul 19, 2024 (the crash-dump index 0x14)x.com
  11. Hacker News, Jul 19, 2024 — "CrowdStrike Update: Windows Bluescreen and Boot Loops" (4,489 points)news.ycombinator.com
  12. The Guardian, Jul 24, 2024 — "CrowdStrike global outage to cost US Fortune 500 companies $5.4bn" (Parametrix estimate)www.theguardian.com
  13. Hacker News, Jul 21, 2024 — "Initial details about why CrowdStrike's CSAgent.sys crashed" (519 points)news.ycombinator.com
  14. Wikipedia — 2024 CrowdStrike-related IT outagesen.wikipedia.org

Ұқсас бейнелер

postmortem · kk · 2026 ж. 25 қыр.

Бір миллисекундтық қате Ұлыбритания әуе қозғалысын тоқтатты. Алты сағат.

8 қыркүйек сейсенбі күні сағат 10:00-де NATS-тың Ұлттық әуе кеңістігі жүйесіндегі (NAS) әдеттегі squawk-кодын сұрауы мәнді жаңарту кезінде басымдығы жоғары хабарламамен үзіледі. Әсер ету терезесі шама

3:06 ↗
postmortem · kk · 2026 ж. 22 қыр.

Қайта жүктеу Telstra-ны 2006 жылға жіберді. Тоғыз миллион телефон.

Мельбурндегі инженер таңғы сағат 2:50-де тайминг шассиін қайта қосады, содан кейін таңғы асқа дейін Австралияның ең ірі мобильді желісі 2006 жылдың қарашасы деп келіседі. 2026 жылдың 8 шілдесі: Telstr

3:15 ↗