מהו SBOM (רשימת חומרים של תוכנה)?
רשימת חומרים של תוכנה (SBOM) היא רשימה מפורטת של רכיבים שמרכיבים תוכנה, כולל ספריות צד שלישי וקוד פתוח, וגרסאות מסגרות. זה כמו רשימת מרכיבים בתוך היישום.
על ידי מעקב אחר כל רכיב בתוך היישום, צוות הפיתוח יכול לזהות במהירות כאשר מתגלות פגיעויות חדשות.
מדוע SBOM חשוב באבטחת סייבר
יישומים מודרניים נבנים על ידי שילוב של מאות או אלפי תלות צד שלישי וספריות קוד פתוח כדי להאיץ את הפיתוח. אם לאחת מהן יש פגיעויות, זה יעמיד את כל היישום בסיכון.
SBOM עוזר לצוות הפיתוח ל:
- לזהות פגיעויות מוקדם יותר על ידי מיפוי הרכיב המושפע
- לשפר את ההתאמה לתקנים כמו NIST, ISO, או Executive Order 14028 בארה”ב
- לשפר את אבטחת שרשרת האספקה על ידי הבטחת שקיפות בהרכב התוכנה
- לבנות אמון עם לקוחות ושותפים על ידי הצגת הרכיבים הכלולים
מרכיבים עיקריים של SBOM
SBOM נכון בדרך כלל כולל:
- שם הרכיב (למשל,
lodash) - גרסה (למשל, 4.17.21)
- מידע על רישיון (קוד פתוח או קנייני)
- ספק (פרויקט או ספק שמתחזק אותו)
- קשרים (כיצד רכיבים תלויים זה בזה)
דוגמה מעשית: פריצת Apache Struts (Equifax, 2017)
בשנת 2017 תוקף ניצל פגיעות קריטית במסגרת Apache Struts (CVE-2017-5638), אשר שימשה ביישומי האינטרנט של Equifax (סוכנות דיווח אשראי צרכנית רב-לאומית אמריקאית). התיקון לפגיעות זו היה זמין, אך Equifax לא יישמה אותו בזמן.
מכיוון שחסרה להם נראות לכל התלויות והספריות בתוך היישום שלהם, הפגם בספריית Struts לא זוהה, מה שהוביל לאחת מהפריצות הגדולות ביותר בהיסטוריה, עם חשיפת יותר מ-147 מיליון נתונים אישיים.
אם היה קיים SBOM, Equifax הייתה יכולה במהירות:
- לזהות שהיישומים שלהם משתמשים בגרסה הפגיעה של Apache Struts
- לתעדף תיקון מיד עם גילוי הפגיעות
- לצמצם את הזמן שהיה לתוקפים לנצל את החולשה
מקרה זה מראה לנו כיצד ל-SBOM יש תפקיד קריטי בשמירה על רכיבי תוכנה בטוחים, ועוזר לארגון לפעול מהר יותר מול פגיעויות שנחשפו לאחרונה
מונחים קשורים
- SCA (ניתוח הרכב תוכנה)
- מתקפת שרשרת אספקה
- אבטחת קוד פתוח
- ניהול פגיעויות