تیم امنیتی #npm# (Node Package Manager)، مدیر بستهی de-Facto برای اکوسیستم جاوااسکریپت، بستهی مخربی که اطلاعات حساس را از سیستمهای UNIX به سرقت میبرد، از بین برد.
این بستهی مخرب که 1337qq-js نامیده میشود، در 30ام دسامبر سال 2019 در مخزن npm بارگذاری شده است و حداقل 32 بار طی دو هفتهی گذشته و پیش از آنکه توسط تیم تحقیقات آسیبپذیری مایکروسافت کشف شود، دانلود شده است.
طبق تجزیه و تحلیلهای تیم امنیتی npm، این بسته اطلاعات حساس را از طریق نصب اسکریپتها استخراج میکند و تنها سیستمهای UNIX را هدف قرار میدهد. نوع دادههایی که این بسته جمعآوری میکند شامل موارد زیر است:
• متغیرهای محیطی
• فرایندهای در حال اجرا
• /etc/hosts
• Uname-a
• فایل npmrc
سرقت متغیرهای محیطی نقص امنیتی بزرگی است، زیرا اطلاعاتی همچون گذرواژههای سخت کدشده یا نشانههای (token) دسترسی API اغلب به عنوان متغیرهای محیطی در برخی وبها یا برنامههای کاربردی تلفن همراه جاوااسکریپت، ذخیره میشوند.
Npm توصیه میکند تمامی توسعهدهندگانی که این بستهی جاوااسکریپت را دانلود کردهاند یا از آن در پروژههای خود استفاده کردهاند، آن را از سیستم خود حذف و هرگونه اعتبارنامه در معرض خطر را بازنشانی کنند.
این ششمین باری است که بستههای مخرب در فهرست مخازن npm جای گرفته است. بستهی مخرب 1337qq-js دارای کمترین شدت بوده است، در درجهی اول بدین دلیل که تحلیلگران امنیتی مایکروسافت این کتابخانه را دو هفته پس از انتشار و پیش از آنکه عواقب جدی ایجاد کند، شناسایی کردند.
حوادث پیشین ناشی از بستههای مخرب npm عبارتاند از:
• ماه ژوئن سال 2019: یک هکر به کتابخانهی اطلاعرسانی الکترونیکی بومی برای درج کد مخربی که به کیف پول رمزنگاری Agama دست یافته بود، حملهی دربپشتی کرد.
• ماه نوامبر سال 2018: یک هکر به یک بستهی npm جریان مبتنی بر رخداد (event-stram) بهمنظور بارگذاری کد مخرب درون میزکار BitPay Copay و برنامههای کیف پول تلفن همراه و نیز سرقت ارز رمزمبنا حملهی دربپشتی کرد.
• ماه جولای سال 2018: یک هکر، کتابخانهی ESLint را با کد مخربی که برای سرقت اعتبارنامههای npm توسعهدهندگان دیگر طراحی شده بود، در معرض خطر قرار داد.
• ماه می سال 2018: یک هکر سعی کرد یک دربپشتی را در یک بسته npm محبوب به نام getcookies پنهان کند.
• ماه آوریل سال 2017: یک هکر از typosquatting برای بارگذاری 38 کتابخانه JavaScript مخرب در npm استفاده کرد. این کتابخانههای مخرب برای سرقت جزئیات محیط پروژههایی که در آنها مورد استفاده قرار میگرفتند، تنظیم شده بودند.
- 11