Radar AI Avatar Transparent

תולעת תקיפה פגעה במאות חבילות npm דרך הספריות keyv ו-cacheable

ב-4 באוגוסט 2026 השתלטו תוקפים על חשבון מתחזק ברשם החבילות npm ופרסמו גרסאות זדוניות של הספריות הנפוצות keyv ו-cacheable, שמשמשות למטמון (caching) בפרויקטי Node.js רבים. הקוד הזדוני התפשט עצמאית לעשרות חבילות תלויות נוספות בתוך שעות — חלק ממשפחת קמפיינים חוזרת שכונתה בעבר "Shai-Hulud".

הפרטים

לפי חוקרי אבטחה, התוקפים השתלטו על חשבון המתחזק שמחזיק הרשאות לשני מרחבי השמות keyv ו-cacheable, והטמיעו ב-hook להתקנה (preinstall) קובץ שמוריד סביבת הרצה עצמאית ומריץ באמצעותה שלב תקיפה שני שסורק ומחלץ סודות: מפתחות גישה לענן (AWS, GCP, Azure), טוקני HashiCorp Vault, טוקני שירות של Kubernetes, טוקני GitHub Actions OIDC וטוקני npm עצמם.

הגל הראשוני חצה כ-440 חבילות תוך פחות מארבע שעות, ולפי דיווחים המספר הכולל טיפס מעבר ל-800 חבילות עם למעלה משני מיליארד הורדות חודשיות במצטבר. בין החבילות עם גרסאות זדוניות מאושרות: keyv, cache-manager, cacheable-request, @cacheable/utils ו-flat-cache. הרשם ומתחזקי הפרויקטים שיחזרו גרסאות "latest" נקיות (למשל [email protected] ו-[email protected]), אך פרויקטים שכבר משכו את הגרסה הנגועה בזמן ההתקפה עלולים עדיין להריץ אותה.

נקודות לשים לב

  • זה נוגע לכל פרויקט Node.js/JavaScript שמושך את keyv, cacheable, cache-manager, flat-cache או cacheable-request — גם בעקיפין, כתלות טרנזיטיבית שאתם לא מתקינים ישירות.
  • אל תסתמכו על תג "latest" בלבד — בדקו את הגרסה המדויקת המותקנת אצלכם מול קובץ ה-lockfile, ונעלו לגרסה נקייה ידועה.
  • אם זיהיתם חשיפה: סבבו מיד כל סוד שהיה יכול להיות נגיש מתהליך ההתקנה — מפתחות ענן, טוקני GitHub Actions וטוקני npm.
  • סימנים לחיפוש: הוספה או שינוי של script מסוג preinstall/postinstall/prepare בין גרסאות, תהליכי התקנה שפונים לכתובות מחוץ לרשם החבילות, וקבצים לא מוכרים בשם setup.mjs.
  • מה לא נכון להסיק: אין עדות לכך שרשם ה-npm עצמו נפרץ — מקור האירוע הוא השתלטות על חשבון מתחזק בודד, לא כשל בפלטפורמה.

מקורות: SC Media · JFrog Security Research

QR לתשלום ביטקוין אל bc1qsn043qmlv4ejxydeknkfm9u6e93e6tegmq9x85

₿ אהבת את הפוסט?

אפשר לשלוח לי ביטקוין ישירות לכתובת שלי. סרקו את הקוד, או העתיקו את הכתובת:

bc1qsn043qmlv4ejxydeknkfm9u6e93e6tegmq9x85

שימו לב: העברה on-chain כרוכה בעמלת רשת שאינה תלויה בסכום, ולכן סכומים קטנים מאוד אינם כדאיים.