“Anti-Prompt Injector · AstrBot 提示词安全插件”的业务核心是为大型语言模型(LLM)应用提供高阶提示词注入(Prompt Injection)防护方案,旨在抵御越狱、系统覆盖和人设调教等恶意攻击,确保LLM的系统稳定性和行为合规性。其主要功能包括:基于 Prompt Threat Detector (PTD) 进行多模特征权重评分和威胁信号检测;集成了人设冲突检测机制以保护系统预设角色;提供四象防御模式(哨兵、神盾、焦土、拦截)供管理员根据安全需求灵活选择拦截策略(如自动加固、LLM复核、改写或直接阻止);此外,还配备了自动封禁链路和功能强大的 WebUI,用于实时状态监控、黑白名单管理及详细的事件审计与日志导出。
该插件的核心实现是一个多阶段防御协调器,通过 main.py 监听 AstrBot 消息事件,并在发送给 LLM 前进行拦截处理:首先,它使用 ptd_core.py 中基于多模特征加权评分的 Prompt Threat Detector (PTD) 引擎,通过正则匹配、恶意关键词和复杂编码载荷解码(如 Base64/Gzip)来计算提示词的风险级别;同时,persona_core.py 中的人设匹配器会检测用户输入是否与预设的系统角色发生冲突;随后,主控逻辑根据管理员配置的四象防御模式(哨兵、神盾、焦土、拦截)以及双核分析结果,决定采取最终动作,包括在“神盾模式”下触发LLM复核、在“焦土模式”下强制改写提示词,或在“拦截模式”下直接中止事件;此外,它还通过持久化存储实现了自动封禁用户ID和WebUI审计服务,共同构成了 LLM 消息流的全面安全网关。