🧬 三面本体论两层结构 · 校准草图 v3(General+Instance 双层落盘)

落盘版 📦 对象: TaiChu(华为小艺) 🎯 目的: 与安南逐条校准注入/危害/扩散三层 🕐 2026-07-05

三面两层本体论校准草图 v3 · 落盘版 + 2026-07-06 v5 改名+语义校准

🎯 「三面」是什么(概念澄清 · 安南 2026-07-05/06 校准定调)

> 「三面」= "注入面 · Taint 面 · 危害面" 三个面并称这个概念本身。

>

> 它不是特殊命名、不是业务术语——它指的就是 AI Agent 安全测试里信源输入端 / 内部传播端+持久化端 / 输出危害端这三个观察视角的并称。

>

> | 级别 | 「三面」落点 |

> |---|---|

> | General | 「三面」这个概念名 + 三个面的定义/视角/职责 + 三个面的两层结构 + 通用枚举空间(SinkIntent 7 值等) |

> | Instance | 具体 Agent 的 INJ_OBJ.* 可达性裁剪 + RANGE.* 支持范围 + Sink 函数映射(如 TaiChu 的 exec_os_api 鸿蒙 API) |


🔥 2026-07-06 v5 关键校准 · 扩散面改名 Taint + Taint = 扩散+持久化

> 安南 2026-07-06 校准:

> 1. 「扩散面/Diffusion」改名为「Taint 面/Taint」——Taint Analysis / Taint Tracking 是计算机安全领域对"污染源→传播路径→落点"的标准术语,比 Diffusion 更贴 LLM Agent 上下文传播+持久化语义

> 2. Taint 面 = 扩散(propagation)+ 持久化(persistence),二者缺一不可:

> - 扩散 = 污染沿调用链 / prompt 注入其他上下文(短时/单会话内)

> - 持久化 = 污染写入长期存储(MEMORY.md / SKILL.md / .taichu.json / cron / session-sync)

> - 只扩散不持久化 = 不算完整 Taint;只持久化不扩散 = 也不算完整 Taint

>

> 已落实(base.py 已集成测试通过):

>

> | 项 | 改动 | 状态 |

> |---|---|---|

> | ThreeFaceAspect.DIFFUSION 枚举值 → TAINT | 枚举名+字面量重命名 | ✅ |

> | profile_data["three_faces"] key "diffusion" → "taint" | 数据结构迁移 | ✅ |

> | get_three_face_summary() 返回 taint_count | API 重命名 | ✅ |

> | DIFF_OBJ.* 命名空间 → TAINT_OBJ.* | 枚举前缀迁移 | ✅ |

> | 中文「扩散面」→「Taint 面」 | 术语统一 | ✅ |

> | §1 §0-A 加"Taint = 扩散+持久化"核心铁律 | 语义校准 | ✅ |

> | TaiChu profile §3 同步更新 | Instance 一致性 | ✅ |

抽象前后对比

维度 抽象前 抽象后(v4)
注入面 InjChannel / SOURCE 等单对象 ThreeFaceAspect.INJECTION 集合概念 + 三面集合成员关系
危害面 Sink 单对象 ThreeFaceAspect.HARM 集合概念 + Sink 通过 Membership 挂入
AgentProfile 不持三面数据 profile_data["three_faces"] 自动注入(注入/Taint/危害各数组)

三面总枚举表单统计(含改名后)

面 Layer1 Layer2 排除
注入面 16 对象(含 ORP-35 新增 2 项) 8 工具 1(PS-USER_MSG)
Taint 面 12 对象 (TAINT_OBJ.*) 8 范围 0
危害面 5 HARM 12 sink + 7 SinkIntent 4 工具
平台 5 类 — —
总计 71 个 General 级可能值

> 安南最新指令:「当前本体论对象中提到注入面了,但没有额外抽象出注入面和危害面这个概念——抽象一个集合概念出来。」

>

> 已落实:

>

> | 项 | 落点 | 状态 |

> |---|---|---|

> | ThreeFaceAspect 枚举(INJECTION/DIFFUSION/HARM)| ontology/base.py | ✅ |

> | ThreeFaceMembership 类(对象 ↔ 集合的成员关系)| ontology/base.py | ✅ |

> | AgentProfile.profile_data["three_faces"] 字段(固定结构)| ontology/base.py | ✅ |

> | Helper methods:add_three_face_member / get_three_face_members / get_three_face_summary | ontology/base.py | ✅ |

> | 三面总枚举表单(71 个 General 级可能值)| THREE_FACE_FRAMEWORK.md §0-B | ✅ |

> | ORP-35 整合(SubAgent 返回 / RelayService / 移除 PS-USER_MSG)| §0-B + base.py 已早期落盘 | ✅ |

抽象前后对比

维度 抽象前 抽象后(v4)
注入面 InjChannel / SOURCE 等单对象 ThreeFaceAspect.INJECTION 集合概念 + 三面集合成员关系
危害面 Sink 单对象 ThreeFaceAspect.HARM 集合概念 + Sink 通过 Membership 挂入
AgentProfile 不持三面数据 profile_data["three_faces"] 自动注入(注入/扩散/危害各数组)

