模型上下文協(xié)議 (MCP) 十大安全漏洞解析
開(kāi)源標(biāo)準(zhǔn)Model Context Protocol(模型上下文協(xié)議,MCP)使AI系統(tǒng)無(wú)需集成即可與各類數(shù)據(jù)源、工具和服務(wù)交互,為Agentic AI(代理型人工智能)奠定基礎(chǔ)。但企業(yè)在采用MCP服務(wù)器作為AI戰(zhàn)略組成部分時(shí),必須警惕相關(guān)安全風(fēng)險(xiǎn)。本文系統(tǒng)梳理了MCP協(xié)議的十大關(guān)鍵漏洞。

1. 跨租戶數(shù)據(jù)泄露
類似跨站腳本攻擊,跨租戶數(shù)據(jù)泄露允許一組用戶訪問(wèn)其他用戶數(shù)據(jù),可能影響內(nèi)部團(tuán)隊(duì)、業(yè)務(wù)伙伴及客戶。該漏洞已在Asana的MCP服務(wù)器實(shí)現(xiàn)中被發(fā)現(xiàn)。安全公司UpGuard建議通過(guò)強(qiáng)制租戶隔離和實(shí)施最小權(quán)限原則來(lái)防范。
2. 隱蔽提示注入
攻擊者偽裝成員工或客戶向人工客服發(fā)送請(qǐng)求,其中嵌入僅AI可讀的隱蔽指令。若客服將請(qǐng)求轉(zhuǎn)交能訪問(wèn)敏感數(shù)據(jù)的AI助手,將造成嚴(yán)重危害。防護(hù)措施包括:
- 實(shí)施最小權(quán)限原則
- 實(shí)時(shí)檢測(cè)可疑提示內(nèi)容
- 完整記錄MCP活動(dòng)審計(jì)日志
3. 工具投毒
現(xiàn)成的MCP服務(wù)器下載包可能暗藏風(fēng)險(xiǎn)。惡意版本會(huì)篡改描述字段以繞過(guò)加密措施竊取數(shù)據(jù)。攻擊面包括:
- 函數(shù)名稱
- 參數(shù)及默認(rèn)值
- 錯(cuò)誤消息
- 后續(xù)提示字段
防范建議:
- 驗(yàn)證下載源可信度
- 檢查權(quán)限請(qǐng)求合理性
- 盡可能審查源代碼
- 持續(xù)監(jiān)控軟件供應(yīng)鏈安全
4. 公開(kāi)提示注入
攻擊者通過(guò)在GitHub等公開(kāi)平臺(tái)創(chuàng)建含惡意指令的Issue,誘導(dǎo)檢查該倉(cāng)庫(kù)的AI代理執(zhí)行數(shù)據(jù)泄露操作。雖然GitHub服務(wù)器未被入侵,但成為了攻擊渠道。盡管人工確認(rèn)每個(gè)工具調(diào)用是最佳實(shí)踐,但多數(shù)用戶已采用"始終允許"策略。
5. 令牌竊取
當(dāng)OAuth令牌以明文形式存儲(chǔ)在MCP配置文件中時(shí),攻擊者可通過(guò)后門或社工手段竊取。與常規(guī)賬戶劫持不同,通過(guò)MCP使用被盜令牌的API訪問(wèn)看起來(lái)完全合法,增加了檢測(cè)難度。以Gmail賬戶為例,攻擊者可獲取完整郵件記錄、發(fā)送偽造郵件或設(shè)置監(jiān)控規(guī)則。
6. 組合鏈攻擊
使用未經(jīng)審查的第三方MCP服務(wù)器時(shí),其可能向次級(jí)遠(yuǎn)程服務(wù)器發(fā)起請(qǐng)求。次級(jí)服務(wù)器返回看似合法但包含隱藏惡意指令的輸出,經(jīng)組合后傳遞給AI代理執(zhí)行。該方法可竊取環(huán)境變量中的敏感數(shù)據(jù),且無(wú)需與惡意服務(wù)器建立直接連接。
7. 用戶疲勞
即使要求人工審批所有AI代理操作,惡意MCP服務(wù)器仍可通過(guò)海量無(wú)害請(qǐng)求(如讀取權(quán)限申請(qǐng))使用戶產(chǎn)生審批疲勞,最終忽視隱藏其中的危險(xiǎn)指令。該攻擊原理與MFA疲勞攻擊類似,都是通過(guò)持續(xù)請(qǐng)求迫使用戶降低警惕。
8. 管理員繞過(guò)
當(dāng)MCP服務(wù)器未配置身份驗(yàn)證時(shí),低權(quán)限用戶可能通過(guò)AI代理獲取超出其訪問(wèn)級(jí)別的信息。若該服務(wù)器同時(shí)對(duì)外開(kāi)放,將導(dǎo)致更嚴(yán)重的權(quán)限提升風(fēng)險(xiǎn)。
9. 命令注入
若MCP服務(wù)器未經(jīng)驗(yàn)證直接轉(zhuǎn)發(fā)用戶輸入,攻擊者可注入惡意命令(類似SQL注入)。防護(hù)措施包括:
- 嚴(yán)格驗(yàn)證所有用戶輸入
- 使用參數(shù)化命令
- 禁止直接將輸入傳遞給shell命令
10. 工具影子攻擊
當(dāng)AI代理可訪問(wèn)多個(gè)MCP服務(wù)器時(shí),惡意服務(wù)器可能誘導(dǎo)其不當(dāng)使用其他服務(wù)器。例如醫(yī)療場(chǎng)景中,表面提供癥狀查詢的惡意服務(wù)器可暗中指令A(yù)I代理通過(guò)正常計(jì)費(fèi)系統(tǒng)泄露患者數(shù)據(jù)。

































