کمپین بدافزار PromptMink مبتنی بر هوش مصنوعی
محققان امنیت سایبری پس از آنکه یک وابستگی مضر از طریق کدی که توسط مدل زبان بزرگ (LLM) کلود اوپوس از شرکت آنتروپیک نوشته شده بود، به یک پروژه وارد شد، کد مخربی را کشف کردند که درون یک بسته npm پنهان شده بود. این کشف نشان میدهد که چگونه تهدیدات زنجیره تأمین نرمافزار از طریق سوءاستفاده از گردشهای کاری توسعه با کمک هوش مصنوعی در حال تکامل هستند.
بستهای که در مرکز این کمپین قرار دارد، '@validate-sdk/v2'، به عنوان یک کیت توسعه نرمافزار کاربردی برای هش کردن، اعتبارسنجی، رمزگذاری و رمزگشایی و تولید تصادفی امن، در npm ارائه شده بود. در واقع، این بسته برای سرقت اسرار حساس از سیستمهای آسیبپذیر طراحی شده بود. محققان نشانههایی را مشاهده کردند که نشان میدهد این بسته ممکن است با استفاده از هوش مصنوعی مولد، 'vibe-coded' شده باشد. این بسته اولین بار در اکتبر 2025 در npm آپلود شد.
فهرست مطالب
PromptMink با فعالیتهای تهدیدآمیز کره شمالی مرتبط است
محققان این کمپین را PromptMink نامگذاری کردهاند و معتقدند که با گروه تهدید کره شمالی Famous Chollima که با نام Shifty Corsair نیز شناخته میشود، مرتبط است. این گروه قبلاً با عملیات طولانی مدت Contagious Interview و کلاهبرداریهای جعلی IT Worker مرتبط بوده است.
این کمپین نشان دهنده تمرکز مداوم بر اکوسیستم متن باز، به ویژه محیطهای مرتبط با ارزهای دیجیتال و توسعه وب ۳ است.
کامیت مشترک با هوش مصنوعی، وابستگی خطرناکی را معرفی کرد
این بستهی مخرب از طریق یک کامیت در تاریخ ۲۸ فوریه به مخزن یک عامل معاملاتی خودکار وارد شد. طبق گزارشها، این کامیت با همکاری مدل Claude Opus از شرکت Anthropic نوشته شده بود. پس از اضافه شدن، این بسته به مهاجمان امکان دسترسی به کیف پولهای ارز دیجیتال و سرقت وجوه را میداد.
زنجیره وابستگی از طریق چندین بسته منتقل شد. '@validate-sdk/v2' در داخل '@solana-launchpad/sdk' فهرست شده بود که سپس توسط یک بسته سوم به نام openpaw-graveyard استفاده میشد. این بسته به عنوان یک عامل هوش مصنوعی مستقل توصیف شده است که قادر به ایجاد یک هویت اجتماعی درون زنجیرهای در بلاکچین سولانا از طریق پروتکل Tapestry، تجارت ارزهای دیجیتال از طریق Bankr و تعامل با سایر عاملها در Moltbook است.
یک کامیت کد منبع در فوریه ۲۰۲۶، این وابستگی مخرب را اضافه کرد که باعث اجرای کد مخرب و نشت اطلاعات کاربری شد که میتواند داراییهای کیف پول را در معرض خطر قرار دهد.
استراتژی آلودگی لایهای که برای جلوگیری از شناسایی طراحی شده است
مهاجمان از یک ساختار بستهبندی مرحلهای استفاده کردند. بستههای اولیه ظاهراً تمیز به نظر میرسیدند و هیچ کد مخرب آشکاری نداشتند. در عوض، آنها بستههای ثانویهای را وارد کردند که در آنها عملکرد مخرب واقعی ذخیره شده بود. اگر یک بسته ثانویه مخرب شناسایی یا حذف میشد، به سرعت جایگزین میشد.
برخی از بستههای لایه اول شناساییشده در این کمپین عبارتند از:
@solana-launchpad/sdk
@meme-sdk/trade
@validate-ethereum-address/core
@solmasterv3/solana-metadata-sdk
@pumpfun-ipfs/sdk
@solana-ipfs/sdk
این بستهها ادعا میکردند که توابع مربوط به ارزهای دیجیتال را ارائه میدهند و شامل بسیاری از وابستگیهای قابل اعتماد مانند axios و bn.js بودند که به آنها کمک میکرد تا قانونی به نظر برسند. در میان این کتابخانههای قابل اعتماد، تعداد کمتری از وابستگیهای مخرب پنهان شده بودند.
تکنیکهای مخفیکاری مورد استفاده مهاجمان
عاملان تهدید از روشهای مختلفی برای کاهش سوءظن و بهبود پایداری استفاده کردند:
- ایجاد نسخههای مخرب از توابعی که از قبل در کتابخانههای محبوب و قانونی یافت میشوند
- استفاده از نامها و توضیحات اشتباه بستهها که شباهت زیادی به ابزارهای مورد اعتماد دارند.
- تقسیم بدافزار به یک بارگذار به ظاهر بیضرر و یک بار داده مرحله دوم
- چرخاندن، حذف یا شناسایی سریع بستههای ثانویه
اولین بستهی شناختهشدهی مرتبط با این کمپین، '@hash-validator/v2'، در سپتامبر ۲۰۲۵ آپلود شد.
گسترش فراتر از npm و تکامل بدافزار
محققان ماهها بعد نشانههایی از این فعالیت را مشاهده کردند که استفاده از وابستگیهای انتقالی برای اجرای کد مخرب روی دستگاههای توسعهدهندگان و سرقت دادههای ارزشمند را تأیید میکرد. این کمپین بعداً از طریق یک بسته مخرب به نام scraper-npm که در فوریه ۲۰۲۶ با عملکرد مشابه بارگذاری شده بود، به فهرست بستههای پایتون گسترش یافت.
طبق گزارشها، نسخههای جدیدتر این عملیات، دسترسی از راه دور مداوم را از طریق SSH برقرار کرده و از پیلودهای کامپایلشده با Rust برای سرقت کل پروژههای کد منبع و مالکیت معنوی از سیستمهای آلوده استفاده کردهاند.
از سرقت ساده تا تهدید چند پلتفرمی
نسخههای اولیهی این بدافزار، سارقان جاوا اسکریپت مبهمسازی شدهای بودند که به صورت بازگشتی دایرکتوریهای کاری را برای یافتن فایلهای .env و .json جستجو میکردند و سپس آنها را برای انتقال به دامنهای به میزبانی Vercel که قبلاً به فعالیت Famous Chollima مرتبط بود، آماده میکردند.
نسخههای بعدی PromptMink را به عنوان یک برنامه اجرایی Node.js جاسازی کردند. با این حال، این کار حجم payload را از تقریباً ۵.۱ کیلوبایت به تقریباً ۸۵ مگابایت افزایش داد و باعث شد که تحویل بدافزار کارآمدتر نباشد. برای غلبه بر این محدودیت، طبق گزارشها، مهاجمان به NAPI-RS روی آوردند و اجازه دادند افزونههای Node.js از پیش کامپایل شده که با Rust نوشته شده بودند، اجرا شوند.
افزایش ریسک برای زنجیره تأمین متنباز
پیشرفت این کمپین از یک سارق اطلاعات ساده به یک خانواده بدافزار تخصصی چند پلتفرمی که ویندوز، لینوکس و macOS را هدف قرار میدهد، نشاندهنده افزایش قابل توجه توانایی آن است. عملکردهای آن اکنون شامل سرقت اعتبارنامهها، استقرار درب پشتی SSH و سرقت پروژههای توسعه کامل میشود.
محققان به این نتیجه رسیدند که فیمس چولیما کد تولید شده توسط هوش مصنوعی را با روشهای تحویل بسته لایهای ترکیب میکند تا از شناسایی شدن جلوگیری کند و دستیاران کدنویسی خودکار را مؤثرتر از توسعهدهندگان انسانی دستکاری کند.