GitLab has remediated an issue in GitLab EE affecting all versions from 18.7 before 18.9.7, 18.10 before 18.10.6, and 18.11 before 18.11.3 that, in customizable analytics dashboards, could have allowed an authenticated user to execute arbitrary JavaScript in the context of other users' browsers due to improper input sanitization.
GitLab Enterprise Edition contains a stored cross-site scripting (XSS) vulnerability in customizable analytics dashboards affecting versions 18.7-18.9.6, 18.10.0-18.10.5, and 18.11.0-18.11.2. An authenticated attacker can inject malicious JavaScript that executes in other users' browsers, potentially leading to session hijacking, credential theft, and unauthorized actions. With a CVSS score of 8.7 and no patch currently available, immediate compensating controls are critical for Saudi organizations using GitLab EE.
IMMEDIATE ACTIONS:
1. Identify all GitLab EE instances running affected versions (18.7-18.9.6, 18.10.0-18.10.5, 18.11.0-18.11.2)
2. Restrict access to analytics dashboards to essential personnel only
3. Disable customizable analytics dashboard features if possible
4. Review audit logs for suspicious dashboard modifications or JavaScript injections
5. Monitor for indicators of XSS exploitation (unusual JavaScript execution, session anomalies)
COMPENSATING CONTROLS:
1. Implement Web Application Firewall (WAF) rules to detect and block JavaScript injection patterns in dashboard parameters
2. Deploy Content Security Policy (CSP) headers with strict script-src directives
3. Enable GitLab audit logging and forward logs to SIEM for real-time monitoring
4. Implement network segmentation to limit dashboard access to trusted networks
5. Conduct security awareness training on XSS risks for development teams
PATCHING GUIDANCE:
1. Monitor GitLab security advisories for patch releases (18.9.7, 18.10.6, 18.11.3 or later)
2. Plan immediate patching upon patch availability
3. Test patches in non-production environments first
4. Establish maintenance windows for production upgrades
DETECTION RULES:
1. Monitor for POST/PUT requests to /api/v4/dashboards with script tags or event handlers
2. Alert on analytics dashboard modifications by non-admin users
3. Track JavaScript execution from dashboard contexts
4. Monitor for unusual API calls to dashboard endpoints
الإجراءات الفورية:
1. تحديد جميع نسخ GitLab EE التي تعمل بالإصدارات المتأثرة (18.7-18.9.6، 18.10.0-18.10.5، 18.11.0-18.11.2)
2. تقييد الوصول إلى لوحات معلومات التحليلات للموظفين الأساسيين فقط
3. تعطيل ميزات لوحات معلومات التحليلات القابلة للتخصيص إن أمكن
4. مراجعة سجلات التدقيق للتعديلات المريبة على لوحات المعلومات أو حقن JavaScript
5. مراقبة مؤشرات استغلال XSS (تنفيذ JavaScript غير عادي، شذوذ الجلسة)
تدابير التعويض:
1. تنفيذ قواعد جدار حماية تطبيقات الويب (WAF) للكشف عن أنماط حقن JavaScript وحجبها
2. نشر رؤوس سياسة أمان المحتوى (CSP) مع توجيهات script-src صارمة
3. تفعيل تسجيل تدقيق GitLab وإعادة توجيه السجلات إلى SIEM للمراقبة في الوقت الفعلي
4. تنفيذ تقسيم الشبكة لتقييد الوصول إلى لوحات المعلومات للشبكات الموثوقة
5. إجراء تدريب الوعي الأمني على مخاطر XSS لفرق التطوير
إرشادات التصحيح:
1. مراقبة استشارات أمان GitLab لإصدارات التصحيح (18.9.7، 18.10.6، 18.11.3 أو أحدث)
2. التخطيط للتصحيح الفوري عند توفر التصحيح
3. اختبار التصحيحات في بيئات غير الإنتاج أولاً
4. إنشاء نوافذ صيانة لترقيات الإنتاج
قواعد الكشف:
1. مراقبة طلبات POST/PUT إلى /api/v4/dashboards مع علامات script أو معالجات الأحداث
2. التنبيه على تعديلات لوحات معلومات التحليلات من قبل المستخدمين غير الإداريين
3. تتبع تنفيذ JavaScript من سياقات لوحات المعلومات
4. مراقبة استدعاءات API غير العادية لنقاط نهاية لوحات المعلومات