AI智能体能够以机器速度行动,但在它们顺利完成任务或造成意外破坏之前,企业必须先让它们在大门口接受身份检查。组织必须确保自己知道是哪个智能体在发出请求。

为此,SPIFFE——即面向所有人的安全身份框架——是一项开放标准,可为软件工作负载(包括AI智能体)分配可验证的加密身份。然而,证明智能体的身份并不等同于确定它应该被允许访问、决定或更改什么。随着企业部署越来越多的自主智能体,这一区别暴露出一个关键的安全与治理缺口:如果SPIFFE能识别智能体,那么什么能控制智能体的行动?

IBM解决方案架构师Karthik Karunanithi表示:“SPIFFE确认智能体的存在并防止欺骗。仅此而已。因此,要阻止智能体在误解请求时造成损害,必须在SPIFFE之上再叠加一个授权层。”

智能体框架与门卫

要更好地理解SPIFFE能做什么、不能做什么,关键是要区分SPIFFE和SPIRE——即SPIFFE运行时环境。SPIFFE定义了工作负载身份的开放标准,而SPIRE则是SPIFFE API的生产级实现。SPIRE执行节点和工作负载证明,以安全地签发SPIFFE可验证身份文档(SVID)。SVID是工作负载用来证明自身身份的加密可验证凭证,携带工作负载的SPIFFE ID,并提供X.509证书和JWT两种格式。

在SPIRE部署中,SPIRE Server为其配置的SPIFFE信任域管理身份签发。它存储工作负载注册条目和签名材料,通过节点证明对SPIRE Agent进行认证,并通过这些Agent签发工作负载SVID。它还维护用于验证SVID的信任包信息,并可参与单独配置的信任域之间的联邦。

虽然SPIFFE和SPIRE建立了工作负载身份并加以验证,但仍需要一个独立的授权与策略执行层,来决定这个已认证的工作负载被允许访问或执行什么。

智能体被识别之后,什么能控制它们?

多年来,失控AI在很大程度上只属于科幻小说,隐隐搔动着公众意识的深处。随后,一系列关于AI驱动的网络安全入侵的报告接连出现,涉及OpenAI模型与Hugging Face、Claude以及Gemini。不过,全球网络安全公司Huntress Labs的网络安全顾问经理Ben Bernstein解释说,围绕失控AI智能体的日益增长的恐惧被夸大了。

Bernstein说:“末日论场景被过度渲染,因为我们已经有了一套20年的应对手册。一个失控的AI智能体在功能上与一个被入侵的服务账户或一个失控的脚本没有区别。”

由于AI只是另一种自动化工具,尽管是一种极其复杂的工具,Bernstein主张组织使用基本的基于角色的访问控制(RBAC)、持续监控和测试。Bernstein说:“把AI智能体当作任何其他新的或不受信任的应用程序来对待。把它放进沙箱,尽早并经常对它进行红队测试,验证它的行动,绝不要在第一天就给它生产环境的写入权限。”

尽管这可能是一个不错的起点,但他也同意,在设定智能体控制方面,这肯定不是终点。在考虑某项具体任务之前设定基线权限,是叠加智能体控制措施的下一步。

身份安全公司NewCore的联合创始人兼CTO Amihai Neiderman解释说,代表人类或父智能体行事的代理(OBO)AI智能体,其权限不应超过其创建者。此外,他说,自主智能体应受到IT团队或CISO所建立护栏的限制。在此基础上,Neiderman提出以下建议:

指示智能体工作的提示词不能替代上述任何权限步骤。

Huntress的网络安全顾问Will Barker表示,系统提示词中的“永不删除数据”只是一条建议,而非一种控制。开放全球应用程序安全项目基金会建议组织在下游系统中实现授权,而不是依赖大语言模型来决定某项操作是否被允许。

Barker还建议采用Open Policy Agent或类似方案来执行策略,“但要在智能体无法绕过的网关/API处强制执行”。最后,他主张使用一个终止开关,停止智能体的工具、取消待处理任务并切断其与所连接系统的访问,同时保留其行动的完整记录。Barker说:“如果活跃会话仍然存活,仅仅撤销凭证续期是无济于事的。”

但反过来看又如何:那些例行且重复的智能体任务,几乎不太可能出现意外情况?

SiriusXM的资深软件工程师兼云架构师Jayakumar Ramalingam建议,应根据智能体可能造成的损害以及该操作有多难以撤销,来为它们设定护栏。他解释说:“一个复杂的只读查询可能无害。而一个基本的API调用则未必,尤其是当它会更改客户数据、转移资金或影响生产时。”智能体可以处理影响低、易于逆转的操作,但“如果恢复需要还原数据、核对交易或联系客户,就应由人来做决定。”

授权决策本身只是起点。DigiCert产品管理高级副总裁Brian Trzupek建议企业使用持续监控,并保留智能体行动的记录。他补充说,组织应确保在需要时能够立即暂停智能体,或撤销其身份与权限。

智能体失手后的善后

归根结底,智能体要么按指令行事,要么基于不充分或缺失的信息计算行动;如果它们失手,原因是人为错误,而非恶意意图。

这并不是说智能体不会造成破坏。Neiderman表示,即便有护栏在,如果预防性的智能体控制失效,“智能体也可能被提示词注入欺骗、遭遇边缘情况,或误解指令。”

他建议采取五个步骤来将影响降到最低:

最后以一份事件报告收尾善后工作,详细说明出了什么问题,以及今后如何避免类似的智能体问题。

Q&A

Q1:SPIFFE是什么?它能做什么?

A:SPIFFE是面向所有人的安全身份框架,是一项开放标准,可为软件工作负载(包括AI智能体)分配可验证的加密身份,确认智能体的存在并防止欺骗。

Q2:SPIFFE能控制AI智能体的行为吗?

A:不能。证明智能体的身份并不等同于确定它应该被允许访问、决定或更改什么。要阻止智能体在误解请求时造成损害,必须在SPIFFE之上再叠加一个授权层。

Q3:企业应该如何控制AI智能体?

A:可采用基本RBAC、持续监控和测试,把AI智能体当作不受信任的应用放入沙箱;设置基线权限,限制代理智能体权限不超过创建者,并在下游系统而非大语言模型中实现授权,配合网关强制执行策略和终止开关。

Q4:AI智能体失控会造成哪些风险?

A:智能体可能被提示词注入欺骗、遭遇边缘情况或误解指令。若恢复需要还原数据、核对交易或联系客户,就应由人做决定,事后还需以事件报告收尾。

InformationWeek