عامل تهدید موسوم به Gheist با سوءاستفاده از حسابهای کاربری هک شده در پلتفرم GitHub، آنها را به ابزاری برای جمعآوری اعتبارنامهها (Credential Harvesting) تبدیل کرده است. این مهاجمان با قرار دادن جریانهای کاری (Workflows) مخرب در قالب GitHub Actions در مخازن خصوصی (Private Repositories)، موفق شدهاند اطلاعات حساس و رمزهای محیطی (Environment Secrets) را استخراج و از طریق APIهای گیتهاب دریافت کنند و سپس برای پاک کردن ردپا، شواهد فعالیت خود را حذف نمایند.
گزارشهای منتشر شده نشان میدهد که این کمپین از اواسط سپتامبر تاکنون، بیش از ۱۳,۵۰۰ شاخه (Branch) مخرب را در بیش از ۸۵۰ حساب کاربری، شامل پروژههای شخصی و مخازن خصوصی سازمانی، ایجاد کرده است.
مکانیزم حمله و دور زدن مکانیزمهای امنیتی
مهاجمان از قابلیت اتوماسیون GitHub Actions برای اجرای دستورات خود استفاده میکنند. آنها شاخهای جدید ایجاد کرده و جریان کاری با نام sync-check را اضافه میکنند. این جریان کاری تلاش میکند تا رمزهای حساس را در لاگهای اجرا (Execution Logs) چاپ کند. نکته کلیدی اینجاست که Gheist برای دور زدن مکانیزم Secret Masking (پنهانسازی رمزها در لاگها)، از کدگذاری Base32 استفاده میکند. با این کار، چون مقدار رمز با متن اصلی در لاگها مطابقت ندارد، سیستم امنیتی گیتهاب قادر به شناسایی و پنهان کردن آن نیست.
در حالی که گیتهاب مکانیزمی برای کنترل جریانهای کاری در مخازن عمومی (Public Repositories) معرفی کرده است، این محافظت شامل مخازن خصوصی (Private Repositories) یا نسخههای GitHub Enterprise Server نمیشود؛ جایی که محققان شاهد اجرای موفقیتآمیز این حملات بودهاند.
هدف قرار دادن زیرساختهای ابری و Runnerها
عامل Gheist همچنین به سمت هدف قرار دادن Self-hosted Runners تکامل یافته است. در نسخههای جدیدتر، این مهاجمان تلاش میکنند تا در میزبانهای اجراکننده (Runner Hosts)، به دنبال توکنهای API، کلیدهای خصوصی (Private Keys)، فایلهای محیطی، اعتبارنامههای ابری و سایر دادههای حساس بگردند. همچنین تلاشهایی برای دسترسی به Docker Socket، متادیتای نمونههای ابری و توکنهای سرویسحساب Kubernetes مشاهده شده است.
شواهد نشان میدهد که پس از اجرای این جریانهای کاری مخرب، از اعتبارنامههای ابری سرقت شده برای پیمایش در سرویسهایی مانند AWS Secrets Manager استفاده شده است.
توصیههای امنیتی برای تیمهای SOC و مدیریت امنیت
- جستجو در شاخهها (Branches) با الگوی
ci-sync-و دنباله شش کاراکتر تصادفی. - بررسی کامیتهایی (Commits) با عنوان
ci: sync config. - مانیتورینگ جریانهای کاری (Workflow Runs) که بلافاصله پس از اتمام، حذف میشوند.
- بررسی فعالیتهای غیرعادی در نقشهای ابری (Cloud Roles) مرتبط با این شاخهها.
- چرخش فوری (Rotation) تمامی رمزها، کلیدها و اعتبارنامههای مربوط به مخازن، سازمانها و محیطهایی که تحت تأثیر قرار گرفتهاند.
هشدار: حذف یک شاخه یا جریان کاری، لزوماً به معنای خنثی شدن نشت اطلاعات نیست؛ زیرا مهاجمان پیش از حذف، دادهها را استخراج کردهاند.