🚀 أصبحت CloudSek أول شركة للأمن السيبراني من أصل هندي تتلقى استثمارات منها ولاية أمريكية صندوق
اقرأ المزيد

المؤلف: فيشال سينغ
المؤلفون المشاركون والمساهمون: جودسون باستين
المحرر: ديبانجلي بولراج
حدد BeVigil، أول محرك بحث أمني في العالم، العديد من التطبيقات التي تسرّب مفاتيح Mailchimp API. استنادًا إلى هذه النتائج، حدد باحثو CloudSek حزمتين لم تتم المطالبة بهما، في كود Mailchimp، مما يؤدي إلى ارتباك التبعية. يمكن الاستفادة من ذلك لحقن تعليمات برمجية ضارة في كود Mailchimp.
مع وجود ما يقرب من 800,000 عميل مدفوع وحوالي 13 مليون مستخدم، تعد Mailchimp واحدة من أكبر منصات التشغيل الآلي للتسويق في العالم والتي تمكن الشركات من التفاعل مع العملاء والجماهير.
في هذه المدونة، ندعي إحدى الحزم التي لم تتم المطالبة بها في كود Mailchimp لتوضيح كيف يمكن استغلال ارتباك التبعية من قبل الجهات الفاعلة في التهديد، ولماذا هي نقطة ضعف يجب على المنظمات توخي الحذر بشأنها.
ارتباك التبعية هو ثغرة أمنية في سلسلة توريد البرامج يمكن استغلالها لخداع مُثبِّت البرامج لاستدعاء ملف تعليمات برمجية ضارة من مستودع تعليمات برمجية عام بدلاً من استدعاء ملف يحمل نفس الاسم من المستودع الداخلي المعتمد.
يحتوي Mailchimp على حزمتين لم تتم المطالبة بها:
وثائق واجهة برمجة تطبيقات Mailchimp يظهر أن يتطلب () لم يتم تكوين الوظائف في الحزم أعلاه بشكل صحيح. وبالتالي، عندما يحاول المستخدم تثبيتها، يؤدي ذلك إلى تثبيت حزمة المهاجم بدلاً من ذلك. لتوضيح كيف يمكن للمهاجم تحقيق ذلك، استولينا على التسويق عبر البريد رزمة. *
قمنا بتثبيت حزمة mailchimp للتسويق، من مستودع Mailchimp، باتباع التعليمات الواردة في دليل التثبيت.


لاستيراد الحزمة المعتمدة، ما يلي يتطلب () يجب استخدام الوظيفة: يتطلب («@mailchimp /mailchimp_marketing»). ومع ذلك، فإن وثائق API يوجه المستخدمين لاستخدام يتطلب () وظيفة تتطلب («التسويق عبر البريد»).
عند استخدام هذه الوظيفة، npmjs.org/التسويق عبر البريد يستجيب برمز الحالة 404. يوضح هذا أن الحزمة المسماة mailchimp-maketing غير متوفرة في الريبو. وبالتالي، يمكننا نشر مكتبة تسمى mailchimp-marketing في npmjs.



قمنا باستنساخ مستودع Mailchimp الأصلي ونشرنا مشروعًا يسمى mailchimp-marketing، مع خطاف ويب غير ضار في الكود. قمنا بتنزيل حزمة تسويق mailchimp الأصلية من Github وأضاف الويب هوك في ApiClient.js ملف.
عندما يقوم المستخدم بتنزيل هذا الريبو، الذي استولينا عليه، سيتم تشغيل webhook وسنتلقى إشعارًا.
يمكن العثور على الريبو الذي طالبنا به والرمز المستضاف هنا.
تم تشغيل التنزيلات وخطاف الويب 500-1000 زيارة في الأسبوع من عند مستخدمو ميل تشيمب.

بعد ذلك، استخدمنا NPM CLI لتحميل هذه الحزمة باستخدام mailchimp-marketing كاسم الحزمة.
لقد حصلنا حتى الآن على 72389 زيارة (رمز يستخدمه المستخدمون بشكل متكرر) لحزمة واحدة، وهناك ريبو آخر متاح للاستحواذ.

الباقة المعاملات عبر البريد تقوم أيضًا بإرجاع رسالة 404 غير موجودة في npm، مما يدل على أنها أيضًا لم تتم المطالبة بها. تطالب الجهات الفاعلة في مجال التهديد بهذه الحزمة ويمكنها استضافة تعليمات برمجية ضارة عليها.


يمكن للجهات الفاعلة في مجال التهديد الاستيلاء على الحزم غير المطالب بها لاستهداف أنظمة مستخدمي Mailchimp العامة من خلال:
يجب على Mainchimp تحديث كل من وثائق API للحزم التي لم تتم المطالبة بها.
*ملاحظة: تم إخطار Mailchimp بهذا الأمر ولكنه لم يستجب لإفصاحاتنا أو يصحح المشكلة.