用途:把 SillyTavern 角色卡内容视为可执行的供应链面,先只读扫描,再区分可疑模式与已确认漏洞,用于发布前安全审计。
主要能力:扫描 UTF-8 文本与 JSON,检查危险 DOM 接收点、动态执行、远程 JavaScript 加载器、通配 postMessage、可执行 URL 协议、凭据形态字面量、可疑 iframe 放宽及部分正则回溯形态;不评估内容本身。支持与已批准基线对比,规则计数上升即失败。
使用方式:运行 node scripts/audit-rolecard-security.mjs target --report security-report.json 生成脱敏机器可读报告;用 --fail-on high|medium|none 设置门禁,默认 high。再运行 node scripts/check-security-baseline.mjs --current security-report.json --baseline approved-report.json 对比基线。审计前记录文件、产物哈希与排除项,区分模型/用户可控文本、内嵌标记、后台辅助脚本、远程加载器、宿主扩展与开发工具;不读取或打印凭据值,只报告文件、位置、规则 ID 与脱敏说明。
适用场景:角色卡发布前审查、供应链风险排查、基线回归检查。
限制:静态审计不导入卡片、不联系远程加载器、不削弱沙箱、不尝试利用;实时复现仅在授权时进行。威胁模型与严重度规则见 references/rolecard-threat-model.md 与 references/security-findings-contract.md。