+− THE DAILY DIFFdev & AI news
SHIP IT

שדה נוסף אחד קרס 8.5 מיליון מחשבים אישיים. 78 דקות.

19 ביולי 2024, 04:09 UTC: CrowdStrike דוחפת את Channel File 291 — עדכון תוכן של תגובה מהירה — לכל חיישן Windows Falcon מקוון.

19 ביולי 2024, 04:09 UTC: CrowdStrike דוחפת את Channel File 291 — עדכון תוכן של תגובה מהירה — לכל חיישן Windows Falcon מקוון. התבנית אותה הוא מזין הוכרזה עם 21 שדות קלט בפברואר; הקוד שמספק את הקלטים בונה מערך של 20. במשך ארבעה חודשים דבר אינו קורא את שדה 21, מכיוון שכל כלל משאיר אותו כתו כללי. עדכון זה מכניס לשם תבנית אמיתית. Content Validator בצד הענן סופר 21 מול ההכרזה ומעביר אותו; Content Interpreter של החיישן, ללא בדיקת גבולות, קורא את חריץ 21 במצב ליבה וגורם לשגיאות דף ב-Windows: PAGE_FAULT_IN_NONPAGED_AREA, csagent.sys. מנהל ההתקן נטען מוקדם באתחול בכוונה, קורא את אותו קובץ, קורס שוב — לולאת אתחול. שוחזר ב-05:27 UTC, 78 דקות מאוחר יותר, אך 8.5 מיליון מכונות (ספירת מיקרוסופט, פחות מ-1% מ-Windows) כבר קיבלו את הקובץ, והתיקון הוא אדם בכל מקלדת: מצב בטוח, מחק C-00000291*.sys, מפתח שחזור BitLocker. חברות תעופה, בתי חולים, בנקים ומרכזי 911 עוצרים; דלתא מבטלת כ-7,000 טיסות ותובעת לפחות 500 מיליון דולר מ-CrowdStrike ומיקרוסופט; Parametrix מעריכה את חשבון ה-Fortune 500 קרוב ל-5.4 מיליארד דולר. ניתוח לאחר המוות מתוך ניתוח הגורם השורש של CrowdStrike עצמה, הסקירה הראשונית לאחר האירוע, הבלוג של מיקרוסופט, דו"ח 8-K של דלתא ועדות בית הנבחרים. Git blame: 65 CrowdStrike / 25 תכנון מצב הליבה / 10 יום שישי. פסק הדין על התיקון: SHIP IT, בקושי.

קראו את המהדורה הכתובה (אנגלית) ↗

מה מכסה הסרטון הזה

  • 28 בפברואר – 24 באפריל 2024: חיישן 7.11 שולח את סוג תבנית IPC (21 שדות הוכרזו, 20 סופקו); בדיקת מאמץ עוברת ב-5 במרץ; ארבע מופעים עובדים מכיוון ששדה 21 הוא תו כללי
  • 19 ביולי, 04:09 UTC: שני מופעי תבנית חדשים; שגיאה לוגית של Content Validator מאפשרת לאחד שאינו תו כללי לעבור; קריאה מחוץ לטווח בליבה; 05:27 UTC שוחזר
  • 19–29 ביולי: תיקון ידני (מצב בטוח, מחיקת הקובץ, מפתח BitLocker); כ-97% מהחיישנים חזרו עד 24 ביולי, כ-99% עד 29 ביולי
  • 25 ביולי – 19 באוגוסט: בדיקת גבולות בזמן ריצה, אימות ספירת שדות בזמן קומפילציה, בדיקות Validator, טבעת קנרית + טבעות פריסה, שליטת לקוח על תוכן תגובה מהירה, שתי סקירות בלתי תלויות; RCA מלא עם דאמפ קריסה ב-6 באוגוסט

תמליל מתורגם

תורגם מהקריינות המקורית באנגלית. זמינות אודיו וכתוביות נשלטת על ידי YouTube.

