+− THE DAILY DIFFdev & AI news
SHIP IT

تسبب حقل إضافي واحد في تعطل 8.5 مليون جهاز كمبيوتر. 78 دقيقة.

19 يوليو 2024، الساعة 04:09 بالتوقيت العالمي المنسق: CrowdStrike تدفع Channel File 291 — تحديث محتوى استجابة سريعة — إلى كل مستشعر Windows Falcon المتصل بالإنترنت.

19 يوليو 2024، الساعة 04:09 بالتوقيت العالمي المنسق: CrowdStrike تدفع Channel File 291 — تحديث محتوى استجابة سريعة — إلى كل مستشعر Windows Falcon المتصل بالإنترنت. تم الإعلان عن القالب الذي يغذيه بـ 21 حقل إدخال في فبراير؛ الشفرة التي توفر المدخلات تبني مصفوفة من 20. لمدة أربعة أشهر، لا يقرأ أي شيء الحقل 21، لأن كل قاعدة تتركه كحرف بدل. يضع هذا التحديث نمطًا حقيقيًا هناك. يقوم مدقق المحتوى السحابي بحساب 21 مقابل الإعلان ويمرره؛ مفسّر المحتوى الخاص بالمستشعر، بدون فحص للحدود، يقرأ الخانة 21 في وضع النواة ويتسبب في أخطاء صفحة Windows: PAGE_FAULT_IN_NONPAGED_AREA، csagent.sys. يتم تحميل المشغل مبكرًا في التمهيد عمدًا، ويقرأ نفس الملف، ويتعطل مرة أخرى — حلقة تمهيد. تم التراجع في الساعة 05:27 بالتوقيت العالمي المنسق، بعد 78 دقيقة، ولكن 8.5 مليون جهاز (حسب إحصاءات Microsoft، أقل من 1% من أجهزة Windows) لديها الملف بالفعل، والإصلاح هو وجود إنسان عند كل لوحة مفاتيح: الوضع الآمن، حذف C-00000291*.sys، مفتاح استرداد BitLocker. توقفت شركات الطيران والمستشفيات والبنوك ومراكز 911؛ ألغت دلتا حوالي 7,000 رحلة وتطالب بما لا يقل عن 500 مليون دولار من CrowdStrike و Microsoft؛ تقدّر Parametrix فاتورة Fortune 500 بما يقارب 5.4 مليار دولار. تقرير ما بعد الوفاة من تحليل السبب الجذري الخاص بـ CrowdStrike، والمراجعة الأولية بعد الحادث، ومدونة Microsoft، وتقرير 8-K الخاص بدلتا، وشهادة مجلس النواب. Git blame: 65 CrowdStrike / 25 تصميم وضع النواة / 10 الجمعة. الحكم على الإصلاح: SHIP IT، بصعوبة.

اقرأ النسخة المكتوبة (الإنجليزية) ↗

ما يغطيه هذا الفيديو

  • 28 فبراير – 24 أبريل 2024: مستشعر 7.11 يشحن نوع قالب IPC (تم الإعلان عن 21 حقلًا، تم توفير 20)؛ اختبار الإجهاد ينجح في 5 مارس؛ أربعة حالات تعمل لأن الحقل 21 هو حرف بدل
  • 19 يوليو، 04:09 بالتوقيت العالمي المنسق: حالتان جديدتان للقالب؛ خطأ منطقي في مدقق المحتوى يسمح للحالة غير الحرف البديل بالمرور؛ قراءة خارج الحدود في النواة؛ تم التراجع في 05:27 بالتوقيت العالمي المنسق
  • 19-29 يوليو: معالجة يدوية (الوضع الآمن، حذف الملف، مفتاح BitLocker)؛ حوالي 97% من المستشعرات عادت بحلول 24 يوليو، وحوالي 99% بحلول 29 يوليو
  • 25 يوليو – 19 أغسطس: فحص حدود وقت التشغيل، والتحقق من عدد الحقول وقت التجميع، وفحوصات المدقق، وحلقة كناري + حلقات النشر، وتحكم العميل في محتوى الاستجابة السريعة، ومراجعتان مستقلتان؛ تحليل كامل للسبب الجذري مع تفريغ الأعطال في 6 أغسطس

النص المترجم

مترجم من السرد الإنجليزي الأصلي. يتم التحكم في الصوت والتعليقات التوضيحية المتاحة بواسطة YouTube.

0:00 يحمل تحديث أمني واحد واحدًا وعشرين حقلاً إلى برنامج تشغيل مبني لعشرين، وثمانية ونصف مليون جهاز Windows تظهر شاشة زرقاء قبل الإفطار. 19 يوليو 2024، الساعة 04:09 بالتوقيت العالمي المنسق. CrowdStrike تدفع Channel File 291 إلى كل مستشعر Falcon. بعد ثمانية وسبعين دقيقة يسحبونها؛ بحلول ذلك الوقت شركات الطيران، المستشفيات والبنوك تحدق في نفس المستطيل الأزرق. أول منشور للرئيس التنفيذي يقول ليس هجومًا إلكترونيًا، صحيح، وليس هذه هي النقطة. كيف يحدث، لماذا هو ممكن، ومن يتحمل اللوم.

