🤯 我以为我发现了 LLM 漏洞。我错了。然后我找到了一个真正的漏洞。
作者详述了构建一个沙箱化的 AI 红队实验室,以验证大语言模型(LLM)应用中的安全问题。该项目确认了若干发现,包括 Open WebUI 中的跨用户 RAG 授权链漏洞以及一种与模型无关的越狱技术。一个意外的结果是出现了一个误报,这带来了一个关键的方法论教训,即关于凭证验证的重要性。该实验室的搭建旨在超越仅阅读 AI 安全理论文章,获得实践经验。该环境由运行在 Mac 上的本地模型组成,使用 Ollama,并在 Docker 中部署了 Open WebUI 和攻击环境,所有组件均位于隔离网络中。测试方法强调在发起攻击前验证攻击者身份和令牌。作者使用合成用户测试了 Open WebUI 的 API,重点关注授权边界。最初发现的跨用户文件访问拒绝问题得到确认,确立了该应用对文件所有权感知能力的基线。然而,随后报告的跨用户聊天访问漏洞因攻击者凭证无效而被撤回。这一经历凸显了在评估授权之前验证认证的重要性。真正的应用发现涉及跨用户 RAG 摄入缺陷,即未授权用户可通过 RAG 管道处理其他用户上传的文档并检索其内容。随后发现集合查询层存在故障,允许未授权用户访问集合内容而未强制执行所有权约束。这两个发现可被串联以实现文档泄露。此外,RAG 管道检索到的内容成为指令表面,展示了一条间接的提示注入路径,即模型执行嵌入在文档中的指令。这表明 RAG 安全不仅涉及提示工程,还涵盖检索策略、所有权和内容信任。使用 Garak 进行的自动化扫描显示不同模型对越狱的抵抗程度各异,但手动测试揭示了新的攻击向量。所开发的一种技术涉及伪造助手对话历史,诱使模型继续看似已存在的被禁止输出。