0:00 עדכון אבטחה אחד נושא עשרים ואחד שדות למנהל התקן הבנוי לעשרים, ושמונה וחצי מיליון מכונות Windows מציגות מסך כחול לפני ארוחת הבוקר. 19 ביולי 2024, 04:09 UTC. CrowdStrike דוחפת את Channel File 291 לכל חיישן פלקון. שבעים ושמונה דקות מאוחר יותר הם מושכים אותו; עד אז חברות תעופה, בתי חולים ובנקים בוהים באותו מלבן כחול. הפוסט הראשון של המנכ"ל אומר שזו לא מתקפת סייבר, נכון, וזה לא העיקר. איך זה קורה, למה זה אפשרי, ומי מקבל את האשמה.

0:27 זהו The Daily Diff, ניתוח לאחר מוות. 28 בפברואר. חיישן 7.11 שולח גלאי חדש לצינורות בעלי שמות. הוא מצהיר על עשרים ואחד שדות קלט; הקוד שמזין אותו בונה מערך של עשרים. אף אחד לא שם לב: במשך ארבעה חודשים כל כלל משאיר את שדה עשרים ואחד כתו כללי, ואף אחד לא קורא תו כללי. בדיקת מאמץ עוברת, ארבעה כללים נשלחים, הכל בסדר. 19 ביולי, 04:09. שני כללים חדשים; אחד מכניס תבנית אמיתית לשדה עשרים ואחד.

0:51 המבקר בענן סופר עשרים ואחד מול ההצהרה ואומר בסדר. כל מארח Windows מקוון מוריד אותו מיד, מכיוון שאין טבעת קנרית. החיישן קורא את חריץ עשרים ואחד, שאינו הזיכרון שלו, והליבה עושה מה שליבות עושות. 05:27, שוחזר. מאוחר מדי לכל מי שאתחל מחדש: מנהל ההתקן נטען מוקדם ב אתחול, קורא את אותו קובץ, וקורס שוב. לולאת אתחול. למה זה אפשרי? הכללים הם תצורה שנדחפת מהענן, כך שקוד אינו מדלג על צינור ה

1:16 קוד. למפרש אין בדיקת גבולות; הוא סומך על המבקר, והמבקר סומך על ההצהרה. וכל זה פועל במצב ליבה, שבו מצביע שגוי אינו חריגה אלא שגיאת דף ש-Windows אומרת שאינה יכולה להיות מוגנת על ידי try-except. פטריק וורדל קורא את זה מדאמפ קריסה באותו אחר הצהריים: אינדקס אפס X ארבעה עשר, חריץ עשרים ואחד. התיקון ידני. מצב בטוח, מחק C-00000291, אתחול מחדש. עם BitLocker, הקלד תחילה מספר בן ארבעים ושמונה ספרות

1:43 מפתח שחזור שגר ב שרת שגם הוא כחול. אשמת גיט. CrowdStrike, שישים וחמישה אחוזים: ה-RCA מפרט שישה ממצאים, וממצא שש הוא משפט מלא: מופעי תבנית צריכים להיות עם פריסה בשלבים. עיצוב מצב הליבה, עשרים וחמישה: CrowdStrike אומר ש-Windows אינו יכול עדיין לארח אבטחה מחוץ לליבה, מיקרוסופט אומרת שזה לא אירוע של מיקרוסופט, ושגיאת הדף לא אכפת לה.

2:05 יום שישי, עשרה. הודעת הקומיט אומרת שזה לא קוד. רדיוס פיצוץ: שמונה וחצי מיליון מכשירים, פחות מאחוז אחד מ-Windows. דלתא מבטלת שבעת אלפים טיסות ותובעת חמש מאות מיליון, כולל מיקרוסופט. חברות ביטוח מעריכות את חשבון ה-Fortune 500 קרוב לחמישה מיליארד. חדשות האקר: ארבעת אלפים וחמש מאות נקודות. האירוניה: עדכון שנועד לגלות טכניקות תקיפה חדשניות סיפק אחת כזו. פסק הדין, לאחר מוות: SHIP IT, בקושי.

2:27 בדיקת גבולות תוך שישה ימים, טבעות בשלבים, שליטת לקוח על עדכוני תוכן, שתי סקירות חיצוניות. בקושי, כי כל זה כבר היה נוהג סטנדרטי. יום שני: כל מה שהסוכן שלך מושך מהענן מקבל טבעת קנרית. תצורה היא קוד ברגע שמשהו מנתח אותה במקום שבו היא לא יכולה לזרוק חריגה. שלח לי את האירוע שעדיין אסור לך לדבר עליו, בתגובות, או ב-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

סרטונים קשורים