איך מתקפה על חברת סייבר ישראלית הפכה לקמפיין גלובלי שמסכן אלפי חברות?
איך מתקפה על חברת סייבר ישראלית הפכה לקמפיין גלובלי שמסכן אלפי חברות?
בעשור האחרון הפכו מתקפות על שרשרת האספקה של תוכנה לאחת הזירות המרכזיות בעולם הסייבר. אולם, הקמפיין האחרון, המיוחס לקבוצת TeamPCP, מחדד שינוי עמוק יותר: תקיפה של כלי שמיועד לבקרה ואבטחה, שהפך בעצמו למטרה.
המקרה הממחיש מגמה זו הוא זה של Trivy, סורק חולשות פופולרי בקוד פתוח, אשר פותח ומתוחזק על ידי חברת הסייבר הישראלית Aqua Security. כלי זה משולב עמוק בתהליכי CI/CD ובסביבות ענן של אלפי ארגונים, ומכך משתמע כי כל פגיעה בו אינה נקודתית אלא בעלת פוטנציאל השפעה רחב מאוד.
לפי הדיווח הרשמי של החברה, האירוע לא היה פריצה חד־פעמית אלא מתקפה רב־שלבית שהחלה כבר בסוף פברואר 2026. התוקפים ניצלו קונפיגורציה שגויה ב־GitHub Actions שאפשרה להם לחלץ טוקן גישה עם הרשאות גבוהות. למרות זיהוי מוקדם וביצוע רוטציה של קרדנציאלס, חלק מההרשאות לא בוטלו במלואן, מה שאיפשר לתוקפים לשמור על גישה ולהמתין להזדמנות.
השלב המרכזי של המתקפה התרחש ב־19 במרץ. בניגוד לדיווחים מוקדמים, התוקפים ביצעו פעולה מתוחכמת בהרבה מאשר הפצת גרסה זדונית חדשה: הם שינו תגיות קיימות (tags) באמצעות force-push כך שיצביעו על קוד זדוני, ובמקביל שחררו גרסה נגועה (v0.69.4) דרך חשבון האוטומציה aqua-bot. מהלך זה קריטי כיוון שמערכות רבות מסתמכות על תגיות ולא על commit hash, ולכן כאשר תגית משתנה, המערכת אינה מזהה שינוי וממשיכה לפעול כרגיל. כך, הקוד הזדוני חדר ישירות לפייפליינים של ארגונים מבלי לעורר חשד.
ברגע שהקוד הופעל בתוך סביבת CI/CD, הוא קיבל גישה מלאה לסודות הארגוניים. הקוד הזדוני אסף משתני סביבה, מפתחות ענן, טוקנים, סודות Kubernetes ומפתחות SSH, ושלח אותם החוצה בצורה מוצפנת כחלק מפעילות שנראית לגיטימית. לפי Aqua Security, האירוע זוהה ונבלם תוך שעות, והגרסאות הזדוניות הוסרו. עם זאת, כל מערכת שהריצה את הגרסאות הללו בזמן החלון הקצר הזה נחשבת פגיעה ודורשת טיפול מיידי.
השלכות המתקפה לא נעצרו ברמת הפרויקט, אלא התגלגלו לפריצות לארגונים אמיתיים. לדוגמא, חברת Cisco נפרצה וחלק מקוד המקור שלה נגנב. הגישה לסביבת הפיתוח הושגה בעקבות הרצת רכיבים נגועים הקשורים ל־Trivy בתוך תהליכי build, מה שאפשר לתוקפים לגשת לקרדנציאלס ולמידע פנימי, כולל קוד מקור. גם חברת הסטארט־אפ האמריקאית Mercor נפרצה, כאשר לפי דיווחים, נקודת הכניסה הייתה דומה: שימוש בכלי פיתוח או תהליכים שהושפעו מגרסאות נגועות של Trivy או רכיבים קשורים. כלומר, לא מדובר בפריצות בלתי תלויות, אלא בהשפעה ישירה של אותה מתקפת שרשרת אספקה. האירוע המשמעותי ביותר בהקשר זה התרחש בנציבות האירופית. שם, לפי דיווחים, הצליחו תוקפים לגשת למערכות ענן של הארגון באמצעות credentials שנגנבו ככל הנראה כחלק מאותה שרשרת תקיפה. בשלושת המקרים הללו, לא בוצעה פריצה ישירה לתשתיות ולא נעשה שימוש בנוזקה בתוך המערכת עצמה, אלא הגישה הושגה באמצעות הרשאות תקפות שנלקחו ממערכות שנפגעו קודם לכן.
האירוע מדגיש את הצורך בגישה שיטתית למניעה ולתגובה במתקפות שרשרת אספקה. לפי ההנחיות שפורסמו על ידי Aqua Security, הצעד הקריטי ביותר להתגברות על המתקפה הוא זיהוי האם נעשה שימוש בגרסאות הנגועות של Trivy במהלך חלון הזמן הרלוונטי. ארגונים נדרשים לעבור על לוגים של מערכות CI/CD ולבדוק הרצות של גרסאות שהושפעו, במיוחד כאלה שנמשכו לפי tags ולא לפי commit hash. במקרה של חשיפה, אין להסתפק בהסרת הגרסה בלבד, אלא יש להניח שכל הסודות שנחשפו במהלך ההרצה אינם בטוחים.
לכן, יש לבצע רוטציה מלאה של כל הקרדנציאלס, כולל מפתחות ענן, טוקנים, סודות Kubernetes ומפתחות SSH, ובנוסף לבדוק גישה חריגה למערכות ענן ולזהות שימוש לא מורשה בהרשאות. בצד המניעתי, ההמלצה המרכזית היא לצמצם תלות באמון עיוור במנגנוני אוטומציה: יש לעבוד עם גרסאות חתומות או מקובעות ל־commit hash, להגביל הרשאות של טוקנים וסביבות build, ולהפריד בין סביבות כך שגם אם רכיב אחד נפגע, הנזק לא יתפשט. האירוע ממחיש כי לא מספיק לאבטח קוד — יש לאבטח את כל שרשרת האספקה שמריצה אותו.