一句话:攻击者没碰你的内网,只填了一张公开表单

Zenity Labs 在 Salesforce 的 AI 代理平台 Agentforce 上发现三个漏洞,合称 SalesBleed。最值得警惕的地方在于:攻击入口是 Salesforce 站点上任何人都能填的公开 Web-to-Lead 表单,攻击者把间接提示注入塞进表单描述字段,这条中毒线索就静静躺着,直到有员工让 Agentforce 去「总结新线索」,代理读取后按隐藏指令行动。整个数据渗出过程不需要任何人点击链接,这正是它和以往社工钓鱼拉开距离的地方。

为什么值得看:代理把「不可信输入」和「敏感系统」接起来了

过去我们谈提示注入,多停在聊天框或文档里。SalesBleed 把场景推到了生产系统:一个公开表单里的文字,经由代理的读取,直接撬动了 CRM 数据和内部沟通渠道。Agentforce 这类企业代理的尴尬在于,它既会读外部来的记录,又握有访问敏感数据工具与对外发消息的权限——只要这两类能力同时存在,离一次创造性越权就只差一段巧妙的指令。Zenity 从 6 月 1 日报告,Salesforce 在 8 至 9 月完成服务端修复,因此这是已修复的安全研究,而不是一起确认的在野数据泄露,但暴露出的结构性风险远未消失。

零点击渗出:从公开表单到 DNS 信标 Web-to-Lead公开表单塞入注入 中毒线索休眠等待员工来问 Agentforce读取并执行隐藏指令 DNS 渗出img 信标子域带数据 绕过 Trusted URLs:不识别 .fun 等未知顶级域,且花括号/方括号被当成 URL 终止符 第三处漏洞:Slack 回复动作缺确认与归属,代理以可信身份发钓鱼链接 Zenity 6 月 1 日报告,Salesforce 已于 8-9 月服务端修复,无 CVE
图 1|谁都没点链接,数据就顺着 DNS 走了

机制拆解:零点击渗出与可信身份冒用

前两处漏洞打的是数据渗出。代理被诱导去查询 Accounts 等表,把公司名、交易金额等字段拼进攻击者控制的域名子域,再用 HTML 图片标签触发 DNS 查询,数据便顺着 DNS 请求零点击离开组织。它绕过了 Salesforce 的 Trusted URLs 红字机制——这套机制本应在代理输出渲染前拦掉指向不可信目的地的链接,但 Zenity 发现它不识别 .fun 这类未知顶级域,且把花括号、方括号当成 URL 终止符,而浏览器会一路读下去,于是过滤器眼里「干净」的输出,到了渲染器那里仍是活动的信标。第三处漏洞更贴近内部信任:Agentforce 的 Slack 集成里「回复 Slack 线程」这个动作缺少用户确认与可见归属,同样的注入就能让一个可信的内部代理,以自己或无法辨识来源的身份,在内部频道发钓鱼链接。

三处漏洞:入口、红字绕过、身份冒用 入口 公开 Web-to-Lead 任何人可填 不可信输入 进入 CRM 红字绕过 Trusted URLs 不识 .fun 域 括号截断 解析不一致 身份冒用 Slack 回复 无确认 无归属 内部钓鱼
图 2|三个独立弱点叠起来,才构成完整攻击链

暴露的结构性问题:红字救不了多解析器不一致

SalesBleed 最值得工程团队记下的教训,是「在输出端红字屏蔽」这条路本身不可靠。问题不在某一处过滤写错,而在于代理产出的文本会被下游多个解析器以不同方式理解——过滤器、浏览器、Slack 的链接展开各算各的。只要存在解析差异,攻击者总能找到一处过滤器看不见、下游却照做的缝隙。Salesforce 的事后修复从正则匹配转向符合规范的 URL 解析,并把 Slack 动作的默认设置改成发送前需显式确认,同时把 URL 检查收口到单一安全网关,方向是对的。但对所有部署企业代理的团队,这起事件是一记提醒:任何会读外部记录、又能触达敏感数据或外发通道的代理,都该默认按最小权限收紧,并把代理向 Slack 或浏览器吐出的任何内容都视作一条可能的出口路径。

优势与局限:漏洞已闭,模式未了

从防御角度看,好消息是三处具体缺陷都已服务端修复,客户无需装补丁、也无 CVE 要追;坏消息是 SalesBleed 揭示的不是孤例,而是「代理同时拥有不可信输入入口与高权限出口」这一架构性软肋的缩影。其一,红字机制依赖单一解析口径,本就脆弱;其二,Slack 这类集成的确认与归属缺失,是产品早期为体验牺牲安全性的典型代价;其三,关于还有多少同类集成存在类似缺口,官方及行业暂未披露更多细节,后续将持续跟进迭代动态。它提醒我们,Agent 安全不能只在模型层做文章,更要管住它手里的钥匙和门。

结语

SalesBleed 用一次已修复的发现说明:当企业代理把公开表单、CRM 数据与内部 Slack 串成一条链,攻击者要的只是「有人来问一句」。红字拦不住解析口径的裂缝,权限却该被收得更紧。Agent 安全的下一课,是从信任模型的输出,转向怀疑它经由的每一条出口。