گزارش امنیتی Alpine Linux؛ تلاش برای سوءاستفاده از آسیبپذیری بحرانی GitLab — GitLab Security Incident: Attempted Exploitation of CVE-2026-97229
خلاصه
تیم Alpine Linux پس از تشخیص تلاش برای بهرهبرداری از یک آسیبپذیری خطرناک با امتیاز ۱۰ در GitLab، سرور خود را از صفر بازسازی کرد. این رخداد نشان میدهد که بهروزرسانی خود GitLab کافی نیست و اصلاحات مفسر Ruby نیز حیاتی است.
تیم توسعه Alpine Linux جزئیات یک حادثه امنیتی را منتشر کرده است که در آن مهاجمان تلاش کردند از یک آسیبپذیری بحرانی در نمونه (Instance) سرویس GitLab این پروژه سوءاستفاده کنند. اگرچه شواهدیال بر موفقیت قطعی مهاجم یافت نشده، اما به دلیل ماهیت حمله، این زیرساخت کاملاً پاکسازی و از نو برپا شد.
ریشه مشکل: آسیبپذیری CVE-2026-97229
این مشکل یک آسیبپذیری حیاتی با امتیاز CVSS 10.0 است که به نحوه ارزیابی عبارات باقاعده (Regular Expressions) در تنظیمات CI مربوط میشود. مشکل اصلی در موتور Onigmo قرار دارد که موتور داخلی ارزیابی عبارات باقاعده در زبان برنامهنویسی Ruby است.
نکته بسیار مهم فنی این است که آسیبپذیری در خود کدهای GitLab نبود، بلکه ریشه در یک باگ زیرساختی در Ruby داشت. شرکت GitLab این مشکل را با پچ کردن نسخههای بستهبندیشده و رسمی Ruby خود در تاریخ ۱۲ اکتبر حل کرد، اما نسخههای آپدیتشده رسمی Ruby توسط پروژه اصلی (Upstream) کمی بعد منتشر شدند.
روند حمله و واکنش تیم زیرساخت
در روزهای ۲۰ و ۲۱ اکتبر، یک حساب کاربری تازه ایجادشده با ارسال کانفیگهای دستکاریشده CI به سمت سرور تلاش کرد از این باگ بهرهبرداری کند. سرور Alpine Linux در آن زمان روی نسخه آسیبپذیر GitLab اجرا میشد. فرآیند حمله باعث کرش کردن پردازندههای کارگر (Worker Processes) شد و مهاجم حتی تصویر کانتینر (Container Image) گیتلب را نیز دانلود کرده بود تا اکسپلویت خود را دقیقاً با نسخه سرور هماهنگ کند.
نکته غافلگیرکننده برای تیم این بود که ارتقای ساده نسخه GitLab کافی نبود؛ زیرا از آنجا که آنها از پکیجهای سفارشی خود استفاده میکردند، پچ Ruby اعمال نشده بود.
وضعیت مخازن و کلیدهای امضا
تیم Alpine Linux پس از بررسیهای دقیق اطمینان حاصل کرد که:
- مخزن aports و بستههای نرمافزاری دستکاری نشدهاند.
- کلیدهای امضای بستهها و انتشارها روی سرور GitLab قرار نداشتند و کاملاً امن ماندند.
- هیچ شواهدی مبنی بر اجرای کد مخرب، دسترسی به اطلاعات خصوصی یا تغییر در فایلها مشاهده نشد.
درسهای آموختهشده و تغییرات جدید
تیم زیرساخت تصمیم گرفت برای اطمینان کامل، سرور GitLab را به طور کامل از نو راهاندازی کند. همچنین تغییرات زیر در دستور کار قرار گرفت:
- بهروزرسانی فوری Ruby به نسخههای اصلاحشده (۳.۳.۱۳ و بالاتر).
- تسریع در اعمال پچهای امنیتی بحرانی.
- بهبود سیستم لاگبرداری برای رصد اتصالهای خروجی و پایگاه داده.
- استفاده از تگهای امضاشده برای انتشارها.
دیدگاه جامعه برنامهنویسان در Hacker News
در بحثهای انجامشده در هکرنیوز، توسعهدهندگان به یک چالش بزرگ اشاره کردند: افرادی که نرمافزارها را از سورس کامپایل میکنند یا ایمیجهای شخصی خود را میسازند، در مقایسه با کسانی که از ایمیجهای رسمی استفاده میکنند، کار بسیار سختتری در رصد و اعمال پچهای زیرساختی (مثل مشکلات پنهان در مفسرها) دارند و این موضوع نیازمند رصد دائمی اخبار امنیتی است.
این مطلب بهصورت کاملاً خودکار و با هوش مصنوعی از مقالهٔ اصلی و بحث هکرنیوز تهیه شده و ممکن است خطا داشته باشد. حقوق مطلب اصلی متعلق به نویسندهٔ آن است. قوانین و گزارش مشکل