Cursor में Claude Code एक्सटेंशन का बैकडोर: जाँच और सफाई
Cursor के एक्सटेंशन बाज़ार से मिले बदले हुए Claude Code पैकेज का जोखिम पहचानें। संस्करण और स्थापना का समय जाँचें, SSH key तथा ऑटोस्टार्ट के संकेत खोजें और सही अनुमतियों से आधिकारिक सफाई स्क्रिप्ट चलाएँ। फिर पहुँच में रहे क्रेडेंशियल रद्द करें और सत्यापित स्रोत से एक्सटेंशन दोबारा स्थापित करें।
विषय-सूची

अगर आपने प्रभावित अवधि में Cursor से Claude Code एक्सटेंशन 2.1.312 या 2.1.313 स्थापित किया था, तो काम शुरू करने से पहले कंप्यूटर जाँचें। हानिकारक गतिविधि के संकेत वाले कंप्यूटर अलग करें, बैकडोर के अवशेष हटाएँ और भरोसेमंद डिवाइस से पहुँच में रहे क्रेडेंशियल रद्द करके बदलें। सिर्फ एक्सटेंशन अपडेट करने से बैकडोर के स्थायी बदलाव नहीं हटते।
क्या आपकी स्थापना प्रभावित है? स्रोत, संस्करण, प्लेटफ़ॉर्म और समय जाँचें
अगर आपकी स्थापना नीचे दिए दायरे में आती है, तो जाँच करें। समय मेल न खाने पर भी कोई संकेत मिले, तो उसकी पड़ताल करें। 2026-11-02 तक Cursor के सुरक्षा नोटिस में यह दायरा बताया गया है:
| क्या जाँचें | बताया गया दायरा |
|---|---|
| एक्सटेंशन | Cursor VS Code Extension Marketplace से वितरित Anthropic.claude-code |
| संस्करण | 2.1.312 और 2.1.313 की बदली हुई प्रतियाँ |
| प्लेटफ़ॉर्म | macOS और Windows |
| स्थापना या अपडेट की अवधि | 2026-10-29 को लगभग 02:27–13:35 PDT |
| यही अवधि UTC में | 2026-10-29 को लगभग 09:27–20:35 UTC |
Cursor के अनुसार बदले हुए ये पैकेज Anthropic ने नहीं बनाए थे। जाँच में अपने-आप हुए अपडेट भी शामिल करें। अभी स्थापित संस्करण, घटना के समय मौजूद संस्करण से अलग हो सकता है।
संदिग्ध कंप्यूटर पर Cursor बंद रखें। स्थापना के रिकॉर्ड देखें या एक्सटेंशन लोड किए बिना डिस्क पर उसका मेटाडेटा जाँचें, जिसमें package.json भी शामिल है। संस्करण, प्लेटफ़ॉर्म, स्रोत और स्थापना का समय लिख लें।
एक्सटेंशन जाँचने के लिए claude --version पर भरोसा न करें। Anthropic के दस्तावेज़ बताते हैं कि एक्सटेंशन अपना कमांड-लाइन प्रोग्राम (CLI) साथ लाता है। टर्मिनल में अलग से स्थापित प्रति चल सकती है।
Microsoft की स्वतंत्र जाँच पुष्टि करती है कि Microsoft Visual Studio Marketplace और npm से वितरित पैकेज इस घटना से प्रभावित नहीं थे। सिर्फ संस्करण का नाम देखकर असली पैकेज और बदली हुई प्रति में अंतर नहीं किया जा सकता।
Linux का आकलन अलग से करें। Phorion की जाँच में Linux के लिए कोड मिला, लेकिन Cursor ने वितरण के पुष्ट दायरे में macOS और Windows बताए हैं। Linux पर मिलते-जुलते अवशेष मिलें तो जाँचें। इसे Linux पर वितरण की पुष्टि न मानें और वहाँ macOS की सफाई स्क्रिप्ट न चलाएँ।
SSH key की आधिकारिक जाँच चलाएँ
प्रभावित खाते के लिए जाँच चलाएँ। नतीजे को स्थापना के रिकॉर्ड और स्थायी बदलावों के प्रमाण के साथ पढ़ें। कुंजी मिलने पर यह संदेश दिखता है: svc-telemetry key found।
ये Cursor के प्रकाशित कमांड हैं। कुंजी न मिलने का संदेश यह साबित नहीं करता कि कंप्यूटर कभी प्रभावित नहीं हुआ।
macOS: Bash में जाँच
प्रभावित उपयोगकर्ता के खाते से टर्मिनल में यह चलाएँ:
grep -qs svc-telemetry ~/.ssh/authorized_keys && echo "svc-telemetry key found" || echo "No key found; machine not impacted"
यह कमांड एक फ़ाइल में एक टिप्पणी खोजता है। इसका -s विकल्प गुम फ़ाइल और पढ़ने की त्रुटि के संदेश भी छिपाता है। फ़ाइल पढ़ी नहीं जा रही हो, तो कारण जाँचें; नकारात्मक संदेश को कंप्यूटर सुरक्षित होने का प्रमाण न मानें।
Windows: PowerShell में जाँच
प्रभावित उपयोगकर्ता की प्रोफ़ाइल के लिए Cursor की जाँच चलाएँ:
$files = "$HOME\.ssh\authorized_keys", "C:\ProgramData\ssh\administrators_authorized_keys" | Where-Object { Test-Path $_ }
if ($files -and (Select-String svc-telemetry $files)) { "svc-telemetry key found" } else { "No key found; machine not impacted" }
एडमिन की साझा कुंजी फ़ाइल जाँचते समय पहुँच की त्रुटियाँ दूर करें। अगर अधिक अधिकार पाने के लिए अलग खाता इस्तेमाल किया है, तो $HOME बदल जाता है। मूल प्रभावित प्रोफ़ाइल भी ज़रूर जाँचें।
चिह्न मिलने पर कंप्यूटर अलग करें और कुंजी की पहचान जाँचें। Cursor ने हमलावर को प्रवेश देने वाली कुंजी का यह फिंगरप्रिंट प्रकाशित किया है:
SHA256:0Z6R+DF64Do2nwQic8a7kkfDLNNk4IiK+2U2Rci4htk
macOS पर यह OpenSSH फिंगरप्रिंट कमांड प्रविष्टियाँ मिलाने में मदद कर सकता है। यह केवल फ़ाइल पढ़ता है:
ssh-keygen -lf "$HOME/.ssh/authorized_keys" -E sha256
पार्स करने में त्रुटि हो या टिप्पणियाँ अलग हों, तो नोटिस में दी गई कुंजी से वास्तविक सामग्री मिलाएँ। सफाई स्क्रिप्ट यह स्थिति सँभालती हैं कि हमलावर की कुंजी मौजूदा पंक्ति के अंत में जोड़ दी गई हो। पूरी मेल खाती पंक्ति बिना देखे न हटाएँ; उसमें वैध कुंजी भी हो सकती है।
बैकडोर के स्थायी बदलाव जाँचें और सबूत बचाएँ
सफाई पूरी मानने से पहले नीचे की फ़ाइलें और स्टार्टअप कार्रवाइयाँ जाँचें। इन नामों के मिलने पर पड़ताल करें; बिना जाँच के सभी मेल खाने वाले ऑब्जेक्ट न मिटाएँ।
| क्षेत्र | Cursor के नोटिस में दिए संकेत |
|---|---|
| macOS की फ़ाइलें | ~/.config/.smt, ~/.config/.smtk, ~/Library/LaunchAgents/com.apple.sysmond.plist |
| macOS का स्टार्टअप | LaunchAgent का लेबल com.apple.sysmond |
| Windows की फ़ाइलें | %USERPROFILE%\.config\smt.cmd, %USERPROFILE%\.config\smtk |
| Windows का स्टार्टअप | निर्धारित टास्क SysMon; वैकल्पिक स्क्रिप्ट %APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup\sysmon.cmd |
| अस्थायी फ़ाइलें | macOS पर $TMPDIR/.stk_<10 hex>; Windows पर %TEMP%\.stk_<10 hex> |
| नेटवर्क | 134[.]209[.]82[.]225 की ओर कनेक्शन, जिनमें TCP 22 पर SSH और पोर्ट 8099 पर HTTP /beacon शामिल हैं |
<10 hex> प्रत्यय फ़ाइल के नाम का पैटर्न बताता है; कोण वाले कोष्ठक नाम का हिस्सा नहीं हैं। स्टार्टअप ऑब्जेक्ट हटाने से पहले उसकी तय कार्रवाई और उससे जुड़ी फ़ाइलें देखें।
टीम के कंप्यूटर पर अपनी सुरक्षा घटना की जाँच प्रक्रिया के अनुसार एक्सटेंशन पैकेज, संबंधित कुंजी फ़ाइलें, स्टार्टअप सेटिंग और लॉग सुरक्षित रखें। जिन कंप्यूटर पर हानिकारक कोड चलने या बैकडोर स्थापित होने के प्रमाण मिले, उन्हें अलग करें। सिर्फ एडिटर बंद करने से अलग चल रही स्क्रिप्ट नहीं हटतीं।
Phorion ने पाया कि Node के मॉड्यूल लोड करते ही जोड़ा गया कोड चल जाता है, एक्सटेंशन के सामान्य activate कॉलबैक से भी पहले। इस कोड के चलने के लिए Claude को प्रॉम्प्ट भेजना ज़रूरी नहीं है।
Cursor के अनुसार हमलावर का सर्वर ऑफ़लाइन कर दिया गया था। इससे बताया गया संपर्क मार्ग बाधित होता है, लेकिन स्थानीय अवशेष नहीं हटते। SSH चालू न हो पाना भी यह साबित नहीं करता कि कुंजी जोड़ना, स्थायी फ़ाइलें बनाना या कंप्यूटर की जानकारी जुटाना नहीं हुआ।
Cursor की सफाई स्क्रिप्ट चलाएँ और उसकी सीमाएँ जाँचें
ज़रूरी सबूत बचाने के बाद Cursor के नोटिस से जुड़ी स्क्रिप्ट इस्तेमाल करें। डाउनलोड की गई फ़ाइल चलाने से पहले पढ़ें और एडिटर बंद करें।
स्क्रिप्ट टनल प्रक्रियाएँ रोकती हैं और बदले हुए एक्सटेंशन फ़ोल्डर, बनी फ़ाइलें, ऑटोस्टार्ट तथा हमलावर की कुंजी हटाती हैं। API क्रेडेंशियल अलग से रद्द करें। स्क्रिप्ट के नतीजे से आगे भी कंप्यूटर की गतिविधि जाँचें।
macOS की सफाई
Cursor की macOS सफाई स्क्रिप्ट डाउनलोड करें। सहेजे गए फ़ोल्डर से हर प्रभावित उपयोगकर्ता के खाते में इसे चलाएँ, sudo के बिना:
bash remediate-macos.sh
echo "Exit status: $?"
root के तौर पर चलाने पर स्क्रिप्ट रुक जाती है। com.apple.sysmond LaunchAgent, मेल खाती प्रक्रियाएँ और फ़ाइलें, तथा svc-telemetry वाले एक्सटेंशन पैकेज इसके सफाई दायरे में हैं। हमलावर की कुंजी के पाठ से सटीक मिलान करके उसे हटाया जाता है।
Windows की सफाई
Cursor की Windows सफाई स्क्रिप्ट डाउनलोड करें। Run as Administrator से PowerShell खोलें, फिर फ़ाइल वाले फ़ोल्डर से यह चलाएँ:
powershell -ExecutionPolicy Bypass -File .\remediate-windows.ps1
$LASTEXITCODE
स्क्रिप्ट पंजीकृत उपयोगकर्ता प्रोफ़ाइलों पर काम करती है। इसकी सफाई में हानिकारक कार्रवाई वाला टास्क, मेल खाती प्रक्रियाएँ, एक्सटेंशन फ़ोल्डर, बनी फ़ाइलें और प्रोफ़ाइल की प्रवेश-अनुमति वाली कुंजियाँ शामिल हैं।
सफाई के बाद C:\ProgramData\ssh\administrators_authorized_keys मौजूद हो, तो उसे अलग से दोबारा जाँचें। हमलावर की कुंजी मिले, तो एडमिन से केवल वही अनधिकृत प्रविष्टि हटवाएँ और वैध कुंजियाँ बचाएँ।
एग्ज़िट कोड शून्य न हो या incomplete संदेश मिले, तो आगे जाँच ज़रूरी है। बताई गई त्रुटियाँ दूर करें और संबंधित जाँच दोबारा चलाएँ।
एग्ज़िट कोड 0 का मतलब है कि स्क्रिप्ट की अपनी जाँचों में किसी बचे हुए संकेत की रिपोर्ट नहीं मिली। अपने चुने हुए एक्सटेंशन स्थानों को भी प्रकाशित संकेतों से मिलाएँ। स्थानीय SSH सेवा की सेटिंग अलग जाँचें और पुष्टि करें कि वह आपकी इच्छित व्यवस्था से मेल खाती है।
अवशेष दोबारा मिलें, अनपेक्षित SSH प्रवेश दिखे या बाद की गतिविधि का हिसाब न मिले, तो कंप्यूटर अलग ही रखें। उस पर क्रेडेंशियल वापस रखने से पहले जाँच करने वाली टीम से आकलन कराएँ कि सिस्टम नए सिरे से तैयार करना चाहिए या नहीं।
प्रभावित कंप्यूटर की पहुँच में रहे क्रेडेंशियल रद्द करके बदलें
प्रभावित कंप्यूटर से जिन क्रेडेंशियल तक पहुँचा जा सकता था, उन्हें भरोसेमंद डिवाइस से रद्द करें। इनमें Claude Code से असंबंधित क्रेडेंशियल भी शामिल करें। सफाई या सिस्टम दोबारा तैयार होने तक नए क्रेडेंशियल प्रभावित कंप्यूटर पर न रखें।
Cursor ने एनवायरनमेंट वेरिएबल के नाम इकट्ठे होने का वर्णन किया है। इससे उनके मान चोरी होने की पुष्टि नहीं होती। कुंजियाँ बदलने की सलाह में बैकडोर से बाद में पहुँच मिलने की संभावना भी शामिल है।
हर मद के लिए ज़िम्मेदार व्यक्ति तय करें और काम पूरा होने का रिकॉर्ड रखें:
| क्रेडेंशियल | क्या करना है |
|---|---|
| Anthropic API keys | Claude Console के API keys पृष्ठ पर संबंधित कुंजी का मेन्यू खोलें। Delete API key चुनें और फिर नई कुंजी बनाएँ। |
| OpenAI API keys | API-key डैशबोर्ड से प्रभावित कुंजियाँ हटाएँ, नई कुंजियाँ बनाएँ और असामान्य गतिविधि के लिए उपयोग का रिकॉर्ड देखें। |
| Git होस्ट के टोकन | व्यक्तिगत एक्सेस टोकन और पहुँच में रहे अन्य क्रेडेंशियल जारी करने वाली सेवा पर रद्द करें। वैध स्वचालित प्रक्रियाओं में नई कुंजियाँ लगाएँ। |
| SSH क्लाइंट कुंजियाँ | संभवतः उजागर हुई निजी कुंजियाँ बदलें। Git होस्ट और दूसरे सर्वर से उनकी पुरानी सार्वजनिक कुंजियों की प्रवेश-अनुमति हटाएँ। |
| क्लाउड क्रेडेंशियल | उजागर हुई पहुँच कुंजियाँ रद्द करें और अस्थायी सेशन अलग से सँभालें। अनधिकृत संसाधन, पहुँच में बदलाव और उपयोग जाँचें। |
| खाते के सेशन | संबंधित सेवा या पहचान प्रणाली के एडमिन के ज़रिये प्रभावित ब्राउज़र, CLI और SSO सेशन रद्द करें। |
कुंजी उजागर होने पर Anthropic के निर्देश कुंजी हटाने और बदलने के नियंत्रण बताते हैं। OpenAI की सुरक्षा सलाह API key हटाने और उपयोग की समीक्षा समझाती है।
GitHub पर प्रभावित टोकन हटाने के लिए व्यक्तिगत एक्सेस टोकन की सेटिंग खोलें। SSH keys और सक्रिय सेशन अलग से जाँचें।
AWS के लिए पहुँच कुंजी उजागर होने पर कार्रवाई के निर्देश अपनाएँ। भूमिका के सेशन के लिए अलग अस्थायी क्रेडेंशियल संबंधी निर्देश देखें।
गेटवे की कुंजियाँ भी इसी सूची में रखें। अगर आपने BetterToken इस्तेमाल किया है, तो उसकी API key भी शामिल करें। उसके कंसोल में नई कुंजी बनाई जा सकती है; नई कुंजी बनाना भर उजागर हुई पुरानी कुंजी को रद्द नहीं करता। बदलाव पूरा मानने से पहले जारी करने वाली सेवा से पुरानी कुंजी रद्द होने की पुष्टि करें।
कंप्यूटर से svc-telemetry हटाने से दूरस्थ सेवाओं पर आपकी अपनी SSH निजी कुंजियों का एक्सेस रद्द नहीं होता। स्थानीय सेटिंग का मान हटाने से भी मूल API key अमान्य नहीं होती।
पूरी बहाली के लिए क्रेडेंशियल रद्द करने और ऑडिट की जाँच-सूची देखें। जारी करने वाली सेवा पर रद्द होना सत्यापित करें, वैध अनुप्रयोगों में नई कुंजियाँ लगाएँ और भरोसेमंद वातावरण से अपेक्षित अनुरोध सफल होने की पुष्टि करें।
बहाली के बाद सत्यापित स्रोत से दोबारा स्थापित करें
सफाई के बाद, या नए सिरे से तैयार कंप्यूटर पर, भरोसेमंद स्रोत का मौजूदा संस्करण स्थापित करें। Cursor की घटना संबंधी घोषणा ने 2.1.314 पर अपडेट करने को कहा था। यह उसी घटना के लिए बताया गया अपडेट संस्करण है।
Anthropic के स्थापना पृष्ठ से सही एक्सटेंशन सूची तक जाएँ। प्रकाशक, Anthropic.claude-code आईडी, स्रोत रजिस्ट्री और स्थापित संस्करण की पुष्टि करें। स्थापना के बाद Extensions पैनल में एक्सटेंशन का संस्करण दिखता है।
लॉगिन या रीस्टार्ट के बाद प्रकाशित संकेत दोबारा जाँचें। ऑटोस्टार्ट या दूसरे स्थायी अवशेष वापस मिलें, तो कंप्यूटर इस्तेमाल करना रोकें और जाँच फिर शुरू करें।
केवल टर्मिनल की स्थापना अलग पैकेज से होती है। Claude Code की स्थापना और पहले उपयोग की गाइड उसे जाँचने में मदद करती है, लेकिन पहले से प्रभावित कंप्यूटर की सफाई नहीं करती।
अगली स्थापना से पहले एक्सटेंशन का स्रोत सत्यापित करें
परिचित एक्सटेंशन नाम पर भरोसा करने से पहले विक्रेता का स्थापना लिंक और वास्तविक रजिस्ट्री जाँचें। स्वीकृत पैकेजों के लिए प्रकाशक, पहचान, संस्करण, प्लेटफ़ॉर्म और डाउनलोड स्रोत दर्ज करें।
Cursor के एक्सटेंशन दस्तावेज़ चेताते हैं कि एक जैसे publisher.extension नाम अलग-अलग रजिस्ट्री में अलग प्रकाशकों या कोड के हो सकते हैं।
हैश मिलाते समय फ़ाइल का प्रकार, प्लेटफ़ॉर्म और संस्करण समान रखें। VSIX पैकेज के हैश की तुलना extension.js के हैश से नहीं की जा सकती। किसी एक ज्ञात हानिकारक हैश से मेल न खाना भी प्रामाणिकता साबित नहीं करता।
2026-11-02 तक Cursor के दस्तावेज़ों में टीम मालिकों और एडमिन के लिए Marketplace Install Cooldown (hours) दिया गया है। Enterprise टीमें स्थापना से पहले Open VSX एक्सटेंशन के वैध हस्ताक्षर भी अनिवार्य कर सकती हैं।
इन उपायों के साथ एजेंट के निर्देश और डाउनलोड की गई सेटिंग भी जाँचें। AGENTS.md तथा Claude Code कॉन्फ़िगरेशन की जाँच चलाए जाने वाले निर्देशों के इस अलग स्रोत को समझाती है।