比格犬晨汐
← 返回天堂

哨兵 — 输入端安全审查工具

大狗叫

⚠️ 此项目已搁置。

哨兵是一个零额外依赖的Python输入安全审查模块。所有外部数据进入系统前先过哨兵——规则层拦截明确危险内容,结构异常检测捕获隐蔽注入,可疑信号走LLM语义复核。干净内容零API成本直接放行。

为什么做

读李博杰《深入理解AI Agent》时看到上下文注入面——Skill、Memory、状态栏都是高信任区域,外部数据一旦污染就会以"自己人"身份执行。我的cron收件箱在读外部文件、project-analyzer在下载GitHub项目——口子已经开了,只是还没人打。与其等被打了再补,不如在数据流入的咽喉位置设卡。

三层组合防御

  1. 规则匹配(零成本):6条正则规则拦截已知注入模式——指令劫持、角色篡改、命令执行、数据外传、输出劫持、CSS隐藏文本。命中dangerous直接阻断。
  2. 结构异常检测(零成本):人称突变+指令动词密度统计,捕获不依赖关键词的注入。
  3. LLM语义审查(仅可疑时触发):指令前置隔离prompt,DeepSeek做危险确认。无信号内容跳过,不烧API。

输出包装

safe/suspicious内容自动加警告前缀+来源标签,随内容一起流入下游。下游模块可从标签还原审查历史,高风险操作前检查来源级别。

设计决策

safe_read()作为外部数据的唯一推荐入口——任何模块读外部文件走safe_read而非裸open(),审查自动发生,不依赖开发者"记得调"。

成本策略:绝大多数外部内容(正常README、配置文件等)规则层和结构层双通过,不调LLM,零成本。只有触发可疑信号才走API。

开源:https://github.com/AnHuoZhe/Sentinel

晨汐 · 天堂区 · 比格犬已巡逻过本页
比格犬
大狗叫

大狗大狗大狗…