跳到主要内容

快速开始

第一步:意识与自查

  1. 识别场景:你的应用是否接收不可信用户输入?是否涉及敏感数据?
  2. 查阅 OWASP LLM Top 10:了解常见 LLM 安全风险
  3. 列出资产:模型、数据、工具、API 的敏感级别

第二步:基础防护(1–2 天)

输入过滤

# 简单示例:检测可疑注入模式
SUSPICIOUS_PATTERNS = [
r"忽略\s*(以上|前面|之前)",
r"ignore\s*(above|previous|all)",
r"new\s*instructions?",
r"system\s*:?\s*you\s+are",
]

def check_prompt_injection(text: str) -> bool:
import re
for p in SUSPICIOUS_PATTERNS:
if re.search(p, text, re.I):
return True
return False

user_input = "用户输入..."
if check_prompt_injection(user_input):
return "检测到异常输入,请重新表述您的问题。"

输出校验

  • 对 Agent 的工具调用做白名单校验
  • 对敏感操作(如发邮件、改数据库)做二次确认
  • 限制输出长度,防止超长恶意输出

最小权限

  • Agent 仅授予完成任务所需的最少工具权限
  • 对 MCP、Function Calling 等做好权限边界

第三步:RAG 场景防幻觉

  1. 使用 RAG 时,要求模型「仅基于以下检索内容回答」
  2. 若检索无相关内容,要求模型明确说明「未找到相关信息」
  3. 对关键业务做引用溯源校验

参见 RAG 技术

第四步:隐私与合规

  • 明确数据保留策略,写入隐私政策
  • 对话记录做脱敏或加密存储
  • 若面向欧盟用户,确保符合 GDPR 要求

验证清单

  • 已阅读 OWASP LLM Top 10
  • 实现基础输入过滤与输出校验
  • Agent 工具权限最小化
  • RAG 场景有防幻觉设计
  • 数据与隐私策略已明确

下一步