我们分析协议的风险,需要在了解协议的基础上进行。如果对协议的内容不清楚,请先参阅MCP(2).协议介绍及SDK的使用
MCP协议的风险
从MCP协议的情况看,协议的设计者充分考虑了使用的便捷性,丝毫未考虑安全风险。看几个关键问题:
-
没有访问控制及权限管理。有人说,后边可以加啊。从IT的发展史上看,一个协议一旦开始不设计安全性,后边想加,都极其艰难。很简单,看看ARP协议,DNS协议,都知道有那么多问题,但到今天还在使用,就是例子。4G,5G协议首先考虑安全问题,都是前边吃的亏够多才这么做的。 -
函数直接调用。这个风险涵盖了API里的所有风险,只有更大。什么参数处理,溢出,注入,DDoS,重放攻击等,一个都跑不掉。 -
数据库操作直接用SQL。从WebServer开始,SQL注入就是个梦魇般的存在,这还是在程序可以控制SQL生成的基础上。现在,可以直接执行SQL了,这意味着把权限基本都直接给了黑客了。 -
协议使用Json,框架及基于Json的所有漏洞,基本可以重现一遍了。
最初MCP协议是给桌面用的,以上问题都可控,但目前可以远程调用,完全变成了不可控制。
可能设计者认为,SQL语句,函数调用方法及参数,都是大模型生成的,不会是恶意的。但函数一旦暴露出来,黑客会傻到守规矩吗?
这个协议的安全设计,要说好处,就只有一个,给安全公司留了一个机会,MCP Gateway之类的设备,抓紧安排吧。
大模型的安全风险
如果把安全风险再延伸一下,大模型是个更大的问题。
两年多来,大模型能力得到迅速提升,但安全上没见到什么进步,连基本的权限管理都没有,全靠外围控制,而外围控制,是很容易被解除的。
现在都在依靠大模型发展机器人。
当年阿西莫夫在写《银河帝国的时候》,曾提出著名的机器人三定律:
- 第一法则
机器人不得伤害人类,或坐视人类受到伤害;
- 第二法则
机器人必须服从人类命令,除非命令与第一法则发生冲突;
- 第三法则
在不违背第一或第二法则之下,机器人可以保护自己。
从现在的情况看,这三条法则是很难实现的。
理想国不存在,但黑镜中的机器狗追杀人类倒真有可能发生。
想想以后,家里有个机器人,但被别人控制了,是个什么样的场景。
且行且珍惜。
原文始发于微信公众号(AI与安全):MCP协议及大模型,安全风险巨大
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论