تم اكتشاف 724 حزمة ضارة في RubyGems

شركة ريفيرسينج لابز опубликовала نتائج تحليل التطبيق كتابة القرفصاء في مستودع RubyGems. عادةً ما يتم استخدام typosquatting لتوزيع الحزم الضارة المصممة لجعل المطور الغافل يرتكب خطأ مطبعيًا أو لا يلاحظ الفرق عند البحث. حددت الدراسة أكثر من 700 حزمة بأسماء مشابهة للحزم الشائعة ولكنها تختلف في التفاصيل البسيطة، مثل استبدال أحرف متشابهة أو استخدام الشرطة السفلية بدلاً من الشرطات.

تم العثور على مكونات يشتبه في قيامها بأنشطة ضارة في أكثر من 400 حزمة. على وجه الخصوص، كان الملف الموجود بداخله هو aaa.png، والذي يتضمن تعليمات برمجية قابلة للتنفيذ بتنسيق PE. ارتبطت هذه الحزم بحسابين تم من خلالهما نشر RubyGems في الفترة من 16 فبراير إلى 25 فبراير 2020 724 حزمة خبيثةوالتي تم تنزيلها إجمالاً حوالي 95 ألف مرة. أبلغ الباحثون إدارة RubyGems وتمت بالفعل إزالة الحزم الضارة التي تم تحديدها من المستودع.

من بين الحزم التي بها مشاكل والتي تم تحديدها، كانت الحزمة الأكثر شيوعًا هي "atlas-client"، والتي للوهلة الأولى لا يمكن تمييزها عمليًا عن الحزمة الشرعية "atlas_client". تم تنزيل الحزمة المحددة 2100 مرة (تم تنزيل الحزمة العادية 6496 مرة، أي أن المستخدمين كانوا مخطئين في 25% تقريبًا من الحالات). تم تنزيل الحزم المتبقية بمعدل 100-150 مرة وتم تمويهها كحزم أخرى باستخدام تقنية مماثلة لاستبدال الشرطة السفلية والشرطات (على سبيل المثال، بين الحزم الضارة: appium-lib، action-mailer_cache_delivery، activemodel_validators، asciidoctor_bibliography، الأصول-pipeline، apress_validators، ar_octopus-replication-tracking، aliyun-open_search، aliyun-mns، ab_split، apns-polite).

تضمنت الحزم الضارة ملف PNG يحتوي على ملف قابل للتنفيذ لنظام التشغيل Windows بدلاً من الصورة. تم إنشاء الملف باستخدام الأداة المساعدة Ocra Ruby2Exe وتضمن أرشيفًا ذاتي الاستخراج باستخدام برنامج Ruby النصي ومترجم Ruby. عند تثبيت الحزمة، تمت إعادة تسمية الملف png إلى exe وتم إطلاقه. أثناء التنفيذ، تم إنشاء ملف VBScript وإضافته إلى التشغيل التلقائي. قام VBScript الضار المحدد في حلقة بتحليل محتويات الحافظة لوجود معلومات تذكرنا بعناوين محفظة التشفير، وإذا تم اكتشافه، استبدل رقم المحفظة مع توقع أن المستخدم لن يلاحظ الاختلافات ويقوم بتحويل الأموال إلى المحفظة الخاطئة .

وأظهرت الدراسة أنه ليس من الصعب تحقيق إضافة حزم ضارة إلى أحد المستودعات الأكثر شهرة، ويمكن أن تظل هذه الحزم غير مكتشفة، على الرغم من العدد الكبير من التنزيلات. تجدر الإشارة إلى أن المشكلة لا محدد إلى RubyGems ويغطي المستودعات الشائعة الأخرى. على سبيل المثال، في العام الماضي نفس الباحثين مكشوف يوجد في مستودع NPM حزمة ضارة تسمى bb-builder، والتي تستخدم تقنية مشابهة لتشغيل ملف قابل للتنفيذ لسرقة كلمات المرور. قبل هذا كان هناك باب خلفي أسس اعتمادًا على حزمة NPM لتدفق الأحداث، تم تنزيل التعليمات البرمجية الضارة حوالي 8 ملايين مرة. الحزم الخبيثة أيضا دوريا يظهر فجأة في مستودع PyPI.

المصدر: opennet.ru

إضافة تعليق