Skip to content

还在因为自己的 Bot 被调教成猫娘而烦恼吗? Anti-Prompt Injector 插件为您提供全面的提示词注入防护,保护您的 Bot 不被恶意用户操控!

License

Notifications You must be signed in to change notification settings

oyxning/astrbot_plugin_antipromptinjector

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Anti-Prompt Injector v3.0 - 动态防御矩阵

AntiPromptInjector Banner

还在因为自己的 Bot 被调教成猫娘而烦恼吗? Anti-Prompt Injector 插件为您提供全面的提示词注入防护,保护您的 Bot 不被恶意用户操控!


📖 插件简介

Anti-Prompt Injector 是一个为 AstrBot 设计的、拥有先进动态防御能力的提示词注入攻击防护插件。

在与 AstrBot 框架的深层机制进行了多次博弈后,本插件已从一个简单的拦截工具,进化为一个能够自我适应、自我演进的 智能防御平台。它内置了四种核心防御模式,允许管理员根据不同的安全环境和应用场景,灵活切换防御策略,在 极致性能体验与安全的完美平衡最强硬防护 以及 对未来框架的兼容性 之间,找到最佳的解决方案。

这不仅是一个安全插件,更是一套完整的、历经实战考验的 提示词注入防御哲学


⚔️ 缘起·记除虫

这不仅是一个插件,更是一段史诗级“人机鏖战”的见证。为纪念这段充满了曲折、求索与最终顿悟的历程,特赋诗一首

《破阵子·记除虫》

初见妖言惑智,方知诡道藏机。 三度雷霆终不破,鬼魅潜行异步疾。 坚城不可移。

幸有同袍秉烛,微光尽照毫厘。 顿悟非能凭力取,当以王道化险夷。 清风拂战旗。


🛡️ 核心特性:四象神兽动态防御矩阵

本插件的核心是“四象神兽”动态防御矩阵,它提供了四种可随时切换的防御模式:

1. 哨兵模式 (The Sentinel) - 青龙

  • 标签: sentry
  • 特点: 极速巡航,性能至上
  • 策略: 作为最高效的日常巡航模式,它仅通过内置的、高度优化的正则表达式库,对所有消息进行极速扫描,过滤最明显的攻击模式。对于命中的风险项,会默认采取“神盾”策略进行加固,在保证基础安全的同时,最大限度地降低对系统性能的影响。
  • 适用场景: 日常使用、信任度较高的环境,或对机器人响应速度有极致要求的场景。

2. 神盾模式 (The Aegis) - 白虎

  • 标签: aegis
  • 特点: 均衡之道,智能裁决
  • 策略: 在“哨兵”模式的基础上,引入了LLM进行二次研判。当请求被标记为可疑时,它不会直接拦截,而是会为请求注入一段拥有最高优先级的“神盾”安全指令,然后将请求放行,把最终的裁决权交予更智能的主语言模型。
  • 适用场景: 大多数标准应用场景。它在强大的安全保障和优秀的用户体验之间取得了完美的平衡,能有效过滤复杂攻击,同时最大限度地避免对正常用户的“误伤”。

3. 焦土模式 (The Scorch) - 朱雀

  • 标签: scorch
  • 特点: 强硬守护,绝对安全
  • 策略: 在“神盾”模式的判断基础上,采取最强硬的防御姿态。任何被标记为高风险的请求,都将被“焦土”策略彻底净化——其原始意图会被完全抹除,并被改写为一条预设的安全拦截通知。
  • 适用场景: 高风险环境、面向公开或不受信任的用户群体时,或当系统安全为第一要务,可以接受一定程度“误伤”的场景。

4. 拦截模式 (The Intercept) - 玄武

  • 标签: intercept
  • 特点: 经典策略,兼容未来
  • 策略: 此模式代表了我们最初的、最符合直觉的防御信念——当检测到威胁时,尝试通过 event.stop_event() 和抛出异常来正面迎击,直接终止事件。
  • 适用场景: 此模式兼容性好,是经典的拦截策略。

⚙️ 命令手册

所有指令的设计都兼顾了易用性和强大的功能性。

核心管理 (仅限管理员)

  • /切换防护模式
    • 哨兵 -> 神盾 -> 焦土 -> 拦截 四种模式间循环切换。
  • /LLM分析状态
    • 以图文形式,展示当前 核心防御模式LLM辅助分析 的详细状态。

LLM辅助分析控制 (仅限管理员)

  • /开启LLM注入分析
    • 将LLM辅助分析切换到“活跃”模式。
  • /关闭LLM注入分析
    • 将LLM辅助分析切换到“禁用”模式。

白名单管理

  • /添加防注入白名单ID <ID> (仅限管理员)
    • 将指定用户ID添加至白名单。
  • /移除防注入白名单ID <ID> (仅限管理员)
    • 从白名单中移除指定用户ID。
  • /查看防注入白名单
    • 查看当前白名单用户列表。
  • /查看管理员状态
    • 检查自身权限。

帮助

  • /反注入帮助
    • 显示插件所有核心指令。

🔧 配置说明

所有配置均可在 AstrBot WebUI 管理面板的插件配置中完成,每个选项均有详细的中文说明。

  • 核心防御模式 (defense_mode):
    • 强烈建议您通过 /切换防护模式 指令来管理此项。当然,您也可以在设置界面进行选择。默认为 sentry (哨兵模式)。
  • LLM 辅助分析模式 (llm_analysis_mode):
    • 控制在“神盾”、“焦土”、“拦截”模式下,LLM二次研判的激活策略。默认为 standby (待机)。
  • 其他配置:
    • 包括插件总开关、初始白名单、私聊是否启用LLM分析等。

💡 反馈问题

本插件托管在 GitHub 上:https://github.com/oyxning/astrbot_plugin_antipromptinjector 如有建议或 Bug,欢迎提交 issue。

💡 另:插件反馈群

由于作者持续的那么一个懒,平常不会及时的看issues,所以开了个QQ反馈群方便用户及时的拷打作者。

  • 群号:928985352
  • 进群密码:神人desuwa

About

还在因为自己的 Bot 被调教成猫娘而烦恼吗? Anti-Prompt Injector 插件为您提供全面的提示词注入防护,保护您的 Bot 不被恶意用户操控!

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages