شرکت GitLab یک آسیبپذیری امنیتی بحرانی با شناسه CVE-2026-89078 را در نسخههای Community Edition (CE) و Enterprise Edition (EE) شناسایی و رفع کرده است. این نقص امنیتی که امتیاز CVSS بسیار بالای 9.9 را دریافت کرده، به کاربران احراز هویت شده اجازه میدهد تا کد دلخواه خود را روی سرور GitLab اجرا کنند.
تحلیل فنی آسیبپذیری
این مشکل ناشی از یک نقص از نوع Double Free در هنگام تجزیه و تحلیل (Parsing) عبارتهای منظم (Regular Expressions) خاص در پیکربندیهای CI/CD است. زمانی که یک کاربر احراز هویت شده با دسترسی به تعریف یا تغییر تنظیمات CI/CD، یک عبارت منظم دستکاری شده (Specially Crafted) را ارسال کند، این نقص منجر به فساد حافظه و در نهایت اجرای کد از راه دور (RCE) روی سرور میشود.
جزئیات دسترسی و پیچیدگی
- سطح دسترسی: کاربر باید احراز هویت شده باشد و دسترسی لازم برای تغییر پیکربندی CI/CD را داشته باشد.
- پیچیدگی حمله (Attack Complexity): با وجود امتیاز بالای CVSS، تحلیلهای فنی نشان میدهد که پیچیدگی حمله بالا است، زیرا مسیر آسیبپذیر وابسته به وضعیت (State-dependent) بوده و اکسپلویتهای Double-free به طور ذاتی ناپایدار هستند.
- تاثیرات: این حمله منجر به نقض کامل محرمانگی (Confidentiality) و یکپارچگی (Integrity) دادهها در سطح سرور میگردد.
نسخههای آسیبپذیر و اصلاحیه
نسخههای زیر تحت تاثیر این آسیبپذیری قرار دارند و باید سریعاً بهروزرسانی شوند:
- نسخههای 19.2 پیش از 19.2.7
- نسخههای 19.3 پیش از 19.3.3
- نسخههای 19.4 پیش از 19.4.1
توصیههای امنیتی برای مدیران SOC و CISO
برای کاهش ریسک در محیطهای سازمانی، اقدامات زیر توصیه میشود:
- بررسی فوری: شناسایی تمامی نمونههای GitLab که در بازههای نسخهای ذکر شده فعال هستند.
- مدیریت دسترسیها: شناسایی تمامی حسابهای کاربری و گروههایی که اجازه ویرایش پیکربندی CI/CD را دارند و برخورد با آنها به عنوان حسابهای دارای سطح دسترسی بالا (Privileged).
- کنترلهای جبرانی: در صورتی که بهروزرسانی فوری امکانپذیر نیست، دسترسیهای پیکربندی CI/CD را به محدودترین حالت ممکن (فقط مدیران مورد اعتماد) کاهش داده و نظارت بر تغییرات Pipeline را افزایش دهید.