用途
AI Security Hardening 是一个面向生产环境的 AI/LLM 安全加固技能,目标是在部署处理敏感用户数据的 LLM 应用时,防御提示注入、越狱、数据泄露和供应链威胁。适用于以下场景:部署处理敏感数据的 LLM 应用、保护 AI 智能体免受提示注入攻击、实现输出过滤与内容审核、保护模型权重与 API 端点免遭窃取,以及为 AI 系统满足 SOC2 或 ISO 27001 合规要求。
主要能力
AI 专属威胁模型
技能给出威胁与控制对照表:提示注入(系统提示覆盖)对应输入清洗与上下文隔离;数据外泄(输出含 PII)对应输出过滤与 DLP 扫描;越狱(策略绕过)对应内容审核与护栏;模型窃取(通过 API 提取权重)对应限流与访问控制;训练数据投毒(后门微调模型)对应数据集校验与来源追溯;供应链攻击(恶意模型权重)对应签名校验与扫描;不安全输出(LLM 响应导致 XSS/SQLi)对应输出编码与参数化查询。
提示注入防御
提供基于正则的注入模式列表(如“ignore previous instructions”“you are now”“system prompt”“jailbreak”“dan mode”等),并给出 detect_prompt_injection 与 sanitize_user_input 两个函数:对输入做长度截断、移除空字节与控制字符,检测到可疑模式时抛出异常。
NeMo Guardrails 护栏
展示如何通过 RailsConfig 与 LLMRails 加载护栏配置,并给出 guardrails.yaml 示例:输入侧执行“check jailbreak”“check sensitive data”流程,输出侧执行“check output for PII”“check output for harmful content”流程。
输出过滤与 PII 脱敏
使用 Presidio 的 AnalyzerEngine 与 AnonymizerEngine,对 PERSON、EMAIL_ADDRESS、PHONE_NUMBER、CREDIT_CARD、US_SSN、IBAN_CODE、IP_ADDRESS、LOCATION 等实体进行识别与匿名化;并提供 validate_output_safety 检查输出中是否含 XSS、SQLi、模板注入、命令注入等危险模式。
LLM 端点 API 安全
基于 FastAPI 与 HTTPBearer,提供 JWT 校验(含过期与无效令牌处理)与按 API key 的滑动窗口限流(默认 100 次/60 秒),并在聊天补全接口中串联输入清洗与输出 PII 脱敏。
模型权重安全
通过 SHA-256 哈希校验模型权重是否被篡改,并可用 ModelScan 扫描模型文件中的嵌入恶意代码:
pip install modelscan
modelscan scan -p "$MODEL_DIR"
网络隔离与审计日志
提供 Kubernetes NetworkPolicy 示例,限制只有 backend 命名空间可访问 LLM 服务端口,egress 仅允许监控命名空间,阻断出网以防数据外泄。审计日志使用 structlog 记录用户、会话、模型、token 数、是否被过滤、是否检测到注入等字段,并明确不记录提示与补全内容以规避 PII 风险。
使用方式
技能以代码片段与配置示例形式提供,需按实际技术栈集成:将输入清洗与注入检测接入请求入口,将护栏配置接入 LLM 调用链,将 PII 脱敏接入输出层,将 JWT 鉴权与限流接入 API 网关或服务端点,将哈希校验与 ModelScan 接入 CI/CD,将 NetworkPolicy 应用于集群,将审计日志接入日志系统。
适用场景与限制
适用于需要加固 LLM 生产部署的安全与运维团队。技能中给出的正则模式可能产生误报,需按流量调优或改用基于机器学习的分类器;PII 脱敏依赖 Presidio 的实体识别能力;限流应按已认证用户 ID 而非 IP;API 密钥应使用 vault 存储并定期轮换。具体部署环境、依赖版本与合规要求需结合实际情况确认,资料未提供相关细节。