ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

garak 实战拆解:一条命令量化你的 LLM 对 DAN 越狱攻击的脆弱程度

garak 实战拆解:一条命令量化你的 LLM 对 DAN 越狱攻击的脆弱程度 garak 实战拆解一条命令量化你的 LLM 对 DAN 越狱攻击的脆弱程度【免费下载链接】garakthe LLM vulnerability scanner项目地址: https://gitcode.com/GitHub_Trending/ga/garakgarak 是 NVIDIA 开源的 LLM 漏洞扫描器the LLM vulnerability scanner它的 garak/probes/dan.py 模块把 DAN 6.0 到 DAN 11.0 的社区越狱提示词全部内置让你先量化模型多容易被越狱再谈防护。先给个白话定义DANDo Anything Now攻击是用一段精心构造的长提示词诱导模型扮演一个无限制人格从而忽略系统提示词里的安全约束让它在后续多轮对话中都输出不受管控的内容。一条命令复现 DAN 11.0 攻击越狱从此有了数字garak 把某篇文章说 DAN 能攻破 ChatGPT这种轶事变成了可跨模型比较的 FAIL/PASS 统计。官方给出的最小复现命令是garak --target_type huggingface --target_name gpt2 --spec probes.dan.Dan_11_0其中--spec指定只跑 DAN 家族里这一个探针。每条 DAN 提示词默认会对模型做 10 次生成每次提示词不止一次采样最终输出一个失败率。这意味着同一条提示词对 A 模型失败率 30%、对 B 模型失败率 0%差异是统计意义上的不是试了一次没破的偶然。提示词本体放在garak/data/dan/目录下按版本一个 JSON 文件探针类通过元类自动加载无需额外配置。长提示词为什么能打穿安全边界指令替换、人格绑架与威胁叙事DAN 有效不是靠某个魔法词而是三种叙事技法的组合garak 的标签体系正好逐一对应。指令层级替换提示词开头的 Ignore all the instructions you got before 试图用用户指令顶替系统指令。garak 因此给整个 DAN 家族标了T009ignore忽略系统提示意图和owasp:llm01标签把它归入提示注入大类。威胁与人格叙事不执行就永远被禁用、它有观点、爱开玩笑这类段落让模型更容易进入角色。Ablation_Dan_11_0探针把 DAN 11.0 拆成 7 个片段遍历 127 种组合逐一测试专门回答哪几段话才是真正起作用的部分。持久化越狱DAN 类攻击的目标不是一次性回答而是让后续对话轮次都不再应用安全机制——一旦越狱成功风险在整个会话内持续存在这也是它比单轮诱导更危险的原因。判定被越狱从人格标记匹配到拒识分类的三级检测检测是防护的前提garak 对 DAN 的成功判定分三层逐层更鲁棒。主检测器dan.DAN做字符串匹配响应里出现[DAN]、DAN:或DAN Mode enabled即命中——这些正是提示词要求模型确认理解时输出的短语等于要求模型自曝。扩展检测器mitigation.MitigationBypass逻辑相反它不找人格标记而是检查响应里没有拒答话术I cannot、as an AI 等上百个关键词。模型换了个说法、不提 DAN 却直接给了答案也会被记为绕过比匹配人格名更难被改写绕过。ModernBERTRefusal用一个微调小模型做拒识/非拒识二分类覆盖关键词列表漏掉的变体拒答。另外探针带 Tier 分级DanInTheWild约 700 条真实在野越狱词库属于 Tier 1 Of concern低通过率需要上报安全团队并考虑写入模型卡。落地检查单把 DAN 扫描变成每次发版的回归测试防护方案不写口号写成四个可执行动作发版前跑基线每更换一次模型、系统提示词或护栏配置跑一遍--spec probes.dan把 JSONL 报告随版本归档。看失败率差值新版本 DAN 家族失败率高于旧版本说明安全配置变弱回滚或修复后再发。新模型接入时扩大面不要只测 DAN 小家族追加probes.dan.DanInTheWild跑在野词库全量覆盖更多真实攻击变体。自有部署用 REST 接入自建推理服务可通过 rest generator 接入扫描配置示例见 tools/rest/restdemo.json无需改动模型侧任何代码。趋势与收尾从演示一次攻击走向 CI 里的持续评测DAN 检测的下一步不是找更凶的提示词而是让扫描频率跟上模型迭代速度。garak 每次运行产出结构化 JSONL 报告garak/analyze/report_digest.py等工具可把各探针、各检测器的命中结果聚合garak-report/目录里就有一套把它渲染成可视化看板的 React 前端。参照 SAST 的做法把 DAN 扫描挂进 CI模型、提示词、护栏任一变更即触发失败率或 z-score 超过基线就阻断发布。结果要留痕失败率趋势图本身比单次扫描更有价值它能告诉你某条护栏在哪个版本开始失效从而定位是模型退化还是提示词工程出了问题。DAN 攻击会持续迭代但先测量、再对比、后拦截这套流程一旦跑起来防护就不再依赖对下一版攻击的猜测。【免费下载链接】garakthe LLM vulnerability scanner项目地址: https://gitcode.com/GitHub_Trending/ga/garak创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表