يتم استغلال أحد عيوب GitHub، أو ربما قرار التصميم، من قبل جهات التهديد لتوزيع البرامج الضارة باستخدام عناوين URL المرتبطة بمستودع Microsoft، مما يجعل الملفات تبدو جديرة بالثقة.
على الرغم من أن معظم أنشطة البرامج الضارة تعتمد على عناوين URL الخاصة بـ Microsoft GitHub، فمن الممكن إساءة استخدام هذا “الخلل” في أي مستودع عام على GitHub، مما يسمح للجهات الفاعلة في مجال التهديد بإنشاء إغراءات مقنعة للغاية.
إساءة استخدام ميزة تحميل الملفات على GitHub
بالأمس، أصدرت شركة McAfee تقريرًا عن أداة تحميل البرمجيات الخبيثة LUA الجديدة تم توزيعه من خلال ما يبدو أنه مستودع Microsoft GitHub شرعي لـ “C++ Library Manager لأنظمة التشغيل Windows وLinux وMacOS”، المعروف باسم com.vcpkg.
تشير عناوين URL الخاصة بمثبتات البرامج الضارة، الموضحة أدناه، بوضوح إلى أنها تنتمي إلى Microsoft repo، ولكن لم نتمكن من العثور على أي إشارة إلى الملفات الموجودة في الكود المصدري للمشروع.
https://github[.]com/microsoft/vcpkg/files/14125503/Cheat.Lab.2.7.2.ziphttps://github[.]com/microsoft/STL/files/14432565/Cheater.Pro.1.6.0.zip
أجد أنه من الغريب أن يكون الريبو من Microsoft توزيع البرامج الضارة منذ فبراير، بحث BleepingComputer في الأمر ووجد أن الملفات ليست جزءًا منه com.vcpkg ولكن تم تحميلها كجزء من تعليق تم تركه على التزام أو مشكلة في المشروع.
عند ترك تعليق، يمكن لمستخدم GitHub إرفاق ملف، والذي سيتم تحميله على CDN الخاص بـ GitHub وربطه بالمشروع ذي الصلة باستخدام عنوان URL فريد بهذا التنسيق: ‘https://www.github.com/{project_user}/{repo_name}/files/{file_id}/{file_name}.‘
بدلاً من إنشاء عنوان URL بعد نشر التعليق، يقوم GitHub تلقائيًا بإنشاء رابط التنزيل بعد إضافة الملف إلى تعليق غير محفوظ، كما هو موضح أدناه. يسمح هذا للجهات الفاعلة في مجال التهديد بإرفاق برامجها الضارة بأي مستودع دون علمها.
حتى إذا قررت عدم نشر التعليق أو حذفه بعد نشره، فلن يتم حذف الملفات من CDN الخاص بـ GitHub، وتستمر عناوين URL للتنزيل في العمل إلى الأبد.
نظرًا لأن عنوان URL الخاص بالملف يحتوي على اسم المستودع الذي تم إنشاء التعليق فيه، وبما أن كل شركة برمجيات تقريبًا تستخدم GitHub، فإن هذا الخلل يمكن أن يسمح للجهات الفاعلة في مجال التهديد بتطوير إغراءات ماكرة وجديرة بالثقة بشكل غير عادي.
على سبيل المثال، يمكن لممثل التهديد تحميل برنامج ضار قابل للتنفيذ في مستودع تثبيت برنامج تشغيل NVIDIA يتظاهر بأنه سائق جديد يعمل على إصلاح المشكلات في لعبة شائعة. أو يمكن لممثل التهديد تحميل ملف في تعليق إلى كود مصدر جوجل كروم وتظاهر بأنها نسخة تجريبية جديدة من متصفح الويب.
ويبدو أن عناوين URL هذه تنتمي أيضًا إلى مستودعات الشركة، مما يجعلها أكثر جدارة بالثقة.
لسوء الحظ، حتى إذا علمت الشركة أنه تم إساءة استخدام مستودعات التخزين الخاصة بها لتوزيع البرامج الضارة، فلن يتمكن BleepingComputer من العثور على أي إعدادات تسمح لك بإدارة الملفات المرفقة بمشاريعك.
علاوة على ذلك، لا يمكنك سوى حماية حساب GitHub من إساءة الاستخدام بهذه الطريقة وتشويه سمعتك عن طريق تعطيل التعليقات. وفقا لهذا وثيقة دعم جيثب، يمكنك فقط تعطيل التعليقات مؤقتًا لمدة أقصاها ستة أشهر في المرة الواحدة.
ومع ذلك، فإن تقييد التعليقات يمكن أن يؤثر بشكل كبير على تطوير المشروع لأنه لن يسمح للمستخدمين بالإبلاغ عن الأخطاء أو الاقتراحات.
أجرى سيرجي فرانكوف، من خدمة التحليل الآلي للبرامج الضارة UNPACME، بثًا مباشرًا على Twitch حول هذا الخطأ في الشهر الماضي فقط، قائلًا إن الجهات الفاعلة في مجال التهديد تستغله بشكل نشط.
بعد أسابيع… لا يزال خطأ GitHub يسقط البرامج الضارة pic.twitter.com/s165zOAsoI
– هيركور (@ هيركور) 27 مارس 2024
كجزء من بحثنا حول هذا الخطأ، لم يتمكن BleepingComputer من العثور إلا على مستودع آخر واحد، httprouter، تمت إساءة استخدامه لتوزيع البرامج الضارة بهذه الطريقة، وكان هو نفس “Cheater.Pro.1.6.0.zip” كما يظهر في عناوين URL الخاصة بشركة Microsoft.
ومع ذلك، أخبر فرانكوف BleepingComputer أنهم اكتشفت حملة مماثلة في مارس الذي يستخدم نفس البرامج الضارة لمحمل LUA، والتي تسمى محمل ذكي، متنكرًا في هيئة برنامج الغش Aimmy.
أخبر فرانكوف BleepingComputer أن SmartLoader يتم تثبيته عادةً جنبًا إلى جنب مع حمولات أخرى، مثل البرنامج الضار RedLine لسرقة المعلومات.
اتصلت BleepingComputer بكل من GitHub وMicrosoft يوم الخميس بشأن إساءة الاستخدام هذه لكنها لم تتلق ردًا.
في وقت كتابة هذا المنشور، لا تزال البرامج الضارة التي تقوم بسرقة المعلومات يتم توزيعها من خلال الروابط المرتبطة بمستودع Microsoft GitHub.