تمت ملاحظة أربع حزم npm مخترقة في مساحة الاسمasyncapi وهي توزع محمل الروبوتات متعدد المراحل، وفقًا للنتائج التي توصلت إليها OX Security وSafeDep وSocket وStepSecurity.

الحزم المتأثرة مدرجة أدناه –

  • @asyncapi/generator-helpers@1.1.1
  • @asyncapi/generator-components@0.7.1
  • @asyncapi/generator@3.3.1
  • @asyncapi/specs(v6.11.2، v6.11.2-alpha.1)

وقال سوكيت: “تنشر الحزم المخترقة حمولة مبهمة للمرحلة الأولى تقوم بتنزيل حمولة مشفرة للمرحلة الثانية، تُعرف باسم Miasma، من IPFS”.

تشحن الحزم المسمومة غرسة جافا سكريبت مخفية، حيث تحتوي كل منها على ملف مصدر محقون يتم فك ترميزه إلى نفس برنامج التنزيل في المرحلة الثانية. على عكس التكرارات السابقة التي استفادت من خطافات التثبيت لتحفيز تنفيذ حمولة جافا سكريبت، يتم تشغيل التعليمات البرمجية الضارة في هذه الحالة عندما يتم تحميل الوحدة المصابة بواسطة Node.js، وبعد ذلك تقوم بتشغيل عقدة خلفية منفصلة تقوم بتنزيل البرامج الضارة وتنفيذها من IPFS.

حمولة المرحلة التالية عبارة عن أداة تحميل JavaScript مشفرة تسمى “sync.js”، والتي تتم كتابتها على مسارات خاصة بنظام التشغيل وتنفيذها. عنوان URL لبرنامج التنزيل هو “ipfs[.]io/ipfs/QmQobZSp1wRPrpSEQ56qnyq7ecZh5Bg5k1fnjt4SUwwHb9.” يحتوي المحمل على مكونين –

  • حمولة جافا سكريبت النهائية المشفرة، والتي يتم فك ترميزها إلى إطار عمل مهام Miasma
  • كائن كبير الحجم مشفرة يستخدمه إطار عمل سلسلة النشر في وقت التشغيل

يحتوي إطار العمل على 744 وحدة وقد تم تصميمه كإطار أوامر يدعم ست قنوات اتصال مستقلة للقيادة والتحكم (C2) باستخدام HTTP وNostr Relay وIPFS وBitTorrent DHT وlipp2p GossipSub P2P Mesh وعقد Ethereum الذكي.

إلى جانب تسهيل سرقة بيانات الاعتماد، وتسميم أدوات الذكاء الاصطناعي، والحركة الجانبية للشبكة المحلية، والانتشار الشبيه بالديدان على سجلات npm، وPyPI، وCargo، يتميز Miasma بآلية استمرارية خاصة به، وإعداد Systemd، وcrontab، وmacOS Launchd، ومفاتيح التشغيل التلقائي لتسجيل Windows.

وقال موشيه سيمان توف بوستان من OX Security: “على الرغم من أن البرامج الضارة لديها بعض أوجه التشابه مع حملات Shai-Hulud وMiasma، وتحتوي على سلسلة Miasma عدة مرات داخل الكود الخاص بها، إلا أن هذه البرامج الضارة ليست مثلها، ولا تُنسب إلى حملات Miasma/Shai-Hulud/TeamPCP التي رأيناها في الماضي”.

علاوة على ذلك، فهو يشتمل على مفتاح ميت يراقب الرمز المميز المسروق ويؤدي إلى مسح الدليل إذا تم إبطال الرمز المميز، مع تجنب الأنظمة التي تم تحديدها على أنها صناديق حماية أو بيئات افتراضية، بالإضافة إلى تلك الأنظمة التي تم تعيين لغتها الحالية على اللغة الروسية أو لديها أدوات أمان من CrowdStrike وSentinelOne وMicrosoft Defender وCarbonBlack وCylance وOsquery وTanium وQualys مثبتة.

“إن أوضح مسار تشغيلي له هو C2 المستند إلى REST: إشارات الزرع إلى نقطة نهاية HTTP، وتقبل المهام المشفرة، وتنشر نتائج الأوامر مرة أخرى إلى نفس البنية التحتية. حول هذا المركز، تحمل الحمولة أيضًا دعمًا لنقل التحميل، وتشفير الأوامر، وتوقيع العقدة، وتحديثات الحمولة، وإدارة الملفات، وتنفيذ الصدفة، والكتابة المستمرة.”

وفقًا لـ StepSecurity، يُقال إن المهاجم قد حصل على وصول دفعي إلى المستودعات واستخدم خط أنابيب إصدار GitHub Actions المشروع الخاص بالمشروع لنشر الحزم مع شهادات مصدر OIDC الصالحة. لم يتضمن الهجوم على سلسلة التوريد سرقة رمز npm.

وقال الباحث الأمني ​​روهان برابهو: “كلا الهجومين عبارة عن اختراقات لخطوط أنابيب CI/CD، وليست رموز npm مسروقة أو أدوات صيانة ضارة”. “قام المهاجم بدفع الالتزامات ضمن هوية git للعنصر النائب والسماح لسير عمل الإصدار الحقيقي لكل مستودع بإجراء النشر عبر تكامل الناشر الموثوق به في GitHub OIDC الخاص بـ npm.”

“تحمل الحزم الناتجة شهادات مصدر شرعية لـ SLSA، تثبت فقط أن سير العمل المصرح به للمشروع هو الذي أنتجها، وليس أن عمليات التنفيذ كانت مشروعة. المصدر لا يحمي من بيانات اعتماد الدفع المخترقة.”

ومنذ ذلك الحين تم إلغاء نشر جميع الإصدارات الضارة الخمسة من سجل npm. يُنصح بالتعامل مع أي نقطة نهاية قامت باستيراد أو تنفيذ أحد إصدارات الحزمة المتأثرة باعتبارها من المحتمل أن تكون معرضة للخطر. ومع ذلك، تجدر الإشارة إلى أن التعرض يعتمد على ما إذا تم تحميل الوحدة المصابة كجزء من سير عمل البناء أو المطور.

قال StepSecurity: “لا يوجد برنامج نصي للتثبيت المسبق/ما بعد التثبيت/التثبيت في أي مكان في أي من ملفات package.json الثلاثة”. “يتم تشغيل هذه القطارة عندما تكون الوحدة المسمومة مطلوبة ()d أثناء الاستخدام العادي للمولد: في اللحظة التي يتم فيها استدعاء مهمة البناء أو CI فعليًا إلى المكتبة، وليس في وقت تثبيت npm.”

شاركها.
اترك تعليقاً