۲۷ مهر ۱۴۰۴

Techboy

اخبار و اطلاعات روز تکنولوژی

هزاران پروژه منبع باز در معرض خطر به‌دلیل هک ابزار GitHub Actions

پژوهشگران می‌گویند ابزار مخدوش‌شده در محیط GitHub CI/CD اعتبارها را سرقت کرده است؛ رهبران امنیت اطلاعات باید فوراً اقدام کنند.

پژوهشگران می‌گویند ابزار مخدوش‌شده در محیط GitHub CI/CD اعتبارها را سرقت کرده است؛ رهبران امنیت اطلاعات باید فوراً اقدام کنند.

تیم‌های توسعه برنامه که از یک ابزار محبوب در پلتفرم ادغام مستمر و تحویل/استقرار مستمر (CI/CD) GitHub Actions استفاده می‌کنند، نیاز دارند کدهای خود را پاک‌سازی کنند زیرا این ابزار هفته گذشته تحت نفوذ قرار گرفت و برای دزدیدن اعتبارنامه‌ها استفاده شد.

این هشدار پس از آن صادر شد که پژوهشگران در StepSecurity دریافتند تمام نسخه‌های ابزار tj-actions/changed-files تا نسخه ۴۵.۰.۷ توسط یک عامل تهدید در ۱۴ مارس اصلاح شده‌اند. این ابزار معمولاً به توسعه‌دهندگان کمک می‌کند تغییرات فایل‌ها را در یک مخزن شناسایی کنند، اما یک توصیه‌نامه GitHub می‌گوید این تغییر یک اسکریپت پایتون مخرب را اجرا می‌کند که به مهاجمان راه دور اجازه می‌دهد رازهایی مانند کلیدهای API، توکن‌های دسترسی و رمزهای عبور را با خواندن لاگ‌های اکشن‌ها کشف کنند.

این نفوذ توسط به عنوان CVE-2025-30066 شناخته شده است.

بر اساس گزارشی از Endor Labs، این ابزار در بیش از ۲۳,۰۰۰ مخزن GitHub استفاده می‌شود. اقدام نفوذ شده می‌تواند هزاران خط لوله CI را تحت تأثیر قرار دهد، گزارش می‌گوید.

GitHub دسترسی به این ابزار را تا ۱۶ مارس قطع کرد و آن را با نسخه‌ای اصلاح‌شده جایگزین کرد.

ممکن است رازهای خط لوله CI/CD تحت خطر قرار گیرند

«هر مخزن عمومی که بسته‌ها یا کانتینرها را به عنوان بخشی از یک خط لوله CI ایجاد می‌کند، ممکن است تحت تأثیر قرار گرفته باشد»، Endor Labs هشدار می‌دهد. «این به این معناست که احتمالاً هزاران بسته منبع باز ممکن است به خطر افتاده باشند.»

احتمالاً مهاجم به دنبال کشف رازها در مخازن عمومی نبوده است، Endor می‌گوید، زیرا این مخازن از پیش عمومی هستند. «به‌نظر می‌رسد هدف آن‌ها به تخریب زنجیره تأمین نرم‌افزار برای کتابخانه‌ها، باینری‌ها و سازه‌های منبع باز دیگری بوده است که با این ابزار ساخته شده‌اند.»

هشدار به تیم‌های توسعه‌ای که هم مخازن خصوصی و هم عمومی دارند، اعمال می‌شود، Endor اضافه کرد. «اگر این مخازن رازهای خط لوله CI/CD را برای رجیستری‌های آرشیو یا کانتینر به اشتراک بگذارند، این رجیستری‌ها می‌توانند به‌احتمال تحت خطر قرار گیرند.

«ما شواهدی نداریم که تا به‌حال کتابخانه یا کانتینر منبع باز downstream تحت تأثیر قرار گرفته باشد. اما ما توسعه‌دهندگان منبع باز و جامعه امنیت را تشویق می‌کنیم تا با ما همکاری کنند و مراقب تخلفات ثانویه احتمالی باشند.»

در یک مصاحبه روز دوشنبه، CTO Endor Labs، دییمتری استیلیادیس، گفت خطر آسیب به برنامه‌هایی است که از ابزار tj-actions استفاده می‌کردند. اما او افزود، هکرها می‌توانستند از اعتبارنامه‌های دزدیده‌شده در Docker Hub یا سایر مخازن منبع باز برای دسترسی و درج بدافزار در بسته‌های نرم‌افزاری دیگر استفاده کنند. او گفت: «ممکن است بسته‌هایی با بدافزار آلوده داشته باشیم که هیچ‌کس از آن‌ها خبر نداشته باشد. این می‌تواند هزاران یا صدها هزار یا حتی میلیون‌ها باشد… ما واقعاً نمی‌دانیم خسارت واقعی در حال حاضر چه میزان است. در روزهای آینده خواهیم دانست.»

پژوهشگران در Wiz Threat Research در یک وبلاگ گفتند که «ده‌ها» مخازن عمومی تحت تأثیر با رازهای حساس افشا شده شناسایی کرده‌اند و در حال تماس با طرف‌های متاثر هستند.

توصیه‌های GitHub

برای کمک به تعیین اینکه آیا مخازن آن‌ها تحت تأثیر بوده‌اند یا خیر، رهبران امنیت اطلاعات باید لاگ‌های GitHub را برای آدرس‌های IP مشکوک بررسی کنند. اگر هرگونه مورد یافت شد، رازهای فعال در مخازن آن‌ها باید چرخش (بازنشانی) شوند.

پژوهشگران در Wiz Threat Research همچنین گفتند که، همان‌طور که GitHub توصیه می‌کند، توسعه‌دهندگان باید تمام GitHub Actions را به هش‌های خاص کامیت پین کنند نه برچسب‌های نسخه، تا در برابر حملات زنجیره تأمین در آینده محافظت شود. آن‌ها همچنین باید از ویژگی allow‑listing GitHub برای مسدود کردن اجرای Actions غیرمجاز استفاده کرده و GitHub را طوری تنظیم کنند که فقط Actions مورد اعتماد اجرا شوند.

یک حادثه بسیار جدی

در یک مصاحبه صبح دوشنبه، Varun Sharma، مدیرعامل StepSecurity، آن را «یک حادثه بسیار جدی» نامید. شرکت او که یک ابزار تشخیص و پاسخ به نقطه انتهایی برای محیط‌های CI/CD می‌سازد، ارتباطات شبکه خروجی غیرعادی را از گردش‌کارهایی که از tj-actions/changed-files استفاده می‌کردند کشف کرد و به GitHub اطلاع داد که یک نسخه مخرب از ابزار وارد شده است تا اعتبارنامه‌های CI/CD را در لاگ‌های ساخت افشا کند.

«اگرچه نسخه اصلی بازگردانده شده است»، او افزود، «واضح نیست چرا این مورد به خطر افتاده است.»

او گفت که رهبران امنیت اطلاعات یا توسعه باید:

  • بررسی کنید که tj-actions/changed-files در چه گردش‌کارهایی استفاده شده است؛
  • تعیین کنید آیا نسخه‌ی نفوذ شده در خطوط لوله CI/CD استفاده شده است؛
  • اگر تحت تأثیر قرار گرفته است، بلافاصله اعتبارنامه‌های افشا شده شامل کلیدهای API، توکن‌های دسترسی، رمزهای عبور را چرخش (بازنشانی) کنید؛
  • یا به یک جایگزین امن برای این ابزار منتقل شوید یا به نسخه‌ی اصلاح‌شده ارتقاء دهید.

یک روش کارآمد برای نفوذ

عاملان تهدید یاد گرفته‌اند که نفوذ به نرم‌افزار در حین توسعه یک روش کارآمد برای ورود به دامنه وسیعی از محیط‌های فناوری اطلاعات است، به‌جای این‌که یک برنامه را یک‌به‌یک هک کنند. GitHub و سایر مخازن کد منبع باز مانند NPM، GitLab، Ruby on Rails و PyPI به‌تدریج توسط هکرها سوءاستفاده می‌شوند.

حدود یک سال پیش گزارش دادیم که پژوهشگران امنیت نشان دادند چگونه یک GitHub Action به نام Bazel می‌توانست به‌صورت پنهانی (backdoored) باشد. در سال ۲۰۱۲، یک آسیب‌پذیری Rails را گزارش دادیم که می‌توانست برای درج داده‌های غیرمجاز در پایگاه‌دادهٔ برنامهٔ Rails از طریق فرم‌های وب بهره‌برداری شود.

در نتیجه، CISOها باید اطمینان حاصل کنند که توسعه‌دهندگان برنامه‌هایشان پیروی از بهترین شیوه‌های امنیتی را رعایت می‌کنند اگر از پلتفرم‌های منبع باز برای بهبود کد استفاده می‌کنند.

اخبار بیشتر GitHub: