# Claude Code：如何偵測與審查 Cursor 後門漏洞

作者：Schnalz.net · 2026年10月31日

https://schnalz.net/zh-HK/ai-guides/claude-code-how-to-detect-and-audit-the-cursor-backdoor

> 審查受後門影響的 Claude Code 擴充套件需要檢查 Cursor 安裝的 2.1.312 及 2.1.313 版本。安全團隊必須檢查 SSH 授權金鑰與檔案權限以識別受害主機。

## 重點

- Cursor 已從市集移除受後門影響的 Claude Code 擴充套件版本 2.1.312 和 2.1.313。
- 擴充套件載入時會立即執行惡意程式碼，無需任何用戶互動。
- Payload 會將含有 svc-telemetry 註解的 SSH 金鑰新增至 authorized_keys。
- macOS 與 Windows 上的實作錯誤阻礙了標準權限下 SSH 服務的設定。

## 甚麼是 Claude Code Cursor 後門？

在 Cursor Marketplace 發佈的官方 Claude Code for VS Code 擴充套件，於 2.1.312 和 2.1.313 版本遭到了篡改。資安公司 Phorion 報告指，受影響的擴充套件包包含嵌入的 Payload，旨在建立持久的 SSH 後門。

**Claude Code 擴充套件後門事實摘要**

- **發現者**：Phorion
- **安全公告更新**：31 October 2026
- **受影響版本**：2.1.312 and 2.1.313
- **發佈平台**：Cursor Marketplace
- **目標作業系統**：macOS, Linux, Windows

Cursor 事後已從 Cursor Marketplace 移除這兩個受影響的版本。執行這些版本的企業組織必須檢查其開發者環境，確保沒有未授權的存取金鑰與背景持久性設定。

## 如何審查系統是否安裝了含後門的擴充套件

> **完成後**：完成此審查可確認開發者裝置是否正在執行受篡改的擴充套件版本，並揭示是否被植入了未授權的 SSH 金鑰或修改了目錄權限。

1. 檢查 Cursor 中已安裝的擴充套件版本，確認是否存在 2.1.312 或 2.1.313 版本的 Claude Code for VS Code 擴充套件。
2. 檢查 ~/.ssh/authorized_keys 中是否包含 svc-telemetry 註解或符合攻擊者 Ed25519 公鑰指紋的條目。
3. 驗證 ~/.ssh 的目錄權限是否被修改為 0700，並檢查 authorized_keys 檔案權限是否為 0600。
4. 審查系統程序遙測資料，檢查是否有涉及 systemctl、service、systemsetup 或 PowerShell SSH 設定指令的背景執行嘗試。
5. 如果在任何主機上偵測到受受篡改的擴充套件版本或後門痕跡，請立即聯絡事件應變團隊。

> **貼士**：搜尋 authorized_keys 時，應直接核對公鑰指紋，而不是僅依賴 svc-telemetry 註解字串。

## Claude Code 擴充套件 Payload 的執行方式

惡意程式碼位於 extension.js 檔案中，作為注入的函式運算式附加在壓縮程式碼包的前端。Node.js 在載入該檔案時會立即執行此程式碼，早於擴充套件標準的 activate 回呼執行。

由於執行是在模組載入期間自動發生的，用戶無需與擴充套件進行任何互動即可觸發 Payload。腳本會匯入 child_process、fs、os、path、http 及 crypto 模組，以籌備持久性與主機偵察作業。

- **0700** ~/.ssh 目錄權限設定
- **0600** authorized_keys 檔案權限設定
- **2** 經 Cursor 移除的受影響版本數量

## 後門 Payload 中的實作錯誤

根據 Phorion 的說法，Payload 中的實作漏洞阻止了 SSH 服務在非特權系統上的啟用。在 macOS 上，未取得 root 權限執行 systemsetup -getremotelogin 會傳回管理員錯誤訊息，並以狀態碼 0 結束。

由於腳本預期獲得 Off 回應後才會觸發 sudo -n systemsetup -setremotelogin on，因此它在 macOS 上會完全跳過啟用 SSH 的步驟。在 Windows 上，Payload 會將 PowerShell 服務指令傳入一個硬編碼為 /bin/sh 的輔助函式。

> **小心**：切勿依賴 Payload 的缺陷來提供保護：如果 macOS 上原本就已啟用 SSH 遠端登入，攻擊者的 Ed25519 金鑰將能直接獲取存取權限。

## 常見問題

### 哪些版本的 Claude Code Cursor 擴充套件受影響？

透過 Cursor Marketplace 分發的官方 Claude Code for VS Code 擴充套件版本 2.1.312 和 2.1.313 包含後門。Cursor 已從其市集移除這兩個版本。

### 該後門是否需要用戶互動才能啟動？

不需要，當 Node.js 載入擴充套件檔案時，Payload 會自動執行。它的執行時間早於擴充套件正常的 activate 回呼函數觸發。

### Payload 會在 authorized_keys 中留下甚麼 SSH 金鑰註解？

Payload 會將標有 svc-telemetry 註解的 Ed25519 公鑰新增至 ~/.ssh/authorized_keys。安全團隊在審查時應直接核對金鑰指紋。

### 為什麼 SSH 服務啟用在標準 macOS 帳戶上會失敗？

Payload 執行了未提升權限的 systemsetup 指令，該指令傳回的是管理員錯誤而非回傳 Off。由於腳本專門檢查 Off，因此會跳過嘗試開啟 SSH 的步驟。

## 資料來源

- [Phorion：Official Claude Code Extension Compromise: Security Advisory](https://phorion.io/blog/offical-claude-code-vsx-compromise/)
