بکدور در افزونه Claude Code؛ درس برای فروشگاهها و تیمهای کوچک
نویسنده: آرش لطیفی — موسس The DevArt
نسخههای 2.1.312 و 2.1.313 افزونه Claude Code در مارکت Cursor آلوده بودند؛ بکدور SSH پایدار میگذاشت. چک ساده ۵ ثانیهای، علائم نفوذ و درس زنجیره تامین برای بیزینسهای کوچک.
TL;DR — نسخههای 2.1.312 و 2.1.313 افزونه رسمی Claude Code در مارکت Cursor بکدور SSH داشتند؛ اگر تیم یا پیمانکارت از این افزونه استفاده میکند، با یک دستور
grepساده چک کن — چون حتی حذف افزونه بکدور را پاک نمیکند.
روز ۲۹ اکتبر ۲۰۲۶، به مدت حدود ۱۱ ساعت (۲:۲۷ تا ۱۳:۳۵ به وقت PT)، نسخههای آلودهای از افزونه رسمی Claude Code در مارکت Cursor منتشر شد. طبق اطلاعیه امنیتی Cursor، این نسخهها «توسط Anthropic توسعه نیافته بودند» و کد مخرب آنها تلاش میکرد یک بکدور SSH پایدار روی سیستم نصب کند. اگر فروشگاه داری و توسعهدهنده یا پیمانکار دارید که با Cursor یا VS Code کار میکند، این مطلب مال شماست.
چه اتفاقی افتاد؟
طبق اطلاعیه رسمی Cursor:
- افزونه
Anthropic.claude-codeنسخه 2.1.312 و 2.1.313 برای macOS و Windows آلوده بود - کد مخرب در فایل
extension.jsتزریق شده بود و قبل از کلیک یا تعامل کاربر اجرا میشد - مهاجم یک کلید SSH به
~/.ssh/authorized_keysاضافه میکرد (با کامنتsvc-telemetry) - یک تانل معکوس SSH به سرور
134.209.82[.]225برقرار میکرد و اطلاعات سیستم (hostname، username، ایمیل git، IP عمومی) را POST میکرد - Cursor مارکت را موقتاً کاملاً خاموش کرد، کلیدها را rotate کرد و سرور مهاجم را با همکاری هاستینگ از دسترس خارج کرد
نکته مهم از تحلیل Phorion: در macOS، بخاطر یک باگ در خود بدافزار (چک systemsetup -getremotelogin بدون دسترسی admin خطا میدهد و اسکریپت آن را «SSH روشن» تفسیر میکند)، در اکثر مکها مرحله فعالسازی SSH شکست خورده و ورود واقعی مهاجم انجام نشده. Cursor هم میگوید «در شرایط عادی، به دلیل خطا در کد مخرب، این مرحله شکست میخورد». ولی کلید و persistence همچنان نصب شده بود.
چرا این برای بیزینس کوچک مهم است؟
بخاطر اثر دومینو: اگر توسعهدهنده یا پیمانکار آزادت با لپتاپی که بکدور دارد به پنل فروشگاه، سرور یا مخزن کد تو دسترسی داشت، مهاجم theoretically میتوانست از همان سیستم به منابع تو هم برسد. وقتی شما حتی از این ابزارها استفاده نمیکنید، باز هم باید بدانید چرا — چون «فرزند تیم فنی» شما همیشه در حال نصب افزونه است.
نکته دوم: طبق Wired، هک ۶.۳ میلیارد دلاری Binance (۲۹ اکتبر، بزرگترین سرقت کریپتو تاریخ) با «لپتاپ مهندسی آلوده» شروع شد. زنجیره تامین فقط کلمه بزرگ امنیتی نیست — یک افزونه یا یک لپتاپ آلوده میتواند کل بیزینس را ببلعد.
چک کنید: آیا سیستم ما آلوده است؟
- [ ] دستور
grep -qs svc-telemetry ~/.ssh/authorized_keys && echo FOUND || echo CLEANرا روی مک/لینوکس تیم اجرا کردید (Cursor همین را پیشنهاد داده) - [ ] فایلهای
~/.config/.smtو~/.config/.smtkوجود ندارند (فایلهای persistence) - [ ] فایل
~/Library/LaunchAgents/com.apple.sysmond.plistوجود ندارد (macOS persistence) - [ ] ورودی cron
@rebootمشکوک یا تسک ویندوزیSysMonندارید - [ ] اگر نسخه آلوده نصب بود: افزونه را حذف کردید، پوشههای persistence را پاک کردید، کلید SSH را از authorized_keys حذف کردید و کرندهسیالهای در دسترس را rotate کردید
اگر تیک اول پیدا (FOUND) بود، طبق Cursor فوراً اسکریپت رسمی remediate-macos.sh یا remediate-windows.ps1 را از اطلاعیهشان دانلود و اجرا کنید — حذف دستی افزونه کافی نیست.
جدول: علائم و اقدام
| مورد | چی بررسی کنیم | اگر بود |
| --- | --- | --- |
| کلید SSH مشکوک | svc-telemetry در authorized_keys | حذف + rotate کرندهسیالها |
| فایل persistence | ~/.config/.smt, .smtk | حذف فایل و LaunchAgent |
| اتصال شبکه | اتصال به 134.209.82[.]225 | ایزوله کردن سیستم |
| فایل موقت | $TMPDIR/.stk_* | حذف |
| ورود مشکوک | لاگ SSH با کلید svc-telemetry | بررسی جدی نفوذ واقعی |
درس ماندگار برای تیم کوچک
۱. هر ابزاری که توسعهدهندهات نصب میکند، به اندازه یک کارمند بخش مالی قابل اعتماد است. مارکتها (حتی رسمی) قربانی زنجیره تامین میشوند.
۲. حذف نرمافزار آلوده کافی نیست. بدافزار خوب همیشه persistence میگذارد. برای افزونهها و اپهای حساس، بعد از حذف، سیستم را هم چک کنید.
۳. زمان واکنش را از قبل تعیین کنید. Cursor در کمتر از یک روز مارکت را خاموش، کلیدها را rotate و سرور مهاجم را offline کرد. برای تیم کوچک، حتی یک چکلیست یکصفحهای «اگر X دیدی، Y را بکن» بهتر از هیچ است.
Q: ما اصلاً Cursor یا Claude Code استفاده نمیکنیم؛ باز هم باید نگران باشیم؟
اگر کسی در تیم یا پیمانکارتان استفاده میکند، بله — چون بکدور روی سیستم اوست، نه روی سرور شما. یک چک ۵ ثانیهای grep روی سیستمهای توسعهدهنده کافی است.
Q: افزونه را حذف کردم؛ آیا بکدور هم رفت؟
خیر. طبق اطلاعیه Cursor و تحلیل Phorion، بدافزار فایلهای persistence و کلید SSH را جدا از افزونه میگذارد؛ باید طبق چکلیست بالا دستی پاک شوند.
Q: چطور از دفعه بعد جلوگیری کنم؟
نصب افزونه را محدود کنید (فقط از لیست تاییدشده)، و در سیستمهای توسعهدهنده، تغییر ~/.ssh/authorized_keys را لاگ/هشدار بگذارید. هیچ مارکتی ۱۰۰٪ امن نیست؛ کنترل داخلی جایگزین ندارد.