اخیراً هکرها در یک حملهی سایبری پیچیده به ابزارهای تولید نرمافزار، توانستند یک بدافزار خطرناک را درون نسخهی رسمی یک نرمافزار مدیریت رمز عبور بسیار محبوب به نام بیتواردن (Bitwarden) تزریق کنند. این نفوذ که از طریق ابزار گیتهاب اکشنز (GitHub Actions) انجام شد، نشان میدهد که چگونه یک کد مخرب و بهظاهر کوچک میتواند محیط اجرای برنامهها را کاملاً شخم بزند و رمزهای عبور کاربران را به سرقت ببرد.
جزئیات یک حملهی سایبری: مسموم کردن از سرچشمه

مهاجمان در این سناریو به جای اینکه تلاش کنند مستقیماً به سرورهای هدف نفوذ کنند، کل فرایند تولید نرمافزار را آلوده کردهاند. آنها با سوءاستفاده از تنظیمات ناامن در ابزارهای خودکارسازی گیتهاب، موفق شدند کدهای مخرب خود را در قالب یک انتشار بهظاهر معتبر در npm، درون بستههای نرمافزاری جا بزنند.
بستهی آلودهشده حاوی فایلی بود که در پسزمینه اجرا میشد و خود را از دید کاربر پنهان میکرد. این فایل در واقع یک بستر قدرتمند برای توزیع بدافزار بود که کدهای خود را با روشهای استتار و مبهمسازی همراه کرده بود تا شناسایی آن سختتر شود.

