بحث
اختراق Trivy: برمجيات خبيثة لسرقة البيانات عبر GitHub Actions
الأمن السيبراني #الأمن_السيبراني #اختراق_Trivy

اختراق Trivy: برمجيات خبيثة لسرقة البيانات عبر GitHub Actions

تاريخ النشر: آخر تحديث: 5 مشاهدة 0 تعليق 4 دقائق قراءة
5 مشاهدة
0 إعجاب
0 تعليق
موثوق 95%

تعرض ماسح الثغرات الأمنية الشهير Trivy لاختراق ضمن هجوم سلسلة توريد نفذته مجموعة تعرف باسم TeamPCP، مما أدى إلى توزيع برمجيات خبيثة لسرقة بيانات الاعتماد عبر الإصدارات الرسمية وGitHub Actions.

يُعد Trivy أداة شائعة لمسح الثغرات الأمنية وتحديد نقاط الضعف، والتكوينات الخاطئة، والأسرار المكشوفة عبر الحاويات، وبيئات Kubernetes، ومستودعات الأكواد، والبنية التحتية السحابية. نظرًا لاستخدامه الواسع من قبل المطورين وفرق الأمن، فإنه يمثل هدفًا ذا قيمة عالية للمهاجمين لسرقة أسرار المصادقة الحساسة.

تفاصيل الاختراق وطريقة عمل البرمجيات الخبيثة

كشف الباحث الأمني بول مكارتي عن الاختراق لأول مرة، محذرًا من أن الإصدار 0.69.4 من Trivy قد تم تزويده بباب خلفي، مع نشر صور حاويات خبيثة وإصدارات GitHub للمستخدمين. أظهر تحليل لاحق أجرته Socket وWiz أن الهجوم أثر على العديد من GitHub Actions، مما أدى إلى اختراق جميع علامات الإصدار تقريبًا لمستودع trivy-action.

وجد الباحثون أن المهاجمين اخترقوا عملية بناء Trivy على GitHub، واستبدلوا ملف entrypoint.sh في GitHub Actions بنسخة ضارة، ونشروا ثنائيات مخترقة في إصدار Trivy v0.69.4. عملت كلتا الطريقتين كبرمجيات لسرقة المعلومات عبر الماسح الرئيسي وGitHub Actions المرتبطة به، بما في ذلك trivy-action وsetup-trivy. يتضح من الصورة المرفقة (صورة 1) كيف تقوم هذه البرمجيات بجمع بيانات الاعتماد وملفات البيئة.

استغل المهاجمون بيانات اعتماد مخترقة لديها صلاحيات كتابة على المستودع، مما مكنهم من نشر الإصدارات الضارة. تعود هذه البيانات المخترقة إلى اختراق سابق في مارس، حيث تم تسريب بيانات الاعتماد من بيئة Trivy ولم يتم احتواؤها بالكامل. قام المهاجمون بفرض دفع 75 من أصل 76 علامة في مستودع aquasecurity/trivy-action، وإعادة توجيهها إلى التزامات خبيثة. ونتيجة لذلك، قامت أي عمليات سير عمل خارجية تستخدم العلامات المتأثرة بتنفيذ التعليمات البرمجية الضارة تلقائيًا قبل تشغيل عمليات مسح Trivy الشرعية، مما جعل اكتشاف الاختراق صعبًا.

تشير تقارير Socket إلى أن البرمجيات الخبيثة جمعت بيانات استطلاع وفحصت الأنظمة بحثًا عن مجموعة واسعة من الملفات والمواقع المعروفة بتخزين بيانات الاعتماد وأسرار المصادقة، بما في ذلك:

  • بيانات الاستطلاع: اسم المضيف، هوية المستخدم، تكوين الشبكة، ومتغيرات البيئة.
  • SSH: المفاتيح الخاصة والعامة وملفات التكوين ذات الصلة.
  • تكوينات السحابة والبنية التحتية: بيانات اعتماد Git، AWS، GCP، Azure، Kubernetes، وDocker.
  • ملفات البيئة: .env والمتغيرات ذات الصلة.
  • بيانات اعتماد قواعد البيانات: ملفات تكوين PostgreSQL، MySQL/MariaDB، MongoDB، وRedis.
  • ملفات الاعتماد: بما في ذلك رموز المصادقة الخاصة بمديري الحزم وVault.
  • تكوينات CI/CD: Terraform، Jenkins، GitLab CI، وملفات مماثلة.
  • مفاتيح TLS الخاصة.
  • تكوينات VPN.
  • Webhooks: رموز Slack وDiscord.
  • ملفات سجل الأوامر (Shell history).
  • ملفات النظام: /etc/passwd، /etc/shadow، وسجلات المصادقة.
  • محافظ العملات المشفرة.

كما قام النص البرمجي الخبيث بمسح مناطق الذاكرة المستخدمة بواسطة عملية GitHub Actions Runner.Worker للعثور على أسرار مصادقة إضافية. على أجهزة المطورين، قام ثنائي Trivy المخترق بجمع بيانات مماثلة، بما في ذلك متغيرات البيئة، ومسح الملفات المحلية بحثًا عن بيانات الاعتماد، وتعداد واجهات الشبكة.

