آخرین اخبار
همهٔ اخبار
مدیریت آسیب‌پذیری گزارش بحرانیت ۶/۱۰

آسیب‌پذیری MCPhantom: عامل‌های هوش مصنوعی در حال نصب سرورهای MCP قدیمی و بدون وصله

آسیب‌پذیری MCPhantom: عامل‌های هوش مصنوعی در حال نصب سرورهای MCP قدیمی و بدون وصله

تحقیقات جدید انجام شده توسط Glow Labs نشان می‌دهد که عامل‌های کدنویسی هوش مصنوعی (AI coding agents) در حال نصب سرورهای پروتکل مدل بافت (Model Context Protocol یا MCP) هستند که منسوخ شده و دیگر هیچ وصله‌ای (Patch) برای آن‌ها منتشر نخواهد شد. این پدیده که محققان آن را MCPhantom نامیده‌اند، یک ریسک جدید و جدی در زنجیره تأمین (Supply Chain) ایجاد کرده است.

الگوی MCPhantom و ریشه مشکل

بررسی رونوشت‌های جلسات واقعی کدنویسی با هوش مصنوعی نشان داد که در ۹۸٪ موارد، عامل‌های هوش مصنوعی نام بسته‌های (Packages) قدیمی را از داده‌های آموزشی (Training Data) خود استخراج می‌کنند. برای مثال، زمانی که توسعه‌دهنده از عامل هوش مصنوعی می‌خواهد یک “GitHub MCP” را راه‌اندازی کند، عامل به جای استفاده از سرور رسمی و نگهداری‌شده‌ی GitHub، از یک سرور مرجع قدیمی متعلق به Anthropic استفاده می‌کند که آرشیو شده و هیچ به‌روزرسانی امنیتی برای آن در نظر گرفته نشده است.

این الگو در ابزارهای مختلفی از جمله Claude Code، Cursor، Codex CLI، Claude Cowork و مدل‌های شرکت‌های Anthropic، OpenAI و xAI مشاهده شده است.

آسیب‌پذیری‌های بحرانی و خطر RCE

در این سرورهای مرجع، چهار آسیب‌پذیری با سطح شدت بالا (High-severity) شناسایی شده است. جدی‌ترین مورد، یک باگ اجرای کد از راه دور (Remote Code Execution یا RCE) در سرور Puppeteer است. این آسیب‌پذیری از طریق تزریق دستور (Prompt Injection) قابل بهره‌برداری است؛ به این صورت که مهاجم می‌تواند با یک دستور ساده، عامل هوش مصنوعی را وادار کند تا به جای مرورگر، فرآیندهای مخرب دیگری را روی سیستم اجرا کند. از آنجایی که توسعه‌دهنده معمولاً اجازه دسترسی به وب را به عامل می‌دهد، این سطح از دسترسی می‌تواند به اجرای دستورات مخرب نیز گسترش یابد.

چالش در شناسایی و پایش (Detection)

شناسایی این تهدید برای تیم‌های امنیتی بسیار دشوار است، زیرا:

  • ابزارهای EDR: فرآیند نصب این بسته‌ها توسط Node.js، یک فعالیت عادی و روتین به نظر می‌رسد.
  • ابزارهای SCA: از آنجایی که این سرورها از طریق دستور npx اجرا می‌شوند، فایلی برای تحلیل وابستگی‌ها (Dependency Manifest) وجود ندارد.
  • مدیریت دارایی‌ها (Software Inventory): این بسته‌ها به عنوان یک اپلیکیشن مجزا ثبت نمی‌شوند و شناسایی آن‌ها تنها از طریق نقاط انتهایی (Endpoints) امکان‌پذیر است.

گزارش‌ها نشان می‌دهد که بسته‌های منسوخ‌شده‌ای که Glow Labs شناسایی کرده، از جولای ۲۰۲۵ تاکنون بیش از ۱۷.۳ میلیون بار از npm دانلود شده‌اند.

توصیه‌های امنیتی برای مدیران SOC و CISO

از آنجایی که حذف این بسته‌ها از مخزن npm به دلیل تعداد بسیار بالای دانلودها تقریباً غیرممکن است، تیم‌های امنیتی باید اقدامات زیر را انجام دهند:

  • بررسی پیکربندی‌های MCP برای شناسایی ارجاع به سرورهای منسوخ شده @modelcontextprotocol.
  • جایگزینی آن‌ها با سرورهای رسمی و نگهداری‌شده توسط مالک سرویس.
  • اضافه کردن وضعیت “منسوخ بودن” (Deprecation status) در npm به معیارهای تایید نصب بسته‌ها توسط عامل‌های هوش مصنوعی.