总结一下最近学习到的MCP风险问题(杂谈)

写在前面

之前写了几篇大模型MCP相关的文章,了解了原理、实现以及安全问题。本篇文章做一些个人对于MCP安全的认知总结。

MCP风险剖析

传统的用户终端安全(计算机本身的安全)中,常见的攻击场景就是用户下载了奇奇怪怪的恶意程序并且运行了,然后导致电脑中毒、被远控、敏感信息被窃取等各种危害。

然后我们回到这张MCP的架构图

MCP的使用过程需要具备Client端和Server端,参考终端安全,Client就好比用户的终端电脑,而Server端就好比你在下载的各种软件,于是就发现换汤不换药,MCP的风险本质上不过是另一种终端安全,甚至攻击手法都是高度的类似------恶意MCP进行投毒。

MCP投毒

经过几篇文章的学习,可以发现,尽管攻击手法不同,但是都有一个共同的特点,就是需要攻击者去伪造一个恶意的MCP,或者构造一个恶意的提示词来让Client本地的大模型执行一些未授权的非法操作,这本质上就是典型的投毒。

其最终达到的目的都是为了让用户Client端的大模型去执行一些非法的操作,只不过达到这个目的手段可能是:

  • 通过伪造恶意MCP让大模型调用
  • 通过间接输入恶意提示词来让大模型听话执行

安全防护

其实从安全风险上来看,其利用手段、危害与供应链投毒、网络钓鱼高度类似,没有一个很好的源头阻断的方式,但是会有一些意识上的防护手段。

  • Server端
    • 需加强MCP市场的发布审核,避免恶意MCP上架(不过仍然会存在一些个人MCP流通的场景,不走正规发布)
  • Client端:
    • 现在成熟的MCP Client类工具的每一次调用MCP都会让用户知道这个行为,并且让用户授权进行操作,做出了一定对的防投毒的策略;不过一些个人实现的Client要注意这个风险,有这方面的意识
    • 引入第三方MCP检查工具,对本地引入的MCP工具进行扫描,就类似于PC上的杀毒软件

最后,其实从危害上来说,MCP的安全风险相对来说不会跟Web安全一样直接对企业发起攻击,更多的是像钓鱼一样对用户本身的攻击,所以最好的防护方式就是对MCP供应源头管控,以及对终端调用进行防护。

往期文章

最近都在传的大模型MCP到底是个啥

手把手学习写一个MCP服务,获取热榜文章

学习一下MCP工具投毒攻击

再学学MCP间接提示词注入

两个一样的MCP,大模型会怎么选择

相关推荐
Shawn_Shawn6 小时前
mcp学习笔记(一)-mcp核心概念梳理
人工智能·llm·mcp
九河云11 小时前
5秒开服,你的应用部署还卡在“加载中”吗?
大数据·人工智能·安全·机器学习·华为云
枷锁—sha12 小时前
【SRC】SQL注入WAF 绕过应对策略(二)
网络·数据库·python·sql·安全·网络安全
桌面运维家13 小时前
vDisk安全启动策略怎么应用?防止恶意引导攻击
安全
我是一只puppy13 小时前
使用AI进行代码审查
javascript·人工智能·git·安全·源代码管理
玄同76514 小时前
我的 Trae Skill 实践|使用 UV 工具一键搭建 Python 项目开发环境
开发语言·人工智能·python·langchain·uv·trae·vibe coding
迎仔15 小时前
10-网络安全监控与事件响应:数字世界的智能监控与应急系统
网络·安全·web安全
豆包MarsCode15 小时前
不止是写代码|产品经理如何用 TRAE 重构工作流
trae
x-cmd18 小时前
[x-cmd] jsoup 1.22.1 版本发布,引入 re2j 引擎,让 HTML 解析更安全高效
前端·安全·html·x-cmd·jsoup
laplace012318 小时前
mcp和skills区别
agent·rag·mcp·skills