NPM ממשיכה עם בעיות אבטחה וכעת אחת השפיעה על מערכת העדכונים

לפני כמה ימים GitHub חשף שני תקריות בתשתית מאגר החבילות של NPM, מתוכם הוא מפרט כי ב-2 בנובמבר, חוקרי אבטחה של צד שלישי כחלק מתוכנית Bug Bounty מצאו פגיעות במאגר NPM המאפשרת לפרסם גרסה חדשה של כל חבילה באמצעות למרות שהיא אינה מורשית לבצע עדכונים כאלה.

הפגיעות נגרמה מבדיקות הרשאות שגויות בקוד המיקרו-שירותים תהליך הבקשות ל-NPM. שירות ההרשאות ביצע בדיקת הרשאות לחבילות על סמך הנתונים שעברו בבקשה, אך שירות אחר שהעלה את העדכון למאגר קבע את החבילה לפרסם על סמך תוכן המטא נתונים בחבילה שהועלתה.

כך, תוקף יכול לבקש פרסום עדכון לחבילה שלו, אליה יש לו גישה, אך לציין בחבילה עצמה מידע על חבילה אחרת, שתתעדכן בסופו של דבר.

במהלך החודשים האחרונים, צוות npm משקיע בשיפורי תשתית ואבטחה כדי להפוך את הניטור והניתוח לאוטומטי של גרסאות החבילות שפורסמו לאחרונה כדי לזהות תוכנות זדוניות וקוד זדוני אחר בזמן אמת.

ישנן שתי קטגוריות עיקריות של אירועי פרסום של תוכנות זדוניות המתרחשות במערכת האקולוגית של npm: תוכנות זדוניות שמתפרסמות עקב חטיפת חשבון, ותוכנות זדוניות שתוקפים מפרסמים דרך החשבונות שלהם. למרות שרכישות חשבונות בעלות השפעה גבוהה הן נדירות יחסית, בהשוואה לתוכנות זדוניות ישירות שמתפרסמות על ידי תוקפים המשתמשים בחשבונות שלהם, רכישות חשבונות יכולות להיות מרחיקות לכת כאשר מכוונים למתחמי חבילות פופולריות. בעוד שזמן הזיהוי והתגובה שלנו לרכישות חבילות פופולריות היה נמוך כמו 10 דקות בתקריות האחרונות, אנו ממשיכים לפתח את יכולות זיהוי תוכנות זדוניות ואסטרטגיות ההתראות שלנו לעבר מודל תגובה פרואקטיבי יותר.

הבעיה זה תוקן 6 שעות לאחר הדיווח על הפגיעות, אך הפגיעות הייתה קיימת ב-NPM זמן רב יותר ממה שמכסים יומני טלמטריה. GitHub מצהיר כי לא היו עקבות להתקפות באמצעות פגיעות זו מאז ספטמבר 2020, אך אין ערובה לכך שהבעיה לא נוצלה בעבר.

התקרית השנייה התרחשה ב-26 באוקטובר. במהלך העבודה הטכנית עם מסד הנתונים של השירות replicant.npmjs.com, התברר כי קיימים נתונים חסויים במאגר הנתונים לייעוץ חיצוני, חושף מידע על שמות החבילות הפנימיות שהוזכרו ביומן השינויים.

מידע על השמות האלה יכול לשמש לביצוע התקפות תלות על פרויקטים פנימיים (בפברואר, התקפה כזו אפשרה לרוץ קוד על השרתים של PayPal, Microsoft, Apple, Netflix, Uber ועוד 30 חברות.)

בנוסף, ביחס לשכיחות הגוברת של תפיסת מאגרים של פרויקטים גדולים וקידום קוד זדוני באמצעות פגיעה בחשבונות מפתחים, GitHub החליטה להציג אימות דו-גורמי חובה. השינוי ייכנס לתוקף ברבעון הראשון של 2022 ויחול על המתחזקים והמנהלים של החבילות הנכללות ברשימת הפופולריות ביותר. בנוסף, ניתן מידע על מודרניזציה של התשתית, במסגרתה יוכנסו ניטור וניתוח אוטומטי של גרסאות חבילה חדשות לזיהוי מוקדם של שינויים זדוניים.

נזכיר כי על פי מחקר שנערך בשנת 2020, רק 9.27% ​​ממנהלי החבילות משתמשים באימות דו-גורמי כדי להגן על הגישה, וב-13.37% מהמקרים, בעת רישום חשבונות חדשים, מפתחים ניסו לעשות שימוש חוזר בסיסמאות שנפרצו המופיעות בסיסמאות ידועות. .

במהלך בדיקת עוצמת הסיסמאות בהן נעשה שימוש, נגשו ל-12% מהחשבונות ב-NPM (13% מהחבילות) עקב שימוש בסיסמאות צפויות וסתמיות כמו "123456". בין הבעיות היו 4 חשבונות משתמש מתוך 20 החבילות הפופולריות ביותר, 13 חשבונות שהחבילות שלהם הורדו יותר מ-50 מיליון פעמים בחודש, 40 - יותר מ-10 מיליון הורדות בחודש ו-282 עם יותר ממיליון הורדות בחודש. בהתחשב בעומס המודול לאורך שרשרת התלות, התפשרות על חשבונות לא מהימנים עלולה להשפיע על עד 1% מכלל המודולים ב-NPM בסך הכל.

לבסוף, אם אתה מעוניין לדעת יותר על כך אתה יכול לבדוק את הפרטים בקישור הבא.


השאירו את התגובה שלכם

כתובת הדוא"ל שלך לא תפורסם. שדות חובה מסומנים *

*

*

  1. אחראי על הנתונים: AB Internet Networks 2008 SL
  2. מטרת הנתונים: בקרת ספאם, ניהול תגובות.
  3. לגיטימציה: הסכמתך
  4. מסירת הנתונים: הנתונים לא יועברו לצדדים שלישיים אלא בהתחייבות חוקית.
  5. אחסון נתונים: מסד נתונים המתארח על ידי Occentus Networks (EU)
  6. זכויות: בכל עת תוכל להגביל, לשחזר ולמחוק את המידע שלך.