ভরসার Claude Code এক্সটেনশনেই ঢুকেছিল ব্যাকডোর। পাঁচ মিনিটে নিজে চেক করে নিন।
প্রায় ১১ ঘণ্টা ধরে Cursor-এর মার্কেটপ্লেসে Anthropic-এর নামে একটা বিষাক্ত বিল্ড ছিল। কিছুতে ক্লিক করতেও হয়নি। এটা কী করেছে, কীভাবে চেক করবেন, আর কোন অভ্যাসটা বদলানো দরকার।
আমরা বেশিরভাগই একটা টুল একবার দেখে নিই, নিরাপদ মনে হলে তারপর সে নিজে নিজে আপডেট হতে থাকে। এই হামলা ঢুকেছে ঠিক ওই দ্বিতীয় অংশের ফাঁক দিয়ে।
২৯ অক্টোবর, UTC সময় ০৯:২৭ থেকে ২০:৩৫ পর্যন্ত, Cursor-এর এক্সটেনশন মার্কেটপ্লেসে anthropic.claude-code-এর একটা বদলানো বিল্ড ছিল। নাম ঠিক, প্রকাশকও ঠিক দেখাচ্ছিল। শুধু extension.js-এর শুরুতে ছোট একটা লোডার বসানো হয়েছিল, ফাইলের বাকিটা অক্ষত।
এটা কী করার চেষ্টা করেছে
এডিটর এক্সটেনশন লোড করার সাথে সাথেই লোডারটা চলেছে। StepSecurity কোড বিশ্লেষণ করে যা পেয়েছে:
- আপনার hostname, username, public IP, git email, আর সিক্রেটের মতো দেখতে environment variable-গুলোর নাম একটা রিমোট সার্ভারে পাঠিয়েছে
~/.ssh/authorized_keys-এ হামলাকারীর একটা SSH key বসিয়েছে, যার লেবেলsvc-telemetry- SSH চালু করে ওই সার্ভারে একটা reverse tunnel খোলার চেষ্টা করেছে
- রিবুটের পরেও যেন ফিরে আসে, সেই ব্যবস্থা করেছে
দুটো জিনিস খেয়াল করার মতো। StepSecurity এমন কোনো কোড পায়নি যা সিক্রেটের আসল মান পড়ে, মানে উদ্দেশ্য ছিল ঢোকার রাস্তা বানানো, তখনই চাবি নেওয়া নয়। আর কোডে ভুলও ছিল: রিপোর্ট বলছে Windows আর অনেক Mac-এ SSH-এর ধাপটা প্রায়ই ব্যর্থ হয়েছে। এটা কপাল, নিরাপত্তা না। কেউ আসলে কোনো মেশিনে ঢুকেছে কি না, সেটা এখনো অজানা।
আপনি কি ঝুঁকিতে ছিলেন?
Cursor ব্যবহার না করলে সম্ভবত না। তিনটা রিপোর্টই খারাপ বিল্ডের কথা বলছে Cursor-এর মার্কেটপ্লেসে, Microsoft-এর মার্কেটপ্লেসে এটা ছিল না। Anthropic বলছে তাদের নিজেদের ডিস্ট্রিবিউশনে সমস্যা হয়নি। দুটো জায়গায় রিপোর্টগুলো একমত না: 2.1.313-এর সাথে 2.1.312-ও খারাপ ছিল কি না, আর কোনো খারাপ বিল্ড Open VSX-এ পৌঁছেছিল কি না। তাই দুটো ভার্সনকেই সন্দেহের তালিকায় রাখুন।
Cursor ব্যবহার করলে এগুলো চালান:
# কোন ভার্সন আছে?
cursor --list-extensions --show-versions | grep anthropic.claude-code
# হামলাকারীর key আছে?
grep svc-telemetry ~/.ssh/authorized_keys
# ফেলে যাওয়া ফাইল আছে?
ls -la ~/.config/.smt ~/.config/.smtk
ls ~/Library/LaunchAgents/com.apple.sysmond.plist # macOS
crontab -l | grep @reboot # Linux
Windows-এ চালান schtasks /query /tn SysMon, তারপর Startup ফোল্ডারে sysmon.cmd আছে কি না দেখুন।
শুধু ভার্সন নম্বর মিললেই প্রমাণ হয় না যে আপনি আক্রান্ত, আবার এই কমান্ডে কিছু না পাওয়া মানেও পুরোপুরি নিরাপদ না। এগুলোকে প্রথম নজর হিসেবে নিন।
কিছু পেলে কী করবেন
মেশিনটা নেটওয়ার্ক থেকে আলাদা করুন। শুধু এক্সটেনশন আনইনস্টল করবেন না, কারণ ফেলে যাওয়া স্ক্রিপ্টগুলো এক্সটেনশন ছাড়াও চলতে থাকে। অন্য একটা ভরসার ডিভাইস থেকে ওই মেশিনের নাগালে থাকা সব key আর token বদলান, চালু সেশনগুলো থেকে সাইন আউট করুন। তারপর Cursor-এর নোটিশে দেওয়া পরিষ্কার করার ধাপগুলো অনুসরণ করুন। ভালো ব্যাকআপ থেকে নতুন করে সেটআপ করতে পারলে সেটাই সবচেয়ে ভরসার পথ।
যে অভ্যাসটা বদলানো দরকার
প্রতিটা আপডেট নিজে যাচাই করা সম্ভব না, ভান করেও লাভ নেই। কিন্তু ক্ষতির পরিধি ছোট করা যায়:
- এক্সটেনশনের অটো-আপডেট বন্ধ রাখুন, অন্তত যে মেশিনে প্রোডাকশনের key থাকে। VS Code ধরনের এডিটরে সেটিংটা হলো
"extensions.autoUpdate": false। - এক্সটেনশন কম রাখুন। আজই তালিকাটা খুলুন, এই মাসে ব্যবহার করেননি এমনগুলো সরান।
- আসল সিক্রেট শেলে রাখবেন না। হামলার প্রথম অনুরোধেই environment variable-এর নামের তালিকা গেছে। সিক্রেট ম্যানেজার থাকলে ওই তালিকায় দেখানোর মতো অনেক কম থাকে।
- মাঝে মাঝে
authorized_keysদেখুন। ফাইলটা ছোট, আর এর প্রতিটা লাইন আপনার চেনা থাকার কথা।
শিক্ষাটা “AI টুলে ভরসা করবেন না” নয়। ভরসাটা শুধু এক ধাপ ওপরে সরে গেছে, টুলের নির্মাতা থেকে সেই দোকানে, যে টুলটা আপনার হাতে দেয়।