تحقیقات امنیتی نشان میدهد که رخنه امنیتی ماه اکتبر در پلتفرم Cursor، ریشه در افشای یک کلید دسترسی (Access Key) در سرویس Fireworks AI داشته است. مهاجمان با استفاده از این کلید، موفق به سرقت سوابق مربوط به عوامل کدنویسی (Coding Agents) و یافتن اعتبارنامههای (Credentials) بیشتری شدند که در نهایت منجر به تزریق افزونههای آلوده (Backdoored) Claude Code در حافظه پنهان (Cache) بازارچه افزونههای Cursor شد.
جزئیات نشت داده و زنجیره حمله
کلید سرقت شده که توسط Cursor به Fireworks صادر شده بود، دسترسی Read-only به یک Storage Bucket مشترک را فراهم میکرد. این مخزن حاوی ردپای جلسات کدنویسی و برخی اعتبارنامههایی بود که به درستی پاکسازی نشده بودند. مهاجمان با بهرهگیری از این اطلاعات، به سرویسهای نرمافزاری داخلی Cursor دسترسی پیدا کرده و در تاریخ ۲۹ اکتبر، پکیجهای تغییریافته Claude Code را مستقیماً در کشِ مربوط به بازارچه افزونههای VS Code در Cursor قرار دادند.
بر اساس گزارشهای موجود، حداکثر ۵,۰۰۰ کاربر که نسخههای خاصی از این افزونه را درخواست کرده بودند، در بازهای حدود ۱۱ ساعت، نسخههای آلوده را دریافت کردهاند. نسخههای تحت تأثیر عبارتند از:
- Anthropic.claude-code 2.1.312 (برای Windows و macOS)
- Anthropic.claude-code 2.1.313 (برای Windows و macOS)
تحلیل فنی بدافزار و روشهای ماندگاری
تحلیلهای فنی نشان میدهد که این افزونه حاوی کدهای JavaScript تزریقشدهای است که بلافاصله پس از بارگذاری اجرا میشوند. این کدها بدون نیاز به تعامل کاربر، جزئیات میزبان (Host Details) را جمعآوری کرده و یک کلید SSH با برچسب svc-telemetry به سیستم اضافه میکنند. همچنین، مهاجمان تلاش کردند تا یک تونل SSH معکوس (Reverse SSH Tunnel) به آیپی 134[.]209[.]82[.]225 برقرار کنند.
برای حفظ ماندگاری (Persistence) در سیستم، از روشهای زیر استفاده شده است:
- در macOS: استفاده از LaunchAgent
- در Windows: ایجاد یک Scheduled Task و استفاده از پوشه Startup به عنوان جایگزین (Fallback)
اقدامات اصلاحی و توصیهها
شرکت Cursor پس از شناسایی حادثه، دسترسیهای مربوط به Fireworks را لغو، اعتبارنامههای داخلی را تغییر داده و زیرساخت بازارچه افزونهها را بازسازی کرده است. با این حال، توسعهدهندگان آسیبپذیر باید اقدامات زیر را انجام دهند: