داده‌های شما در خطر: جمع‌آوری و پاکسازی آن‌ها

09 شهریور 1404 داده‌های شما در خطر: جمع‌آوری و پاکسازی آن‌ها

 روابط عمومی شرکت ایدکو (توزیع‌کننده‌ی محصولات کسپرسکی در ایران)؛  بسته‌های پلت‌فرم محبوب ساخت و سیستم بهینه‌سازی CI/CD به نام Nx در شب ۲۶ تا ۲۷ اوت آلوده شدند. اسکریپتی مخرب به بسته‌های این سیستم اضافه شد؛ بسته‌هایی که طبق آمار مخزن  npm، بیش از پنج میلیون بار دانلود هفتگی دارند. هزاران توسعه‌دهنده که از Nx برای شتاب‌دهی و بهینه‌سازی توسعه برنامه‌ها استفاده می‌کردند، داده‌های حساسشان به سرقت رفت: توکن‌های npm و GitHub، کلیدهای SSH، کیف پول‌های رمزارز و کلیدهای API همگی به مخازن عمومی GitHub آپلود شدند.  این نشت گسترده داده‌های محرمانه، تهدیدی بلندمدت برای حملات زنجیره تأمین محسوب می‌شود: حتی اگر بسته‌های مخرب از سیستم‌های آلوده حذف شوند، مهاجمان همچنان ممکن است توانایی نفوذ به برنامه‌هایی را داشته باشند که توسط این هزاران توسعه‌دهنده ساخته شده‌اند.

جدول زمانی حمله و پاسخ

مهاجمان با استفاده از یک توکنِ سرقتی که برای یکی از نگه‌دارندگان بسته Nx صادر شده بود، در فاصله دو ساعته بین ساعت 22:32 به وقت UTC روز 26 اوت تا 0:37 روز 27 اوت، چندین نسخه مخرب از بسته Nx و افزونه‌های آن را منتشر کردند. دو ساعت بعد، پلتفرمnpm تمام نسخه‌های آلوده این بسته‌ها را حذف کرد و یک ساعت بعد، مالکان Nx توکن سرقت‌شده را باطل کردند؛ در نتیجه، مهاجمان دسترسی خود به مخزن Nx را از دست دادند. در همین زمان، هزاران مخزن عمومی حاوی داده‌های سرقت‌شده توسط اسکریپت مخرب، در GitHub ظاهر شدند.

ساعت 9:05 به وقت UTC روز 27 اوت، GitHub واکنش نشان داد و تمام مخازن درز کرده را خصوصی و غیرقابل جست‌وجو کرد. با این حال، داده‌های سرقت‌شده بیش از 9 ساعت به‌صورت عمومی در دسترس بودند و چندین بار توسط گروه‌های مجرمان سایبری و پژوهشگران دانلود شدند.

در مجموع، 19 نسخه آلوده از Nx و افزونه‌های آن منتشر شد:

  •          @nx: 20.9.0، 20.10.0، 20.11.0، 20.12.0، 21.5.0، 21.6.0، 21.7.0، 21.8.0
  •          @nx/devkit: 20.9.0، 21.5.0
  •          @nx/enterprise-cloud: 3.2.0
  •          @nx/eslint: 21.5.0
  •          @nx/js: 20.9.0، 21.5.0
  •          @nx/key: 3.2.0
  •          @nx/node: 20.9.0، 21.5.0
  •          @nx/workspace: 20.9.0، 21.5.0

چطور این حمله پا گرفت؟

برای مدت کوتاهی از تاریخ 21 اوت، کد Nx از یک جریان کار آسیب‌پذیر[1]استفاده می‌کرد که امکان تزریق کد دلخواه را فراهم می‌ساخت. مهاجمان از این ضعف سوءاستفاده کردند و در تاریخ 24 اوت فایل publish.yml را تغییر دادند و توکن npm را استخراج کردند که دسترسی انتشار بسته‌ها را فراهم می‌کرد. اگرچه این آسیب‌پذیری برطرف شد، اما نشت توکن تا زمان سوءاستفاده در حمله 26 اوت شناسایی نشد.

ویژگی‌ها و اهداف بدافزار
بسته‌های Nx با استفاده از یک اسکریپت مخرب پس از نصب به نام telemetry.js آلوده شدند. این اسکریپت محیط‌های توسعه روی macOS و سیستم‌های مبتنی بر *nix را هدف قرار می‌دهد (در صورت اجرا روی ویندوز، اسکریپت مخرب بلافاصله متوقف می‌شود).

پس از اجرا، اسکریپت سیستم آلوده را برای یافتن انواع داده‌های زیر جست‌وجو می‌کند:

  •          ذخیره‌سازهای کلید و کیف‌پول‌های رمزارزی MetaMask، Electrum، Ledger، Trezor، Exodus، Phantom، Solflare
  •          فایل‌های تصادفی ذخیره‌سازی کلید ( *key، *keystore.json، UTC–، IndexedDB)
  •          توکن‌های احراز هویت شخصی GitHub
  •          توکن‌های دسترسی npm
  •          فایل‌های .env
  •          کلیدهای خصوصی (id_rsa) RSA