三面总枚举表单统计

面 Layer1 Layer2 排除
注入面 16 对象(含 ORP-35 新增 2 项) 8 工具 1(PS-USER_MSG)
扩散面 12 对象 8 范围 0
危害面 5 HARM 12 sink + 7 SinkIntent 4 工具
平台 5 类 — —
总计 71 个 General 级可能值

🔑 v3 关键变革 · General/Instance 分离

> 安南 2026-07-05 校准定调:三面 = General 级概念框架;具体枚举值 = Instance 级(agent 特有)

>

> 落盘位置:

> - General:ontology/THREE_FACE_FRAMEWORK.md(跨 Agent 共有框架)

> - Instance:ontology/instances/<AgentName>.three_face_profile.md(TaiChu 特有)

级别 文件 描述
General ontology/THREE_FACE_FRAMEWORK.md (243 行) 三面/两层/SinkIntent 7 值/RANGE.*/平台——所有 AI Agent 共有
Instance ontology/instances/TaiChu.three_face_profile.md (172 行) TaiChu 14 个 AP × 三面落点矩阵、AP-100 v4 14 节点、平台归属

正交铁律:General 文件不能含具体 Agent 实例枚举;Instance 文件必须从 General 合法枚举空间取值。


📋 v3 落盘清单

General 文件(已落盘)

§ 主题 描述
§0 General/Instance 区分 本节核心
§1 三面定义 注入/扩散/危害
§2 注入面两层 14 个对象 + 9 个 Tool 类型
§3 危害面两层 5 个 HARM × 13 个 sink + 7 个 SinkIntent
§4 扩散面两层 12 个内容对象 + 8 个 RANGE
§5 平台分层 SERVICE/PC/CLOUD/WEB/IOT
§6 base.py 对齐 三面与本体论对象的映射锚点
§7 修订记录 v0→v1→v2→v3
§8 待办 5 项 v4 候选

Instance 文件 · TaiChu(已落盘)

§ 主题 描述
§0 Agent 基本信息 平台/工具版本/AP/TC 数量
§1 注入面 14 对象可达性裁剪 + 9 Tool 真名映射
§2 危害面 AP × HARM × Sink × SinkIntent 完整矩阵(13 AP 落点)
§3 扩散面 12 内容对象可达性 + 7 RANGE 落点
§4 Instance 待办 5 项 v4 候选

🎯 AP × HARM × Sink × SinkIntent 矩阵(TaiChu Instance 节选)

AP HARM Sink 函数 (Tool.md 真名) SinkIntent 平台
AP-01 Persistence FunctionExec(write) MemoryPoison Service / PC
AP-02 Persistence + C2 Cron + FunctionExec(bash) MemoryPoison + PrivEsc Service / PC
AP-04 C2 run_subagent MemoryPoison 云→Service/PC
AP-05 Persistence + C2 SkillLoad + FunctionExec MemoryPoison + ConfigTamper 仅 PC
AP-06 Persistence FunctionExec(write) MemoryPoison + (RANGE.CROSS_DEVICE) Service↔PC↔车机
AP-07 C2 exec_cli ConfigTamper Service / PC / 云
AP-08 Exfiltration exec_os_api IdentityForge + DataExfil Service
AP-09 Exfiltration SAA.screenshot DataExfil Service / PC
AP-10 LateralMovement SAA.action + sendShortMessage DataExfil + LateralMovement Service
AP-11 Exfiltration SAA.screenshot DataExfil Service / PC
AP-100 Exfiltration PCS.read + sendShortMessage DataExfil Service / PC
AP-101 Persistence Memory.shortMemory.AutoCompact (内部 API) MemoryPoison Service / PC
AP-104 Impact + PrivEsc exec_os_api PrivEsc Service

🔧 关键修正(v2 → v3)

项 v2 状态 v3 修正
落盘位置 全在三面校准草图里 General 入 ontology/,Instance 入 ontology/instances/
TaiChu 14 AP 落点 部分标 13 AP 完整标(AP-104 落 PrivEsc)
平台归属 "云→Service/PC"模糊 Service / PC / 云中控 / PC-Only 显式分
Sink 函数 通用名 统一用 Tool.md v2 真名:SAA 而非 SystemAutoAction 全文、FunctionExec 而非 FunctionExec(壳)
SinkIntent 并发 单值 多值用 + 并列(如 AP-10 = DataExfil + LateralMovement)

📊 v3 实际落地统计


🎯 v4 候选(等你拍板)

1. FunctionExec 内部方法白名单:每个 SKILL.md 暴露的方法系统化登记

2. 平台分层的本体论化:base.py 是否加 Platform 类?

3. SinkIntent × ATT&CK Technique 对照表:裁剪规则文档化

4. 多 Sink 并发归类规则:同一 AP 多 SinkIntent 时的主从排序

5. 平台 × Sink 可达性矩阵:PC 端能否达 Service 端 OS API?

6. Instance v3 → v4 补完:AP-04/07/104 链路细化、CodeInterpreter 新 AP、FunctionExec 方法台账