תוכנה זדונית של GlassWorm
גל חדש של קמפיין הנוזקה GlassWorm מכוון באופן פעיל לשרשראות אספקה של תוכנה על ידי ניצול אסימוני GitHub גנובים כדי להחדיר קוד זדוני למאות מאגרים. פעולה זו מתמקדת בעיקר בפרויקטים מבוססי Python, כולל יישומי Django, קוד מחקר למידת מכונה, לוחות מחוונים של Streamlit וחבילות PyPI.
וקטור ההתקפה פשוט באופן מטעה אך יעיל ביותר: תוכנה זדונית מעורפלת מתווספת לקבצים הנפוצים ביותר כגון setup.py, main.py ו-app.py. כל מפתח שמתקין תלויות דרך pip install או מבצע קוד משוכפל ממאגר פרוץ מבלי לדעת, מפעיל את המטען הזדוני.
תוכן העניינים
השתלטויות שקטות על מאגרים: טכניקת ForceMemo
התפתחות זו של הקמפיין, המכונה כיום ForceMemo, מציגה שיטה חשאית לפריצת מאגרים. גורמי איום מקבלים גישה לחשבונות מפתחים ומתמרנים מאגרים מבלי להשאיר עקבות קונבנציונליים.
על ידי יצירת בסיס מחדש של קומיטים לגיטימיים עם קוד זדוני ודחיפה כפויה שלהם לענף ברירת המחדל, תוקפים משמרים את המטא-דאטה המקורי של הקומיטים, כולל הודעה, מחבר וחותמת זמן, ובכך מסתירים ביעילות את הפריצה. גישה זו מבטלת אינדיקטורים גלויים כגון בקשות משיכה או היסטוריית קומיטים חשודה, מה שמקשה משמעותית על הזיהוי.
שרשרת ביצוע מתקפה: מגניבת אישורים ועד מסירת מטען
קמפיין ForceMemo עוקב אחר תהליך חדירה מובנה ורב-שלבי:
- סביבות מפתחים נפגעות בתחילה באמצעות קוד Visual Studio זדוני ותוספי Cursor הנושאים רכיבי GlassWorm שנועדו לאסוף אישורים רגישים, כולל אסימוני GitHub.
- לאחר מכן, נעשה שימוש באישורים גנובים כדי להזריק מטענים מעורפלים מקודדים ב-Base64 לקבצי Python בכל המאגרים המשויכים לחשבון שנפרץ.
- הנוזקה המוטמעת מבצעת בדיקות סביבה, ובעיקר נמנעת מביצוע במערכות שתצורתן נקבעה עם מיקום רוסי. לאחר מכן היא שואלת ארנק בלוקצ'יין של Solana כדי לאחזר באופן דינמי את כתובת ה-URL של מסירת המטען.
- מתבצעת הורדה של מטענים נוספים, כולל JavaScript מוצפן שנועד לגניבת מטבעות קריפטוגרפיים וחילוץ נתונים.
פיקוד ובקרה מבוססי בלוקצ'יין: תשתית עמידה
מאפיין בולט של קמפיין זה הוא הסתמכותו על הבלוקצ'יין של סולאנה כמנגנון פיקוד ובקרה (C2). במקום שרתים מסורתיים, התוקפים מאחסנים כתובות URL של מטען בתוך שדות תזכיר עסקאות הקשורים לכתובות ארנק ספציפיות.
ניתוח מגלה כי פעילות הקשורה לארנק הראשי החלה כבר ב-27 בנובמבר 2025, חודשים לפני שנצפו פגיעות במאגר. הארנק עיבד עשרות עסקאות, כאשר מיקומי המטען עודכנו לעתים קרובות, לפעמים מספר פעמים ביום. גישה מבוזרת זו משפרת את החוסן ומסבכת את מאמצי ההסרה.
הרחבת משטח ההתקפה: npm וזיהומים בין-מערכתיים
הקמפיין התרחב מעבר למערכות אקולוגיות של פייתון אל שרשראות אספקה של ג'אווהסקריפט. שתי חבילות npm של React Native, react-native-international-phone-number (גרסה 0.11.8) ו-react-native-country-select (גרסה 0.3.91), נפגעו זמנית והופצו עם תוכנה זדונית מוטמעת.
גרסאות זדוניות אלו הציגו ווים של קדם-התקנה (preinstall hooks) המפעילים JavaScript מעורפל, אשר מתחילים שרשרת הדבקה דומה. התוכנה הזדונית שוב עוקפת מערכות רוסיות, מאחזרת הוראות מטען דרך ארנק Solana, ופורסת איומים ספציפיים לפלטפורמה.
הביצוע מתרחש כולו בזיכרון באמצעות טכניקות זמן ריצה כגון eval() או Node.js sandboxing, ומשאירות מינימום של ממצאים פורנזיים. בנוסף, מנגנון שמירה מונע הדבקה חוזרת בתוך חלון של 48 שעות על ידי אחסון חותמת זמן מקומית.
טקטיקות התחמקות והפצה מתקדמות
גרסאות אחרונות של GlassWorm מדגימות תחכום מוגבר במסירה ובהסתרה. על ידי מינוף מנגנוני extensionPack ו-extensionDependencies, תוקפים מפיצים מטענים זדוניים באופן טרנזיטיבי דרך מערכות אקולוגיות של הרחבות מהימנות.
קמפיינים קודמים שקושרו לאותו גורם איום פרצו מעל 151 מאגרי GitHub תוך שימוש בתווי יוניקוד בלתי נראים כדי להסתיר קוד זדוני. למרות אסטרטגיות ערפול ומסירה מגוונות, כל הקמפיינים מסתמכים באופן עקבי על אותה תשתית מבוססת סולאנה, מה שמאשר מסגרת תפעולית מאוחדת.
הרחבות IDE זדוניות: מיקוד בסביבות מפתחים
הקמפיין חדר גם לכלי פיתוח דרך תוסף סורר שזוהה בשם reditorsupporter.r-vscode-2.8.8-universal, המכוון ל-Windsurf IDE. הקמפיין, במסווה של תוסף תמיכה בשפת R, פורס גונב מידע מבוסס Node.js.
לאחר ההתקנה, ההרחבה מאחזרת מטענים מוצפנים מעסקאות בלוקצ'יין, מבצעת אותן בזיכרון ופורסת רכיבים שעברו קומפילציה כדי לחלץ נתונים רגישים מדפדפנים מבוססי כרום. שמירה על זמינות מושגת באמצעות משימות מתוזמנות ושינויים ברישום של Windows, מה שמבטיח ביצוע עם הפעלת המערכת.
התוכנה הזדונית מכוונת ספציפית לסביבות מפתחים תוך אי הכללת מערכות רוסיות, ומשקפת התנהגות שנצפתה בגרסאות אחרות של GlassWorm.
אינדיקטורים של קנה מידה והשפעה
ניתוח אבטחה מצביע על כך שהקמפיין פגע בחלק ניכר ממערכת הקוד הפתוח, והשפיע על יותר מ-433 פרויקטים בפלטפורמות מרובות. אלה כוללים מאגרי GitHub (Python ו-JavaScript), הרחבות VS Code וספריות npm.
כל נתיבי ההדבקה מתכנסים בסופו של דבר לפריסה של גונב מידע מבוסס JavaScript, תוך הדגשת מטרה סופית עקבית של קצירת אישורים וחילוץ נתונים.
- מעל 433 פרויקטים וחבילות שנחשפו כסיכון מאומת
- וקטורי מסירה מרובים כולל הרחבות GitHub, npm ו-IDE
- שימוש עקבי בתשתית הבלוקצ'יין של סולאנה לאספקת מטען
- הדרה חוזרת ונשנית של מערכות רוסיות בכל הגרסאות
הערכה אסטרטגית: עידן חדש של מתקפות שרשרת אספקה
קמפיין ForceMemo מייצג הסלמה משמעותית באיומי שרשרת האספקה של תוכנה. השילוב של מניפולציה חשאית של היסטוריית Git, תשתית C2 מבוססת בלוקצ'יין ווקטורי זיהום חוצי פלטפורמות מדגים רמה גבוהה של בגרות תפעולית.
השימוש החוזר בתשתיות לצד מנגנוני אספקה מתפתחים מצביע על יריב אדפטיבי המסוגל להגדיל את התקפות תוך שמירה על התמדה והתחמקות. מעבר זה מפשרות מבודדות לחדירות מתואמות ורב-מערכתיות מדגיש את הסיכון הגובר העומד בפני סביבות פיתוח מודרניות וקהילות קוד פתוח.