0:27 هذا هو The Daily Diff، تقرير ما بعد الوفاة. 28 فبراير. مستشعر 7.11 يشحن كاشفًا جديدًا للأنابيب المسماة. يعلن عن واحد وعشرين حقل إدخال؛ الشفرة التي تغذيه تبني مصفوفة من عشرين. لا أحد يلاحظ: لمدة أربعة أشهر كل قاعدة تترك الحقل واحد وعشرين كـ حرف بدل، ولا أحد يقرأ حرف بدل. اختبار إجهاد ينجح، أربع قواعد تشحن، كل شيء بخير. 19 يوليو، 04:09. قاعدتان جديدتان؛ إحداهما تضع نمطًا حقيقيًا في الحقل واحد وعشرين.

0:51 المدقق السحابي يحسب واحدًا وعشرين مقابل الإعلان ويقول بخير. كل مضيف Windows متصل بالإنترنت يحمله دفعة واحدة، لأنه لا توجد حلقة كناري. المستشعر يقرأ الخانة واحد وعشرين، وهي ليست ذاكرته، والنواة تفعل ما تفعله النوى. 05:27، تم التراجع. فات الأوان لأي شخص أعاد التشغيل: يتم تحميل المشغل مبكرًا في التمهيد، ويقرأ نفس الملف، ويتعطل مرة أخرى. حلقة تمهيد. لماذا هذا ممكن؟ القواعد هي تهيئة يتم دفعها من السحابة، لذا لا تتخطى الشفرة مسار

1:16 الشفرة. المفسّر ليس لديه فحص للحدود؛ يثق في المدقق، والمدقق يثق في الإعلان. وكل ذلك يعمل في وضع النواة، حيث المؤشر الخاطئ ليس استثناءً بل خطأ صفحة تقول Windows إنه لا يمكن حمايته بـ try-except. باتريك واردل يقرأه من تفريغ أعطال في ذلك المساء: الفهرس صفر × أربعة عشر، الخانة واحد وعشرين. الإصلاح يدوي. الوضع الآمن، حذف C-00000291، إعادة التشغيل. مع BitLocker، اكتب أولاً رقمًا من ثمانية وأربعين رقمًا

1:43 مفتاح استرداد موجود على خادم أزرق أيضًا. لوم Git. CrowdStrike، خمسة وستون بالمائة: يسرد تحليل السبب الجذري ستة نتائج، والنتيجة السادسة هي جملة كاملة: يجب أن تكون حالات القالب قد مرت بمرحلة النشر. تصميم وضع النواة، خمسة وعشرون: CrowdStrike تقول إن Windows لا يمكنه بعد استضافة الأمان خارج النواة، Microsoft تقول إنه ليس حادث Microsoft، وخطأ الصفحة لا يهتم.

2:05 الجمعة، عشرة. رسالة الالتزام تقول ليست شفرة. نطاق التأثير: ثمانية ونصف مليون جهاز، أقل من واحد بالمائة من Windows. دلتا تلغي سبعة آلاف رحلة وتقاضي بخمسمائة مليون، بما في ذلك Microsoft. يقدر شركات التأمين فاتورة Fortune 500 بخمسة مليارات تقريبًا. أخبار المخترق: أربعة آلاف وخمسمائة نقطة. المفارقة: تحديث كان يهدف إلى اكتشاف تقنيات هجوم جديدة قدم واحدة منها. الحكم، بعد الوفاة: SHIP IT، بصعوبة.

2:27 فحص الحدود في ستة أيام، حلقات مرحلية، تحكم العميل في تحديثات المحتوى، مراجعتان خارجيتان. بصعوبة، لأن كل ذلك كان ممارسة قياسية بالفعل. الاثنين: أي شيء يسحبه وكيلك من السحابة يحصل على حلقة كناري. التكوين هو شفرة لحظة أن يقوم شيء ما بتحليله حيث لا يمكن أن يرمي استثناء. أرسل لي الحادث الذي لا يزال غير مسموح لك بالتحدث عنه، في التعليقات، أو على daily diff dot dev. وهذا هو الـ diff لليوم.

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 · ar · 25‏/09‏/2026

أوقف خطأ لمدة مللي ثانية واحدة حركة الملاحة الجوية في المملكة المتحدة. ست ساعات.

في الساعة 10:00 من صباح يوم الثلاثاء، 8 سبتمبر، تم اعتراض طلب روتيني لرمز squawk داخل نظام المجال الجوي الوطني (NAS) التابع لـ NATS بواسطة رسالة ذات أولوية أعلى بينما كان في منتصف تحديث قيمة. كانت ناف

3:06 ↗