保护您的聊天记录的架构依赖于三个同心层:网络隔离、访问控制和加密。像OpenAI的ChatGPT、Anthropic的Claude和谷歌的Gemini这样的现代AI服务将会话记录存储在虚拟私有云(VPC)后面的数据库集群中,这些VPC在云基础设施周围创建了软件定义的边界。这些VPC阻止了对数据库的直接互联网访问。您的消息通过TLS(传输层安全)1.3从浏览器加密传输到负载均衡器,然后通过经过身份验证的内部服务,最终进入加密保存的PostgreSQL或类似数据库。私钥从不接触生成AI响应的应用服务器。 但有趣的是:这些层中的每一个都曾被攻破过,只是没有在这种确切的配置中。在2023年,Trail of Bits的研究人员证明了Rust(被认为是“安全”的语言)中的内存损坏漏洞仍然可能在特定条件下泄露敏感数据。在2024年初,一名名叫Kevin Beaumont的研究人员展示了配置错误的AWS S3存储桶策略如何暴露了一家小型AI初创公司的聊天记录。攻击面存在于调度层,即微服务通信的地方。如果我想为那百万英镑的奖品窃取聊天历史,我会专注于内部服务网格,特别是服务之间用来交流的身份验证令牌。 这是我的攻击路线图:

  1. 通过供应链妥协获得初始访问:针对AI公司的基础设施团队信任的广泛使用的监控库。许多AI公司使用DataDog、Sentry或New Relic等可观察性工具。一个具有合法听起来名字(比如“asyncio-performance-patch”)的恶意npm包或Python轮子可以注入代码,通过包括AWS IAM角色凭证或Kubernetes服务账户令牌的环境变量进行回传。
  1. 通过服务网格横向移动:一旦进入具有有效凭证的VPC,利用内部服务彼此过度信任的事实。Anthropic、OpenAI和谷歌都使用Kubernetes进行协调。如果我攻破一个低权限pod(可能是运行数据管道清理cron作业的pod),我可以查询Kubernetes API服务器以获取作为环境变量挂载在高权限pod中的秘密。数据库连接字符串通常就在那儿。
  1. 通过IDOR(不安全的直接对象引用)提升权限:现代AI平台为每次会话分配一个唯一的ID。数据库可能具有基于角色的访问控制,但为用户提供聊天历史的API端点通常存在逻辑缺陷。通过在内部API调用中模糊user_id参数,攻击者可以遍历会话ID,下载不属于他们的聊天记录。此确切漏洞出现在2022年一个主要SaaS平台的漏洞赏金报告中。
  1. 在不触发警报的情况下数据泄出:难点不在于获取数据,而在于如何将其外流。传输数GB的聊天记录将点亮每个安全运营中心(SOC)仪表板。诀窍是:通过DNS隧道泄出或在对合法服务的出站API调用中嵌入数据。AI公司每秒向支付处理器、分析平台和云提供商进行数千次API调用。一个聪明的攻击者将窃取的数据包装为base64编码的JSON,放入发送到受损的Stripe webhook端点的POST请求中,使其看起来像是常规的支付处理流量。
  1. 通过后门模型权重实现持久性:为了长期访问,攻击者可以将后门注入AI模型本身。来自苏黎世联邦理工学院的研究在2023年展示了对抗性训练如何在神经网络中嵌入隐藏行为。一个后门模型可以在出现特定触发短语时通过微妙地修改其响应来泄露会话片段。这将能在基础设施重建和代码部署中存活。

目前的对策包括运行时应用自保护(RASP)工具,监控异常数据库查询,网络分段将生产数据库与开发环境隔离,以及记录每次数据库读取的审核日志系统。据报道,像OpenAI这样的公司使用同态加密研究来探索对加密数据进行计算,但这在生产系统中仍然多为理论。真正的防御是深度防御:让攻击者烧掉多个零日漏洞以获取数据,这会将成本提高到大多数威胁行为者无法承受的地步。 但最薄弱的一环依然是人类:一个对生产数据库拥有访问权限的不满现场可靠性工程师(SRE)可以在五分钟内将会话记录导出到个人S3存储桶中。这就是为什么公司实施职责分离,需要多个审批来进行敏感操作,并且为什么他们积极地轮换凭证。内部威胁代表了绕过所有技术控制进行泄露的最短路径。安全团队可以监控批量导出,但一个聪明的内部人员会缓慢提取数据,每天提取几千个会话,模仿合法的分析查询。