شایان ذکر است که برای انجام جست‌وجوها از ابزارهای خط فرمان مدل‌های زبانی بزرگ (LLM) محبوب استفاده شده بود. اگر ابزارهای CLI مربوط به Anthropic Claude، Amazon Q یا Google Gemini روی سیستم نصب بودند، اسکریپت یک پرس‌وجوی ناامن اجرا می‌کرد که شامل یافتن همه انواع داده‌های ذکرشده می‌شد. تمام داده‌های یافت‌شده به صورت مبهم‌شده (چندین بار رمزگذاری‌شده با base64  در GitHub آپلود می‌شد. بدافزار برای این کار از توکن‌های سرقت‌شده GitHub استفاده می‌کرد و به نمایندگی از قربانی یک مخزن عمومی با نام‌های s1ngularity-repository، s1ngularity-repository-0  یا s1ngularity-repository-1 ایجاد کرده و یک فایل واحد به نام results.b64 را در آن بارگذاری می‌کرد. به نظر می‌رسد مهاجمان قصد دارند به سرعت از داده‌های سرقت‌شده بهره‌برداری کنند؛ چرا که اسکریپت مخرب هیچ تلاشی برای پنهان‌کاری نکرده و برعکس، به‌طور تهاجمی تلاش می‌کرد قربانی را از دسترسی به سیستم‌های کاری محروم کند. برای این منظور، فرمان sudo shutdown به فایل‌های ‎~/.bashrc و ‎~/.zshrc اضافه می‌شد و در نتیجه، هر نشست جدید ترمینال بلافاصله منجر به خاموش شدن سیستم می‌گردید.

چگونه سیستم‌های خود را آزمایش کنید؟
سازمان‌هایی که از Nx استفاده می‌کنند باید نسخه‌های بسته‌های خود را بررسی کرده و حساب‌های GitHub و لاگ‌ها را ممیزی کنند.

  • با دستور npm ls nxنسخه‌های بسته Nx در حال استفاده را بررسی کنید.
  • وجود هرگونه بسته Nx را در فایل package-lock.jsonبررسی کنید.
  • لاگ‌های GitHub را برای رویدادهای امنیتی بررسی کنید.

اگر مخازنی با نام s1ngularity-repository* پیدا شد، فایل‌های results.b64 را برای بررسی بیشتر دانلود کرده و سپس آن‌ها را از GitHub حذف کنید.

هنگام شناسایی مخازن مخرب اقدامات زیر را انجام دهید:

  • پوشه node_modules را به طور کامل حذف کنید:
    rm -rf node_modules
  • کش npm را پاک کنید:
    npm cache clean --force
  • فایل‌های ‎~/.bashrc و ‎~/.zshrc را بررسی کرده و دستورات اضافی را پاک کنید.
  • یک نسخه آرشیو برای بررسی تهیه کرده و فایل‌های/tmp/inventory.txt و /tmp/inventory.txt.bak را از سیستم حذف کنید.
  • نسخه‌های مخرب بسته‌ها را از فایل package-lock.json حذف کنید.
  • نسخه‌های امن بسته‌ها را دوباره نصب کنید.

مهم‌ترین و فوری‌ترین اقدام برای سیستم‌های آلوده، به‌روزرسانی تمام اسراری است که ممکن است بدافزار به آن‌ها دسترسی پیدا کرده باشد، از جمله توکن‌های شخصی GitHub (PAT)، توکن‌های npm، کلیدهای SSH، کلیدهای API موجود در فایل‌های .env و کلیدهای  Claude، Gemini و Q. همچنین باید به نظارت بر مخازن GitHub خود ادامه دهید. اول اینکه، حتی پس از انجام تمام این مراحل، ممکن است نسخه‌های تروجان‌زده Nx روی سیستم‌های آلوده باقی مانده باشند که همچنان اطلاعات سرقت‌شده را دانلود می‌کنند. دوم اینکه، اگر مهاجمان پیش از تغییر توکن‌ها موفق به استفاده از آن‌ها شده باشند، این احتمالاً در قالب کامیت‌های غیرمجاز یا تغییرات مخرب در GitHub Actions خود را نشان خواهد داد.

 

[1] GitHub Action Workflow

 

 کسپرسکی آنلاین (ایدکو)

کسپرسکی اسم یکی از بزرگترین شرکتهای امنیتی و سازنده آنتی ویروس است که برخی از کاربران اشتباهاً این شرکت و محصولات آنتی ویروس آن را با عناوینی نظیر کسپرسکای،کاسپرسکی، کسپراسکای، کسپراسکای، و یا کاسپراسکای نیز می‌شناسد. همچنین لازم به ذکر است مدیرعامل این شرکت نیز یوجین کسپرسکی نام دارد.

 

 

محصولات مرتبط

  • Kaspersky Internet Security for Android

    امنیت پیشرفته‌ای که همیشه همراه شماست بخش مهمی از زندگی اکثر ما اکنون روی گوشی‌ها و تبلت‌هاست- پس به امنیت موبایلی نیاز دارید که شما را همیشه امن نگه ...

    11,014,500 ریال
    خرید
  • Kaspersky Cloud Password Manager

    Kaspersky Cloud Password Manager ابزار مدیریت کلمه عبور ابری کسپرسکی (KCPM) ضمن ذخیره ایمن تمامی کلمات عبور مورد استفاده شما برای وبسایت‌ها، اپلیکیشن‌ها، و شبکه‌های اجتماعی آنها را در تمامی ...

    9,916,200 ریال16,527,000 ریال
    خرید
  • Kaspersky Safe Kids

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

    9,916,200 ریال16,527,000 ریال
    خرید
  • Kaspersky Security Cloud Personal

    تمام اپ‌های امنیتیِ ما در دستانتان. به کل خانواده‌ی اپ‌های ما برای دسکتاپ و موبایل دسترسی پیدا کنید. از آنتی‌ویروس گرفته تا ابزارهای حریم خصوصی و اجرایی، هر کدام را به میل ...

    110,239,500 ریال
    خرید
  • Kaspersky Standard

    سیستم امنیتی بهبودیافته به همراه تقویت‌کننده عمکرد دستگاه طرح امنیتی استاندارد ما، نه تنها سیستم امنیتی قدرتمندی را برای انواع ویروس‌ها، بدفزارها و باج‌افزارها ارائه می‌دهد ...

    18,711,000 ریال31,185,000 ریال
    خرید
  • Kaspersky Plus

    امنیت. کارایی. حریم خصوصی. همه در یک برنامه با کاربری آسان کسپرسکی پلاس با ارائه امنیت سایبری نسل بعد، شما در برابر ویروس‌ها، باج‌افزارها و بدافزارهای جدید محافظت کند - بدون ...

    26,831,700 ریال44,719,500 ریال
    خرید
  • Kaspersky Premium

    حفاظت کامل از دستگاه ها، حریم خصوصی و هویت شما با محصول Kaspersky Premium تمام نیازهای امنیتی خود و خانواده‌تان را پوشش دهید. حفاظت پیشرفته ...

    28,702,800 ریال47,838,000 ریال
    خرید
  • Kaspersky Small Office Security

    محافظت در حین کار Kaspersky Small Office Security به طور خاص برای سازمان‌هایی طراحی شده است که 5 تا 50 دستگاه کامپیوتر در خود جای داده‌اند. نصب آن بسیار آسان است؛ مدیریت آن ...

    119,070,000 ریال198,450,000 ریال
    خرید
  • Kaspersky Small Office Security

    امنیت ادارات کوچک

    190,505,700 ریال317,509,500 ریال
    خرید
  • Kaspersky Small Office Security

    امنیت ادارات کوچک

    142,877,700 ریال238,129,500 ریال
    خرید
  • Kaspersky Small Office Security

    228,872,700 ریال381,454,500 ریال
    خرید
  • Kaspersky Small Office Security

    166,691,700 ریال277,819,500 ریال
    خرید
  • Kaspersky Small Office Security

    266,578,200 ریال444,297,000 ریال
    خرید
  • Kaspersky Small Office Security

    190,505,700 ریال317,509,500 ریال
    خرید
  • Kaspersky Small Office Security

    304,945,200 ریال508,242,000 ریال
    خرید
  • Kaspersky Small Office Security

    214,319,700 ریال357,199,500 ریال
    خرید
  • Kaspersky Small Office Security

    342,650,700 ریال571,084,500 ریال
    خرید
  • Kaspersky Small Office Security

    218,288,700 ریال363,814,500 ریال
    خرید
  • Kaspersky Small Office Security

    349,265,700 ریال582,109,500 ریال
    خرید
  • Kaspersky Small Office Security

    307,591,200 ریال512,652,000 ریال
    خرید
  • Kaspersky Small Office Security

    492,149,700 ریال820,249,500 ریال
    خرید
  • Kaspersky Small Office Security

    396,893,700 ریال661,489,500 ریال
    خرید
  • Kaspersky Small Office Security

    635,033,700 ریال1,058,389,500 ریال
    خرید
  • Kaspersky Small Office Security

    479,581,200 ریال799,302,000 ریال
    خرید
  • Kaspersky Small Office Security

    767,333,700 ریال1,278,889,500 ریال
    خرید
  • Kaspersky Small Office Security

    909,556,200 ریال1,515,927,000 ریال
    خرید
  • Kaspersky Small Office Security

    1,455,293,700 ریال2,425,489,500 ریال
    خرید

نظر خودتان را ارسال کنید


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