نوشدارو+
مسمومسازی زیرساختهای توسعه (CI/CD)، یک تکنیک سایبری است که در آن هکرها بهجای حمله به نرمافزار نهایی، ابزارهای سازنده را هک میکنند. با این کار، کدهای مخربشان در قالب یک انتشار بهظاهر معتبر و از همان مسیر رسمی توزیع، به دست کاربر میرسد.
بدافزار دقیقاً دنبال چه چیزی بود؟
بررسیهای فنی نشان میدهد کد مخربِ قرارگرفته در این بسته، بیشتر از هر چیز بهدنبال اسرار توسعه و زیرساخت میگشت؛ نه رمزهای داخل خزانهی کاربران عادی. هدفهای اصلی آن شامل این موارد بود:
- توکنهای GitHub و npm
- کلیدهای SSH
- فایلهای
.env - اعتبارنامههای سرویسهای ابری مثل AWS، Azure و Google Cloud
- secrets موجود در محیطهای توسعه و CI/CD
به زبان ساده، این بدافزار بیشتر به درد هکرهایی میخورد که میخواهند از یک ابزار توسعه، به انبار کلیدها و مجوزهای حساس یک تیم فنی برسند.
بدافزارها چگونه اطلاعات محرمانه را میدزدند؟
تخریب اصلی این بدافزار زمانی خود را نشان میدهد که وارد فاز جمعآوری و سرقت اطلاعات میشود. این کد مخرب با استفاده از موتور اجرای برنامهی بان (Bun)، با سرعت بسیار بالایی در سیستم قربانی به دنبال کلیدهای حیاتی و رمزهای مهم میگردد.
موارد اصلی که این بدافزار هدف قرار میدهد عبارتند از:
- جستوجو در حافظهی سیستم: بدافزار در محیطهای توسعه و CI/CD، از جمله فرایندهای GitHub Actions runner، به دنبال کلیدهای دسترسی و secrets قابلاستفاده میگشت تا بتواند به بخشهای حساستر زیرساخت نفوذ کند.
- سرقت گواهینامههای ابری: کدهای مخرب کلیدهای مرتبط با زیرساختهای ابری مانند سرویس آمازون (AWS)، آژور و گوگل را استخراج میکنند.
- فایلهای تنظیمات کلیدی: این بدافزار فایلهای پیکربندی حساس مانند کلیدهای ارتباط امن (SSH) کاربران را میدزدد تا در آینده بتواند دوباره به سیستم متصل شود.
روشهای خلاقانه و پنهانی هکرها برای خروج اطلاعات
شاید بپرسید هکرها چگونه دادهها را از سیستم خارج میکنند که کسی متوجه نمیشود؟ بدافزار برای ارسال اطلاعات سرقتشده به سرورهای خود، از روشهای بسیار خلاقانهای استفاده میکند. یکی از این روشها، استخراج دادهها از طریق رابط برنامهنویسی گیتهاب (GitHub API) است.
هکرها با استفاده از توکنهای دزدیدهشده، مخازن کُد جدیدی عمومی در حساب قربانی میسازند. سپس اطلاعات سرقتشده را به صورت رمزنگاریشده در قالب توضیحات سادهی برنامهنویسی روی این مخازن قرار میدهند تا بدون ایجاد حساسیت از شبکهی قربانی خارج شود.
یک جزئیات عجیب: کلید مرگ منطقهای
تحلیل فنی Socket نشان میدهد این بدافزار یک نوع «کلید مرگ منطقهای» هم داشته است. یعنی پیش از ادامه کار، زبان یا منطقه سیستم را بررسی میکرد و اگر نشانههایی از محیط روسی میدید، اجرای خود را متوقف میکرد. این الگو در بعضی بدافزارهای پیچیده دیده میشود و معمولاً برای کمکردن ریسک برخورد با نهادهای محلی در بعضی کشورها به کار میرود.
اگر از نسخه آلوده استفاده شده باشد، چه باید کرد؟
Bitwarden به کاربران احتمالیِ درگیر توصیه کرده این اقدامات را فوراً انجام دهند:
- نسخه آلوده Bitwarden CLI 2026.4.0 را حذف کنند.
- npm cache را پاک کنند.
- موقتاً اجرای npm install scripts را غیرفعال کنند.
- همه توکنها، کلیدها و secrets ذخیرهشده در سیستم یا متغیرهای محیطی را تعویض کنند.
- فعالیتهای GitHub، workflowهای CI و هر تغییر غیرمجاز در credentialها را بررسی کنند.
- نسخه سالم Bitwarden CLI 2026.4.1 را نصب کنند.
این یعنی در چنین حملهای، فقط پاککردن فایل آلوده کافی نیست؛ باید فرض را بر این گذاشت که هر چیزی که آن ابزار به آن دسترسی داشته، ممکن است لو رفته باشد.
چه کسانی واقعاً در خطر بودند؟
طبق بیانیه رسمی بیت واردن، کاربران عادی بیت واردن که فقط از اپ یا افزونه مرورگر استفاده میکنند، در این حادثه هدف اصلی نبودهاند. خود شرکت میگوید فقط کسانی تحت تأثیر قرار گرفتهاند که نسخه 2026.4.0 از Bitwarden CLI را از مسیر npm و در همان بازه زمانی محدود دریافت و اجرا کردهاند. همچنین Bitwarden تأکید کرده که هیچ شواهدی از خطر برای vault data کاربران نهایی یا سیستمهای production پیدا نشده است.
نتیجهگیری
فاجعهی امنیتی اخیر در دنیای ابزارهای مدیریت رمز عبور، پیام روشنی برای تمام صنعت فناوری دارد: امنیت سایبری فقط به معنای ساختن دیوارهای بلند به دور سرورها نیست؛ بلکه ابزارهای ساخت نرمافزار شما نیز باید بهشدت محافظت شوند. حملات به زنجیرهی تأمین ثابت کردهاند که نفوذ به ابزارهای خودکار و بیدفاع، به هکرها کلید دسترسی نامحدودی برای ورود به قلب فناوری و اطلاعات شرکتها را میدهد. پایش مداوم سیستمها و محدود کردن دسترسیها دیگر یک انتخاب ساده نیست، بلکه برای بقای دیجیتال یک ضرورت مطلق است.
پرسشهای تکمیلی
-
آیا این حادثه خودِ اپ اصلی Bitwarden را آلوده کرده بود؟
نه. طبق بیانیه رسمی Bitwarden، مشکل فقط به مسیر توزیع npm برای Bitwarden CLI 2026.4.0 مربوط بود و به کدبیس اصلی CLI، دادههای خزانه کاربران یا سیستمهای production سرایت نکرده بود.
-
اگر من فقط از افزونه مرورگر یا اپ Bitwarden استفاده میکنم، باید نگران باشم؟
در حالت عادی نه. خود Bitwarden گفته کاربران عادی که این نسخه از CLI را از npm در بازهی آلوده دریافت نکردهاند، تحت تأثیر این حادثه نبودهاند.
-
نسخه سالمی که Bitwarden پیشنهاد کرده چیست؟
Bitwarden به کاربران احتمالیِ درگیر توصیه کرده نسخهی آلوده 2026.4.0 را حذف کنند و بعد به Bitwarden CLI 2026.4.1 مهاجرت کنند.
-
چرا این حمله برای تیمهای فنی خطرناکتر از کاربران عادی بود؟
چون بدافزار بیشتر بهدنبال توکنها، کلیدهای SSH، فایلهای .env، secrets محیط CI/CD و اعتبارنامههای ابری میگشت؛ یعنی همان چیزهایی که معمولاً روی ماشین توسعهدهنده یا runnerهای خودکار وجود دارند.
-
آیا فقط نصب بستهی آلوده مهم بود یا اجرای آن هم اهمیت داشت؟
Bitwarden میگوید فقط کسانی درگیر بودهاند که نسخه آلوده را دریافت و اجرا کردهاند. یعنی صرف نگرانی درباره نام Bitwarden کافی نیست؛ مسئله، نصب همان بسته مشخص در همان بازه محدود بوده است.
-
چرا پاککردن فایل آلوده بهتنهایی کافی نیست؟
چون اگر آن بسته اجرا شده باشد، باید فرض را بر این گذاشت که secrets قابلدسترسی در آن محیط ممکن است لو رفته باشند. به همین دلیل Bitwarden و Socket هر دو روی rotation کلیدها و بررسی فعالیتهای GitHub و CI تأکید کردهاند.
-
هکرها اطلاعات دزدیدهشده را چطور از سیستم خارج میکردند؟
تحلیلها میگویند بخشی از دادهها به دامنهی مشکوک audit.checkmarx[.]cx فرستاده میشد و بخشی دیگر با سوءاستفاده از GitHub، در مخزنها و workflowهای تازهساختهشده پنهان میشد.
-
چرا در این حمله نام GitHub Actions زیاد تکرار میشود؟
چون یکی از نقاط حساس حمله، runnerها و workflowهای CI/CD بودهاند؛ جایی که معمولاً توکنها، secrets و دسترسیهای فنیِ ارزشمند برای ساخت و انتشار نرمافزار وجود دارد.
