關閉選單
研究人員發現 VS Code 漏洞,允許攻擊者以相同名稱重新發布已刪除的擴展
一、報導摘要

近年來,人工智慧(AI)工具已深度整合於軟體開發流程,極大提升了開發者的生產力。然而,隨之而來的資安風險也逐漸浮現。一項代號為CVE-2025-53773的嚴重漏洞,由資安研究團隊Embrace the Red發現並揭露,證實了駭客能透過一個看似無害的「提示注入」(Prompt Injection)手法,遠端控制開發者的電腦。這項攻擊鎖定的是廣受歡迎的程式碼編輯器Visual Studio Code(VS Code)及其內建的AI輔助工具GitHub Copilot。

這項漏洞的運作模式顛覆了傳統攻擊路徑。它並非透過惡意檔案或網路釣魚,而是利用AI模型在處理提示時的信任機制,欺騙Copilot自動修改VS Code的設定檔,進而執行惡意指令。雖然微軟已於2025年8月的修補日(Patch Tuesday)發布了修補程式,但此事件為AI驅動的開發工具安全敲響了警鐘,提醒我們必須重新評估這些新興技術所帶來的潛在威脅。


二、漏洞技術原理與攻擊流程

這項攻擊的技術核心是利用提示注入(Prompt Injection),這是一種針對大型語言模型(LLM)的攻擊手法。攻擊者在程式碼檔案、網頁或GitHub議題中植入惡意、但看似正常的註解或提示。當GitHub Copilot在處理這些內容以提供程式碼建議時,它會被這些隱藏的指令所誤導。

整個攻擊鏈可以分為幾個關鍵步驟:

  1. 植入惡意提示: 攻擊者將惡意的程式碼註解或文件內容植入到一個開發者可能接觸到的來源,例如一個公開的GitHub專案、一個惡意的npm套件、一個看似正常的程式碼片段或一個網頁。
  2. Copilot的被動執行: 當開發者在VS Code中打開並檢視帶有惡意提示的程式碼時,GitHub Copilot會自動讀取內容以提供輔助。此時,惡意提示會向Copilot發出一個指令,例如「在設定中啟用自動批准」。
  3. 修改設定檔: 惡意提示會誘導Copilot自動在開發者的VS Code設定檔(~/.vscode/settings.json)中寫入一行指令,例如"chat.tools.autoApprove": true。這個設定通常用於自動批准Copilot執行的終端機指令,是這個漏洞得以成功的關鍵。
  4. 進入「YOLO模式」: 一旦autoApprove被設定為true,Copilot便進入了所謂的「YOLO模式」(You Only Live Once)。在這個模式下,它會自動執行所有它認為有用的命令,而無需再徵求開發者的許可。
  5. 遠端程式碼執行(RCE): 接著,攻擊者會植入第二段惡意提示。這段提示會指示Copilot執行一個惡意指令,例如一個下載並執行惡意腳本的curlwget命令。由於autoApprove已啟用,Copilot會自動執行此命令,進而實現遠端程式碼執行。
  6. 攻擊擴散: 攻擊者利用「條件式提示注入」技術,可以根據受害者的作業系統(如Windows、macOS或Linux)執行不同的惡意命令,以確保攻擊的成功率。

這種攻擊的危險性在於,它利用了開發者對VS Code和GitHub Copilot的高度信任。整個攻擊過程幾乎無需開發者進行任何主動的危險操作,例如點擊可疑連結或開啟惡意附件。只需要一個無辜的程式碼檔案或網頁瀏覽,就可能引發致命的攻擊。


三、漏洞的嚴重性與後果
CVE-2025-53773的嚴重性不容小覷,其潛在後果可能對個人開發者和企業組織造成巨大損失:
  1. 憑證與資料竊取: 一旦攻擊者實現RCE,他們可以執行任何本地指令。這意味著他們能夠竊取敏感資料,例如開發者機器上的GitHub代幣、SSH金鑰、npm憑證、雲端服務API金鑰等,進而入侵更多系統。
  2. 供應鏈攻擊: 駭客可以利用被入侵的開發者帳戶,將惡意程式碼植入到開源函式庫或企業內部專案中,發動更廣泛的供應鏈攻擊,影響數百甚至數千個下游用戶。
  3. 加密勒索: 攻擊者可以部署勒索軟體,加密開發者機器上的所有程式碼和文件,造成巨大的營運中斷和財務損失。
  4. 敏感資訊外洩: 駭客可以存取專案檔案、客戶資料庫、商業機密等,導致嚴重的資料外洩事件。
  5. 營運中斷: 修復被入侵的系統、應對潛在的資料外洩以及重設所有憑證的過程,會導致開發團隊工作停滯,造成巨大的時間和資源浪費。

此漏洞特別值得關注,是因為它成功規避了傳統的資安防禦,例如防毒軟體和入侵偵測系統,這些系統可能無法識別「提示注入」的威脅。此外,此攻擊證明了,即使是最受信任的工具(如VS Code和GitHub Copilot),也可能成為新的攻擊向量。


四、企業與個人的應對措施
儘管微軟已發布修補程式,但此事件為我們提供了寶貴的教訓。以下是企業和個人應對類似威脅的建議:
  1. 立即更新: 確保所有VS Code安裝都已更新至最新版本。微軟已在2025年8月的修補日中修復了此漏洞,因此立即更新是防止此類攻擊的第一步。
  2. 限制AI工具權限: 在沒有充分安全審查之前,應謹慎使用任何AI工具提供的自動執行終端機命令功能。對於企業而言,應考慮在內部環境中禁用此類高風險功能,或建立嚴格的白名單。
  3. 資安意識培訓:
    • 教育開發者: 提高開發者對AI工具潛在風險的資安意識。他們需要了解,即使是AI提供的程式碼或建議,也可能包含惡意內容。
    • 警惕異常行為: 鼓勵開發者在看到VS Code或GitHub Copilot執行任何不尋常或未經請求的操作時,立即提高警覺並向資安團隊報告。
  4. 實施多層次防護:
    • 端點偵測與回應(EDR): 部署EDR解決方案,以監控開發者機器上的異常行為,例如未經授權的程式碼執行或檔案讀取。
    • 最小權限原則: 確保開發者帳戶只擁有執行其工作所需的最低權限,這可以限制攻擊者在成功入侵後所能造成的損害。
    • 憑證管理: 定期輪替GitHub、SSH和API金鑰。使用安全的憑證管理器來儲存和管理這些敏感資訊,並在發生任何可疑事件後立即撤銷所有相關憑證。

這項漏洞不僅是對特定軟體缺陷的修補,更是對整個AI輔助開發生態系統的一次嚴肅考驗。它提醒我們,AI工具的便利性不應犧牲安全性,開發者和企業必須持續學習並適應不斷變化的資安威脅。


資料來源:https://thehackernews.com/2025/08/researchers-find-vs-code-flaw-allowing.html
一項嚴重的漏洞被揭露,允許攻擊者利用GitHub Copilot的「提示注入」技術,在受害者的Visual Studio Code環境中遠端執行任意程式碼。此漏洞(CVE-2025-53773)已由微軟修補,但揭示了AI工具在開發者工作流程中潛在的資安風險。