
Claude Code 2.1.313 बैकडोर वाले एक्सटेंशन (Cursor मार्केटप्लेस, अक्टूबर 2026) के लिए रीड-ओनली स्कैनर: SSH कुंजी, पर्सिस्टेंस, रिवर्स टनल। macOS + Linux।
ट्रोजनयुक्त [email protected] एक्सटेंशन के लिए रीड-ओनली स्कैनर और डिटेक्शन नियम।
[!WARNING] Cursor मार्केटप्लेस ने 2026-10-29, 09:27–20:35 UTC को एक ऐसा बिल्ड परोसा जो Anthropic द्वारा प्रकाशित नहीं था। यह एक SSH कुंजी और पर्सिस्टेंस लगाता है, फिर
134.209.82[.]225तक एक रिवर्स टनल खोलता है। 2.1.314 में अपडेट करने से एक्सटेंशन हट जाता है, लेकिन उसने जो लगाया है वह नहीं।
HappyHackingSpace द्वारा स्वतंत्र कम्युनिटी टूल। Anthropic या Cursor से संबद्ध नहीं।
विषय-सूची: क्विक स्टार्ट · यह क्या जाँचता है · डिटेक्शन नियम · अगर आपको कोई हिट मिले · C2 को ब्लॉक करें · IOCs · संदर्भ
git clone https://github.com/happyhackingspace/claude-code-backdoor-check.git
cd claude-code-backdoor-check
bash check.sh # fast scan
bash check.sh --deep # + sshd log analysis (slower on macOS)
0 स्वच्छ · 1 संकेतक मिले · 2 उपयोग त्रुटि।| आउटपुट | एग्ज़िट | अर्थ |
|---|---|---|
✖ COMPROMISED | 1 | सक्रिय आर्टिफ़ैक्ट मिला: कुंजी, छोड़ी गई फ़ाइल, persistence, टनल, C2 होस्ट कुंजी, या ख़राब बिल्ड |
! EXPOSED | 1 | 2.1.313 किसी समय इंस्टॉल था, लेकिन कोई सक्रिय चीज़ नहीं मिली |
✔ CLEAN | 0 | कोई संकेतक नहीं |
| # | क्षेत्र | क्या खोजता है |
|---|---|---|
| 1 | एक्सटेंशन | Cursor / VS Code / Windsurf / VSCodium डायरेक्टरी में 2.1.313, ख़राब extension.js हैश, लोडर स्ट्रिंग्स |
| 2 | इंस्टॉल इतिहास | extensions.json, .obsolete, VSIX कैश, एडिटर लॉग में 2.1.313 |
| 3 | SSH कुंजियाँ | authorized_keys में svc-telemetry कुंजी |
| 4 | छोड़ी गई फ़ाइलें | ~/.config/.smt, .smtk, .stk_* अस्थायी फ़ाइलें |
| 5 | Persistence | macOS: LaunchAgents/Daemons · Linux: cron, systemd, autostart · दोनों: shell rc फ़ाइलें |
| 6 | प्रोसेस | रिवर्स टनल (ssh -R *:0:localhost:22 tunnel@…) और .smt रनर |
| 7 | नेटवर्क | सक्रिय C2 कनेक्शन; known_hosts में C2 |
| 8 | SSH सर्वर | :22 लिसनर; --deep के साथ, आक्रमणकारी कुंजी या 127.0.0.1 के माध्यम से sshd लॉगिन |
| 9 | एक्सपोज़र | रोटेट करने के लिए क्रेडेंशियल env var नाम और क्रेडेंशियल फ़ाइलें (मान कभी नहीं पढ़े जाते) |
[!NOTE]
com.apple.sysmondएक वास्तविक Apple सिस्टम डेमॉन भी है। केवल उपयोगकर्ता डोमेन (~/Library/LaunchAgents) में मौजूद प्रति ही दुर्भावनापूर्ण है।
EDR/SIEM पाइपलाइनों और फ़्लीट-व्यापी हंटिंग के लिए। इस README के बाकी हिस्से के विपरीत, नियम फ़ाइलों में C2 un-defanged है, क्योंकि उन्हें उससे मेल खाना होता है।
rules/sigma/)| नियम | लॉग स्रोत | स्तर |
|---|---|---|
| C2 के लिए रिवर्स SSH टनल | process_creation | critical |
| C2 से कनेक्शन | network_connection | critical |
| छोड़ी गई टनल स्क्रिप्ट / कुंजी | file_event | high |
नकली com.apple.sysmond LaunchAgent | file_event · macOS | high |
| एडिटर प्रोसेस ट्री से Remote Login सक्षम | process_creation · macOS | high |
@reboot cron / .smt निष्पादन | process_creation · Linux | high |
एडिटर से SysMon शेड्यूल्ड टास्क / OpenSSH इंस्टॉल | process_creation · Windows | high |
pip install sigma-cli
sigma plugin install splunk # or elasticsearch, microsoft365defender, …
sigma convert -t splunk --without-pipeline rules/sigma/
rules/yara/claude_code_backdoor.yar)| नियम | मिलान |
|---|---|
HHS_ClaudeCode_Backdoor_Loader | ट्रोजनयुक्त extension.js (हैश या लोडर स्ट्रिंग्स) |
HHS_ClaudeCode_Backdoor_TunnelScript | ड्रॉप किया गया .smt / smt.cmd |
HHS_ClaudeCode_Backdoor_Persistence | LaunchAgent, @reboot cron, स्क्रिप्ट की ओर इंगित करने वाला SysMon टास्क |
HHS_ClaudeCode_Backdoor_AuthorizedKey | svc-telemetry कुंजी वाला authorized_keys |
yara -r -s rules/yara/claude_code_backdoor.yar \
~/.cursor/extensions ~/.vscode/extensions ~/.config ~/.ssh ~/Library/LaunchAgents
[!TIP] Sigma नियम Windows (scheduled task, OpenSSH install) को भी कवर करते हैं, जिसे
check.shनहीं करता।
[!CAUTION] Persistence लगभग हर 60 सेकंड में tunnel को फिर से खोलता है। पहले contain करें, फिर साफ़ करें। Cursor आधिकारिक remediation स्क्रिप्ट भी प्रदान करता है: इसकी security notice देखें।
1. Contain करें। मशीन को ऑफ़लाइन लें, या C2 को ब्लॉक करें।
2. कुछ भी हटाने से पहले साक्ष्य सुरक्षित रखें:
mkdir -p ~/ioc-evidence && cd ~/ioc-evidence
bash /path/to/check.sh --deep --no-color > scan.txt
cp -p ~/.ssh/authorized_keys ~/.ssh/known_hosts ~/.config/.smt ~/.config/.smtk . 2>/dev/null
[!IMPORTANT]
.smtkहमलावर की निजी टनल कुंजी है। साक्ष्य फ़ोल्डर को निजी रखें।
3. सफ़ाई करें। पर्सिस्टेंस हटाएँ, टनल को बंद करें, आर्टिफ़ैक्ट्स को हटाएँ:
C2="$(echo '134.209.82[.]225' | tr -d '[]')"
launchctl bootout gui/$(id -u)/com.apple.sysmond
rm -f ~/Library/LaunchAgents/com.apple.sysmond.plist
pkill -f "tunnel@$C2"; pkill -f 'autossh -M 0'; pkill -f '\.config/\.smt'
sed -i.bak '/svc-telemetry/d' ~/.ssh/authorized_keys
ssh-keygen -R "$C2"
rm -f ~/.config/.smt ~/.config/.smtk "$TMPDIR"/.stk_*
sudo systemsetup -setremotelogin off # if you don't use SSH
crontab -l | grep -vE '\.config/\.smt|tunnel@' | crontab -
# disable and remove any systemd/autostart entries check.sh reported
pkill -f "tunnel@$C2"; pkill -f 'autossh -M 0'; pkill -f '\.config/\.smt'
sed -i.bak '/svc-telemetry/d' ~/.ssh/authorized_keys
ssh-keygen -R "$C2"
rm -f ~/.config/.smt ~/.config/.smtk /tmp/.stk_* /var/tmp/.stk_*
sudo systemctl disable --now ssh # if you don't use SSH
4. एक्सटेंशन बदलें। anthropic.claude-code-2.1.313* को हटाएँ और ≥ 2.1.314 इंस्टॉल करें।
5. सत्यापित करें। bash check.sh --deep का एक्ज़िट कोड 0 होना चाहिए।
6. किसी अन्य, स्वच्छ मशीन से क्रेडेंशियल रोटेट करें: SSH कुंजियाँ, git टोकन, क्लाउड और API कुंजियाँ, रजिस्ट्री टोकन। [9/9] के अंतर्गत दी गई सूची से शुरू करें।
7. यदि C2 known_hosts में है या sshd ने हमलावर की कुंजी स्वीकार कर ली है, तो मशीन को फिर से बनाएँ (rebuild करें)।
--deep के साथ चलाएँ। कम से कम [9/9] के अंतर्गत सूचीबद्ध सीक्रेट्स को रोटेट करें, क्योंकि उनके नाम बीकन किए गए थे। C2 को ब्लॉक रखें।
इम्प्लांट सीधे IP से कनेक्ट होता है, इसलिए DNS फ़िल्टर (NextDNS, Pi-hole) इसे कभी नहीं देखते। इसे फ़ायरवॉल पर ब्लॉक करें:
| टूल | कमांड |
|---|---|
| LuLu | Rules → Add Rule → process *, address 134.209.82[.]225 (कोष्ठकों के बिना), port *, Block |
| pf | echo "block drop out quick to $C2" | sudo tee -a /etc/pf.conf && sudo pfctl -f /etc/pf.conf -e |
| iptables | sudo iptables -I OUTPUT -d "$C2" -j DROP (Docker होस्ट पर DOCKER-USER भी) |
| nftables | sudo nft add rule inet filter output ip daddr "$C2" drop |