تهدید بالقوه: پیکربندیهای نادرست در GitHub Actions
مطالعه جدید تیم GReAT نشان داده است که حدود ۲۵۰ هزار مشکل امنیتی بالقوه در GitHub Actions مربوط به مخازن عمومی گیتهاب شناسایی شده است.
اخبار مربوط به حملات زنجیره تأمین (Supply Chain Attacks) با فاصلههای زمانی کوتاه منتشر میشوند. در بسیاری از موارد، این حملات با نفوذ مهاجمان به بستههای نرمافزاری عمومی آغاز میشوند. همین موضوع ممکن است این تصور را ایجاد کند که بزرگترین تهدید در مخازن عمومی، سرقت اطلاعات توسعهدهندگان و تزریق کدهای مخرب به نرمافزارهاست.
اما در واقع، این تنها خطر موجود نیست. پیکربندیهای نادرست در اجزای کلیدی پروژه نیز میتوانند منشأ مشکلات امنیتی جدی باشند.
یکی از مهمترین این اجزا،GitHub Actions است؛ مجموعهای از اسکریپتهای خودکار که برای ایجاد خطوط لوله یکپارچهسازی و تحویل مداوم (CI/CD) استفاده میشوند. خطاها و تنظیمات اشتباه در این اسکریپتها بارها توسط مهاجمان در حملات واقعی مورد سوءاستفاده قرار گرفتهاند.
نمونه بارز این موضوع، کمپین بدافزاری Mini Shai-Hulud است. اگرچه این حمله نیز با نفوذ به حساب نگهدارنده (Maintainer) یک پروژه محبوب آغاز شد، اما بدافزار منتشرشده در این کمپین با سوءاستفاده از یک ضعف در GitHub Actions موفق به سرقت اطلاعات محرمانه (Secrets) شد.
کارشناسان با استفاده از مجموعه قوانین جدید، وضعیت امنیتی GitHub Actions را در حدود ۳۰ هزار مخزن محبوب گیتهاب بررسی کردند.
نتایج نشان داد که تنها ۱۰ درصد از این مخازن دارای خطوط لوله خودکارسازی بودند که هیچ نگرانی امنیتی در آنها مشاهده نشد.
نتایج تفصیلی تحقیق
در مجموع، حدود ۱۳۰ هزار خط لوله CI/CD مورد اسکن قرار گرفته و بیش از ۲۵۰ هزار مورد انحراف احتمالی از توصیههای امنیتی برای پیکربندی CI/CD را شناسایی شد.
اگرچه این موارد بهتنهایی آسیبپذیری محسوب نمیشوند، اما نشاندهنده بخشهایی هستند که نیازمند بازبینی دقیقتر و اصلاح تنظیمات امنیتی هستند.
بر اساس این بررسی:
۵۹.۸ درصد از موارد در سطح ریسک پایین قرار داشتند.
۳۹.۸ درصد دارای ریسک متوسط بودند.
۰.۴ درصد نیز بهعنوان ریسک بالا طبقهبندی شدند.
علاوه بر این، در هشت مخزن آسیبپذیریهای بحرانی شناسایی شد که میتوانستند زمینهساز حملات زنجیره تأمین شوند.
این مخازن طیف گستردهای از کاربردها را پوشش میدادند؛ از جمله:
راهکارهای هوش مصنوعی برای سازمانها
سرویسهای توسعهدهندگان و ابزارهای خودکارسازی
ابزارهای تست و ارزیابی امنیت
رایجترین ضعفهای شناساییشده
بررسی GitHub Actions نشان داد که متداولترین مشکلات عبارتاند از:
تعریف ضمنی یا بیش از حد گسترده مجوزهای دسترسی (Permissions)
عدم استفاده از نسخههای ثابت (Version Pinning) برای وابستگیها (Dependencies)
اعمال برخی تنظیمات در سطح کلی Workflow بهجای بخشهای محدودتر
علاوه بر این، چند الگوی خطرناکتر نیز مشاهده شد، از جمله:
قرار گرفتن اطلاعات محرمانه (Secrets) در سطح بالای تنظیمات
تعریف شرایط اجرای بالقوه ناامن
پردازش غیرایمن دادههای ورودی از منابع خارجی
این موارد نسبت به سایر خطاها شیوع بسیار کمتری داشتند.
چگونه از این تهدیدها جلوگیری کنیم؟
پیکربندیهای نادرست در GitHub Actions میتوانند خطوط لوله توسعه نرمافزار را به ابزاری در اختیار مهاجمان تبدیل کنند؛ ابزاری که امکان نفوذ به محیط توسعه یا حتی حمله به زیرساختهای سازمان را فراهم میکند.
شناسایی بهموقع این مشکلات به توسعهدهندگان کمک میکند تا فرآیندهای CI/CD ایمنتری طراحی کرده و خطر حملات زنجیره تأمین را به حداقل برسانند.