أمن سيبرانيقراءة دقيقتين

حملة Gheist تزرع أكثر من 13,500 فرع في مستودعات GitHub بتوكنات مسروقة لتسريب الـ secrets

كشف فريق Wiz Research عن حملة اسمها Gheist زرعت أكثر من 13,500 فرع في مستودعات أكثر من 850 حسابًا على GitHub. ويتتبع الفريق الحملة منذ 15 سبتمبر 2026، وكانت لا تزال نشطة حتى 24 أكتوبر.

وتبدأ الحملة بـ token مسروق. فتنشئ به فرعًا في كل مستودع يصل إليه، يبدأ اسمه بـ ci-sync-، ويحتوي على ملف workflow واحد في GitHub Actions. ولا يفعل هذا الملف شيئًا سوى طباعة الـ secrets المتاحة للمستودع بترميز base32.

وهنا موضع الخلل. فـ GitHub يخفي الـ secret من سجل التشغيل حين يظهر بنصه الحرفي. أما بعد ترميزه فيصبح نصًا مختلفًا تمامًا، فلا يتعرف عليه آلية الإخفاء ويظهر مكشوفًا. ثم تنزّل الحملة السجل عبر الـ API وتحذف التشغيل خلال ثوانٍ. ولأن البيانات خرجت عبر API الخاص بـ GitHub نفسه، لا يوجد نطاق غريب يمكن حجبه.

ويوضح التقرير أن تقييد الصلاحيات بسطر permissions فارغ يضيّق صلاحيات GITHUB_TOKEN فقط، ولا يمس الـ secrets context. وقد سبق أن أضافت GitHub ملفات قفل لاعتمادات GitHub Actions، لكنها تعالج مشكلة مختلفة، هي تثبيت الكود الذي يعتمد عليه الـ workflow.

ومنذ 28 يوليو 2026 توقف GitHub التشغيلات المشبوهة في المستودعات العامة حتى يوافق عليها أحد، وقد أوقف ذلك الاستغلال هناك فعلًا. لكن هذا الإيقاف لا ينطبق على المستودعات الخاصة، وفيها نجح الاستغلال بحسب التقرير.

ويذكر التقرير ثلاث علامات للبحث عنها: فروع يبدأ اسمها بـ ci-sync-، وتشغيلات حُذفت في أقل من دقيقة، و user agent باسم gheist في سجل التدقيق. وإذا ظهرت إحداها، فكل secret يراه ذلك المستودع يُعد مكشوفًا ويحتاج إلى تغيير، لا ما يُشك فيه فقط. ويوصي التقرير أيضًا بمراجعين على الـ environments التي تحمل secrets الإنتاج، وبتوكنات دقيقة قصيرة العمر بدل الـ personal access tokens.

المصادر

  1. تقرير Wiz Research عن الحملة
  2. توثيق GitHub عن الـ secrets وإخفائها في الـ logs

من عدد الاثنين 15 جمادى الأولى - 26 أكتوبر

أخبار ذات صلة

أخبار الاثنين 15 جمادى الأولى - 26 أكتوبر