מחקר: ב-2021 חלה עליה של 300% במתקפות על שרשרת אספקת התוכנה
מאת:
מערכת Telecom News, 3.2.22, 14:53
המחקר זיהה 3 תחומי סיכון עיקריים, שחברות נדרשות להבין ולהתייחס אליהם, כדי לשפר את אבטחת שרשרת אספקת התוכנה. מרבית הארגונים עדיין חשופים להתקפות אלו. איך מתמודדים עם הבעיה?
Aqua Security (אקווה סקיוריטי), שמפתחת פתרונות אבטחת מידע לסביבות ענן, הודיעה על תוצאות מחקר, שנערך בתחום מתקפות על שרשרת האספקה של התוכנה, ע"י מומחים מחברת
Argon Security, שנרכשה לאחרונה ע"י אקווה. המחקר מצא, שהמתקפות על שרשרת אספקת התוכנה צמחו ביותר מ-300% ב-2021 בהשוואה ל-2020 ושלמרות הסיכונים וההבנה, שיש להתמגן מפניהם, מרבית הארגונים עדיין חשופים להתקפות אלו.
על פי
הדו"ח, החוקרים גילו, שהתוקפים מתמקדים במידה הרבה ביותר בחולשות והרעלה של קוד פתוח, בעיות בקוד וניצול של תהליך שרשרת אספקת התוכנה ואמינות הספק, כדי להפיץ תוכנות זדוניות או מתקפות מסוג פריצת דלתות אחוריות.
הם מצאו, שבקרב כל החברות שנבדקו, רמת האבטחה בכל סביבות פיתוח התוכנה נותרה נמוכה, כאשר הן סבלו מחולשות אבטחה ומתצורות שגויות בכלי הפיתוח, שעלולות לחשוף אותן למתקפות על שרשרת האספקה של התוכנה.
הממצאים התבססו על ניתוח בן 6 חודשים במסגרתו בוצעו הערכות בנוגע לעמידות אבטחת ארגונים, שערכו חוקרי
Argon, כדי לקבוע את מצב האבטחה הארגונית ואת המוכנות לקראת התגוננות מפני התקפות שרשרת אספקת תוכנה.
המחקר זיהה 3 תחומי סיכון עיקריים, שחברות נדרשות להבין ולהתייחס אליהם, כדי לשפר את אבטחת שרשרת אספקת התוכנה:
שימוש בחבילות קוד פתוח פגיעות: כמעט בכל התוכנות המסחריות נעשה שימוש בקוד פתוח. רבות מחבילות הקוד הפתוח, שנמצאות בשימוש, מכילות חולשות קיימות, ותהליך השדרוג לגרסה מאובטחת יותר דורש מאמץ מצד צוותי הפיתוח וה-
DevOps. אין זה מפתיע שחל גידול מהיר בשימוש בשיטה זו לטובת ביצוע התקפות בשרשרת האספקה. ישנן 2 התקפות נפוצות, שמעצימות את החולשות בחבילות קוד פתוח:
1) ניצול חולשות קיימות - ניצול נקודות תורפה קיימות בחבילות קוד פתוח כדי לקבל גישה ליישום ולבצע את ההתקפה (לדוגמה: התקפות
Log4j שאירעו לאחרונה).
2) הרעלת חבילות - שתילת קוד זדוני בחבילות קוד פתוח פופולריות ובחבילות קוד פרטיות כדי להערים על מפתחים או כלים של תהליכים אוטומטיים ובכך להטמיע את הקוד הזדוני כחלק מתהליך בניית היישום (לדוגמה: הרעלת חבילת
us-parser-js).
בעיות בתשתיות הפיתוח CI/CD pipeline)): תוקפים יכולים לנצל הרשאות גישה עודפות, תצורות שגויות וחולשות בכלי
CI/CD ובשירותים, שמשתתפים בתהליכי תשתית הפיתוח האלה, כדי להשיג גישה לתשתיות
IT קריטיות, לתהליכי פיתוח, לקוד מקור וליישומים. בעיות בצנרת
CI/CD יכולות לחשוף את קוד המקור של היישום המהווה את הבסיס ליישום, לתשתית הפיתוח ולתהליכי הפיתוח.
כך יכולים התוקפים לשנות את הקוד או להזריק קוד זדוני במהלך תהליך הבנייה של הקוד ולחבל ביישום, כמו שהתרחש במתקפה נגד
SolarWinds. פריצות מסוג זה הן קשות לזיהוי ויכולות לגרום נזק רב לפני שהן מזוהות ונפתרות.
כ"כ, התוקפים משתמשים ברישומי חבילות קוד פגומים כדי להעלות לתהליך הפיתוח אלמנטים (
Artifacts) פרוצים במקום אלמנטים לגיטימיים. בנוסף, יש עשרות שירותי ענן (
Service Dependencies) חיצוניים המחוברים לתהליך שיכולים לשמש כדי לגשת אליו ולתקוף אותו (למשל,
Attack Codecov).
שינויים בקוד: אחת מהפעילויות ,שמהוות סיכון עיקרי, שזוהתה במחקר, היא העלאת קוד עם חולשה למאגרי קוד מקור, שמשפיעה במישרין על איכות הקוד וחוזק האבטחה שלו. במרבית סביבות הארגונים שנבדקו נמצאו בעיות נפוצות בנתונים רגישים הרשומים בקוד (
Secrets), איכות קוד ובעיות אבטחה, בעיות בשירותי "תשתית כקוד" (
IaC), חולשות אבטחה בקובצי התקנת
Dockers (
Container image) ותצורות שגויות.
במקרים רבים, מספר הבעיות שהתגלו היה עצום ונדרשו פרויקטים ייעודיים כדי לצמצם את החשיפה, כגון ניקוי מפתחות הצפנה סודיים, סטנדרטיזציה של קובצי התקנה ועוד.
ערן אורזל, (בתמונה משמאל, צילום אייל רגב), מנהל תחום מכירות ולקוחות ב-
Argon: "מספר ההתקפות בשנה האחרונה וההשפעה הנרחבת של התקפה בודדת מדגישים את האתגר האדיר, שצוותי אבטחת יישומים מתמודדים עמו. לצערנו, לרוב הצוותים חסרים משאבים, תקציב וידע להתמודד עם התקפות על שרשרת האספקה של התוכנה.
אם נוסיף לכך את העובדה, שכדי לטפל בווקטור ההתקפה הזה, צוותי
AppSec זקוקים לשיתוף פעולה מצד צוותי הפיתוח וה-
DevOps, ניתן להבין מדוע קשה להתגבר על האתגר הזה.
תהליך שרשרת אספקת התוכנה הוא מרכיב מרכזי במחזור החיים של פיתוח היישומים המודרני. וקטור התקפה רחב זה, אם יישאר פתוח, מאיים לפגוע באופן חמור ביציבות אבטחת היישומים הארגונית, לחשוף נתונים רגישים פוטנציאליים וליצור נקודות כניסה נוספות ליישום בזמן שהוא בתהליכי פיתוח או באוויר.
במקרים רבים, צוותי האבטחה אינם ערים לתהליך זה בזמן, מכיוון שלרוב החברות אין יכולות מניעה אבטחתיות המוטמעות בתוך הכלים והתהליכים של תשתיות הפיתוח
CI/CD.
כדי להתמודד עם הבעיה המהותית, שעולה מן המחקר, צוותי האבטחה בארגונים השונים צריכים לחזק את שיתוף הפעולה עם צוותי
DevOps וליישם אוטומציה של חיזוק האבטחה בתהליכי הפיתוח.
לארגונים אלה מומלץ לאמץ את פתרונות האבטחה החדשים הקיימים כיום בשוק, שנועדו לאבטח את תהליך פיתוח התוכנה כנגד גל חדש זה של התקפות מתוחכמות על שרשרת אספקת התוכנה".