تم تشفير البيانات المجمعة وتخزينها في أرشيف باسم tpcp.tar.gz، ثم تم تسريبها إلى خادم قيادة وتحكم مزيف على scan.aquasecurtiy[.]org. في حال فشل التسريب، يقوم البرنامج الضار بإنشاء مستودع عام باسم tpcp-docs داخل حساب GitHub الخاص بالضحية وتحميل البيانات المسروقة هناك. وللحفاظ على استمرارية الوصول على الجهاز المخترق، يقوم البرنامج الضار أيضًا بإسقاط حمولة بايثون في ~/.config/systemd/user/sysmon.py وتسجيلها كخدمة نظام. تتحقق هذه الحمولة من خادم بعيد بحثًا عن حمولات إضافية لإسقاطها، مما يمنح المهاجم وصولاً مستمرًا إلى الجهاز.

يُعتقد أن الهجوم مرتبط بمجموعة TeamPCP، حيث احتوت إحدى حمولات سرقة المعلومات المستخدمة في الهجوم على تعليق "TeamPCP Cloud stealer" في السطر الأخير من نص بايثون البرمجي. كما يتضح من الصورة المرفقة (صورة 2) هذا التعليق الذي يؤكد ارتباط الهجوم بالمجموعة. أكدت Aqua Security الحادث، مشيرة إلى أن المهاجمين استخدموا بيانات اعتماد مخترقة من حادث سابق لم يتم احتواؤه بشكل صحيح. كان الإصدار الخبيث من Trivy (v0.69.4) نشطًا لمدة ثلاث ساعات تقريبًا، بينما ظلت علامات GitHub Actions المخترقة نشطة لمدة تصل إلى 12 ساعة. قام المهاجمون أيضًا بالتلاعب بمستودع المشروع، وحذف إفصاح Aqua Security الأولي عن حادث مارس السابق.

هجوم متابع ينشر دودة CanisterWorm عبر npm

ربط باحثون في Aikido نفس المهاجم بحملة متابعة تتضمن دودة ذاتية الانتشار جديدة تسمى "CanisterWorm"، تستهدف حزم npm. تقوم الدودة باختراق الحزم، وتثبيت باب خلفي دائم عبر خدمة مستخدم systemd، ثم تستخدم رموز npm المسروقة لنشر تحديثات ضارة لحزم أخرى. تستخدم البرمجيات الخبيثة آلية قيادة وتحكم لا مركزية باستخدام حاويات Internet Computer (ICP)، والتي تعمل كمحلل "نقاط إسقاط" يوفر عناوين URL لحمولات إضافية. يجعل استخدام حاويات ICP العملية أكثر مقاومة للإزالة، حيث لا يمكن إزالتها إلا بواسطة وحدة التحكم الخاصة بها، وأي محاولة لإيقافها تتطلب اقتراحًا للحوكمة وتصويتًا للشبكة.

تتضمن الدودة أيضًا وظيفة لجمع رموز مصادقة npm من ملفات التكوين ومتغيرات البيئة، مما يمكنها من الانتشار عبر بيئات المطورين وخطوط أنابيب CI/CD. في وقت التحليل، كانت بعض البنى التحتية للحمولة الثانوية غير نشطة أو مكونة بمحتوى غير ضار، لكن الباحثين يقولون إن هذا قد يتغير في أي وقت.

يجب على المؤسسات التي استخدمت الإصدارات المتأثرة خلال الحادث التعامل مع بيئاتها على أنها مخترقة بالكامل. يشمل ذلك تدوير جميع الأسرار، مثل بيانات اعتماد السحابة، ومفاتيح SSH، ورموز API، وكلمات مرور قواعد البيانات، وتحليل الأنظمة بحثًا عن أي اختراق إضافي.

الأسئلة الشائعة

Trivy هو ماسح ثغرات أمنية شهير تم اختراقه في هذا الهجوم، حيث استغله المهاجمون لنشر برمجيات خبيثة لسرقة بيانات الاعتماد عبر إصداراته الرسمية وGitHub Actions.

جمعت البرمجيات الخبيثة بيانات استطلاع واسعة النطاق، بما في ذلك مفاتيح SSH، وبيانات اعتماد السحابة، ورموز API، وكلمات مرور قواعد البيانات، وملفات التكوين الحساسة، ثم قامت بتسريبها إلى خوادم قيادة وتحكم.

CanisterWorm هي دودة ذاتية الانتشار تستهدف حزم npm، وتثبت أبوابًا خلفية، وتستخدم رموز npm المسروقة لنشر تحديثات ضارة لحزم أخرى. تستخدم حاويات Internet Computer (ICP) لآلية قيادة وتحكم لا مركزية.

التعليقات 0

سجل دخولك لإضافة تعليق

لا توجد تعليقات بعد. كن أول من يعلق!