
أضافت CISA الثغرة CVE-2026-97229 في GitLab، ودرجتها 10.0 وفق CVSS، إلى فهرس الثغرات المستغلة. وتتحدث Alpine Linux عن محاولة هجوم على خادمها الذي ظل معرضًا للخطر بعد التحديث، لأن الإصلاح يعتمد أيضًا على إصدار Ruby المستخدم.
ماذا حدث
في 29 أكتوبر 2026، أضافت CISA الثغرة CVE-2026-97229 إلى فهرس الثغرات المستغلة، ومنحت الوكالات الفدرالية الأمريكية مهلة حتى 1 نوفمبر مع إلزامها بإجراء فحص جنائي رقمي. وتصنفها GitLab على أنها حرجة بدرجة 10.0 وفق CVSS: إذ يتيح تجاوز عدد صحيح في مترجم التعبيرات النمطية الخاص بإعدادات CI/CD لمستخدم غير مصادق، في ظروف معينة، تنفيذ شيفرة على الخادم. وقد أصلحتها GitLab في 12 أكتوبر في الإصدارات 19.4.2 و19.3.5 و19.2.8. وأعلنت Alpine Linux في 28 أكتوبر أن مهاجمًا حاول استغلالها ضد خادم GitLab الخاص بالمشروع يومي 20 و21 أكتوبر.
من المتأثر وكيف يدخل المهاجمون
تتأثر إصدارات Community وEnterprise ذاتية الإدارة ابتداءً من 19.2، أما GitLab.com وDedicated فقد جرى تصحيحهما. يكمن الخلل في Onigmo، محرك التعبيرات النمطية المدمج في Ruby، ويعدّل إصلاح GitLab نسخة Ruby الموجودة في حزمها وصورها الرسمية. وقد ثبّتت Alpine أولًا الإصدار 19.3.4 عن طريق الخطأ، ثم 19.3.6 في صورة مبنية على Ruby القياسي، وهي لا تتضمن الإصلاح. وباستخدام حساب جديد وإعدادات CI معدّة خصيصًا، تسبب المهاجم في تعطل عمليات GitLab ثماني مرات. لم تعثر Alpine على دليل على تنفيذ شيفرة لكنها لم تستطع استبعاده، فأعادت بناء الخادم من الصفر وأعادت تعيين كل كلمات المرور واستبدلت المفاتيح السرية لـ GitLab. وتقول إن إصداراتها وحزمها فُحصت ولم تتعرض للتعديل، وإن مفاتيح التوقيع لم تُخزَّن قط على هذا الخادم.
ماذا تفعل الآن
- تحقق من الإصدار باستخدام
sudo gitlab-rake gitlab:env:info. - حدّث إلى أحدث تصحيح في فرعك: 19.5.3 أو 19.4.5 أو 19.3.7 أو 19.2.10.
- إذا كنت تبني GitLab بنفسك (من الشيفرة المصدرية أو في حاوية خاصة)، فتحقق من
ruby -v: يلزم 3.3.13 أو 3.4.12 أو 4.0.9 أو أحدث. أعد تنزيلalpinelinux/gitlab:19.3.6إذا حصلت عليها قبل 27 أكتوبر؛ أما الوسوم الأقدم فهي معرضة للخطر. - ابحث عن آثار: طبّق قواعد الكشف الست التي نشرتها GitLab وافحص تعطل العمليات وأخطاء 502 ومهام CI الفاشلة والحسابات المسجلة حديثًا. لا تثبت النتيجة النظيفة الكثير: فبحسب Alpine، لا يترك الاستغلال الناجح أي تعطل أو أثر في سجلات الويب.
- عند الشك، أعد البناء واستبدل المفاتيح السرية وكلمات المرور ومتغيرات CI/CD ورموز runners وأسرار webhooks. واشترط موافقة مسؤول على الحسابات الجديدة.
- راجع تطبيقات Ruby الأخرى: تحتاج الشيفرة التي تمرر مدخلات غير موثوقة إلى
Regexp.newأوRegexp.unionأو إلى نمط مُدرج إلى نسخة Ruby مصححة. وبحسب فريق Ruby، لا يوفرRegexp.timeoutولا تحديد الطول حماية موثوقة.
رأينا
لا يثبت رقم الإصدار أن الخادم مصحح عندما يكون الإصلاح في مكوّن تابع: يجب أن يشمل الفحص عملية البناء كلها، ولا سيما في الصور الخاصة. وتجمع منصة الشيفرة بين الشيفرة المصدرية وأسرار النشر، فلا ينبغي تركها مفتوحة للإنترنت كله. احتفظ بسجلات كافية، بما فيها الاتصالات الصادرة، لتتمكن من الإجابة حين يُطرح سؤال الاختراق.
المصادر
- GitLab — Critical Patch Release: 19.4.2, 19.3.5, 19.2.8
- CISA — Known Exploited Vulnerabilities Catalog: CVE-2026-97229
- Alpine Linux — GitLab security incident: attempted exploitation of CVE-2026-97229
- Alpine Linux — GitLab is back: what you need to do
- Ruby — Regexp fixes for GitLab CVEs
- GitLab — Patch Release 19.5.3
كيف نختار تحليلاتنا ونتحقق منها ونكتبها ←
هل خادمك مكشوف؟ أجرِ فحصًا مجانيًا — معلومات عامة فقط، دون اختراق:
هل تخشون أن تكون خوادمكم مكشوفة؟ يقوم فريقنا بتدقيق البنى التحتية Linux والسحابية وتحديثها ومراقبتها على مدار الساعة.
تحدّث إلى خبير خدماتنا لإدارة الخوادم ←

