能力特性
不只是 HTTP diff 工具:同时覆盖 HTTP 语义分析与连接级协议指纹(TLS / HTTP/2 / QUIC),一套 Rust 核心支撑四个入口的全部能力。
规则体系:三类规则如何协作
接口目录描述端点契约,解析规则绑定目录字段做解码,判定规则独立评估纯 HTTP 语义。
接口目录(Endpoint Catalog)
- 定位:method + path template 定位端点
- 载体:request / response 字段 schema
- 生命周期:append-only revision,真实流量校准追加观测
- 字段覆盖度由绑定解析规则的 serving 状态派生
解析规则(Parse Rule)
- 定位:catalog_key + side + field_path 绑定目录单字段
- 载体:解码 pipeline + preconditions / assertions
- 生命周期:draft → validated → canary → active,晋升需执行证据
- apply 先匹配目录条目,产出解码 artifact
判定规则(Finding Rule)
- 定位:项目级适用 scope,独立存在
- 载体:条件 DSL,不依赖接口目录 / 解析规则
- 评估:finding 扫描时对纯 HTTP 语义的 exchange 做条件评估
- 命中贡献 rule 维度分数,进入分析视图
流量导入
八种内建格式覆盖主流抓包工具与原始报文,导入即建立可追溯的 source_hash 与 capture/session 模型。
| 格式 | 来源 / 能力 |
|---|---|
| HAR | 浏览器与抓包工具通用归档,字段树直接映射 |
| FlowLens JSON | 用户可写规范格式,模板与字段说明在四入口同步 |
| JSONL | 逐行 exchange 流,适合长会话增量导入 |
| Burp Suite XML | 原生导出项,保留 request/response 完整字节 |
| Spider mitm JSONL | 含连接级 TLS 指纹记录(JA3/JA4/GREASE/协商/QUIC) |
| SimpleHttpDumper JSON | 明文 dump 工具输出,宽松字段兼容 |
| SimpleHttpDumper text dump | 纯文本 HTTP 报文,按分隔符解析 |
| PCAP / PCAPNG | 明文 HTTP/1.1 双向流重组 + TLS ClientHello 指纹 |
自动格式探测
- 文件名、MIME、内容特征三路启发
- 低置信度直接拒绝导入
- 要求调用方手动选择格式
幂等去重
- 按内容 SHA-256 建立台账
- 重复字节复用既有 capture/session
- 删除后同文件可重新导入
导入脱敏开关
- 项目级
import.redact_transport - SNI / 远端地址 / QUIC SCID 哈希化
- 在指纹计算之后执行,保留存在性
WASM Importer 插件
- 自定义抓包格式扩展点
- 沙箱执行,产物经同一路径归一化
- 插件导入路径无连接概念,防御性清除
请求配对
五种策略覆盖自动批量与人工修正,每对携带 score、confidence 与 ambiguity 三维评估。
| 策略 | 适用场景 |
|---|---|
| WindowedHybrid | 默认推荐:时间 / 捕获顺序单调窗口内按 key 分组 |
| Hybrid | 按 method + host + path 分组,无窗口约束 |
| Sequential | 严格按捕获顺序一一对应 |
| RuleKey | request_id / trace_id 等稳定标识驱动 |
| Manual | 仅人工锁定配对,不自动产出新对 |
三维评估
score:匹配置信度数值confidence:档位判定ambiguity:候选歧义标记
锁定配对重跑
- 人工锁定后冻结该对
- 其余未锁定的请求重跑策略
- 锁定结果作为基准参与后续分析
结构化 Diff
对完整 exchange 字段树做 diff,而非只比文本;可选表示层信号层保留被归一化抹掉的指纹特征。
归一化差异不丢失
原始输入数据完整保留:原始字节落 blob store,可随时回看。导入归一化是「有损降噪」——被抹掉的差异不真正丢失,而是由表示层信号层独立记录:header 顺序、query 顺序、header 名大小写、JSON key 顺序、数组重排、编码差异。信号层可按需开启、不计入差异计数,构成「主视图降噪 + 信号层保留指纹特征」的双视图。
字段树 diff
$.request的 method / URL / query / headers / body$.response的 status / headers / body- 对象 key 顺序变化产出独立信号
表示层信号
- header 顺序 / query 顺序
- header 名大小写 / 值内参数顺序
- JSON key 顺序 / 数组重排
- 默认关闭,不计入差异计数
文本 diff 与证据
- HTTP 文本逐行对比视图
- evidence 逐字段可追溯
- 规则评估根不含
$.transport
连接级协议指纹
连接作为一等实体,存储写侧归一化、读侧分层;exchange 级 diff 不再投影 transport。
TLS ClientHello
- JA3 / JA4 本地计算(数字分量形态)
- GREASE 分量计数落库
- 导入侧完成 GREASE 归一化
TLS 协商结果
- ALPN / 版本 / cipher
- 证书只存 SHA-256 摘要
- session 复用与 0-RTT 标记
HTTP/2 指纹
- Akamai 指纹(SETTINGS + pseudo headers)
- 截断帧摘要(默认 128 帧)
- 连接级 diff 先投影为降噪聚合视图
QUIC 元数据
- version / ALPN / initial SCID
- transport_parameters 截断 32 条
- supports_early_data 标记
复用与配对 diff
- 连接复用统计与 H2 占比
- 连接配对汇总 diff(取最新 match set)
- 未配对连接清单与复用对数
异常信号
- 指纹切换信号(贡献 0.3)
- JA3 首现信号(贡献 0.4)
- 依赖 finding 扫描期 transport 水合
基线与异常发现
cohort 筛选构建正常行为基线,字段统计、内置检查、序列异常与 AI 四维贡献评分。
Cohort 筛选
- 仅正常会话 / 必需标签
- 结构化过滤 / 来源批次
- 最小样本数门槛
字段级统计(7 域)
- response body / request body
- query / 请求 headers / 响应 headers
- status / duration
内置高确定性检查
- 5xx server_error(0.7)
- 无响应 missing_response(0.5)
- 风控命中(0.6,不依赖基线)
序列异常
- 重复请求(0.3)
- 时间间隔异常(0.3 / 0.4)
- 乱序(0.4)/ 前置缺失(0.3)
四维评分
- 规则 / 统计 / 序列 / AI
- 每维硬上限,取维度 max 合并
- 统计校准动态区间
协议知识信号扫描
- 10 个项目级 generator
- 幂等去重,重复扫描不重复产 finding
- evidence 只含 id 引用 / hash / 计数
风控行为识别
L1 内置信号 + 批量会话打标,L2 cohort 基线对比输出人工复核优先级。
L1 内置信号 + 批量打标
- HTTP 429 恒命中
rate_limited - 4xx 响应体命中风控标记词 →
blocked_marker - 弱标记词仅 403 / 412 / 418 命中
- 批量会话打标,
dry_run预览 - 非 dry-run 写
session.label_risk_control审计
L2 cohort 基线对比
- 字段存在性 / 类型 / 数值偏移
- 值分布 TVD(阈值 0.2)
- 签名与转移概率频率差异
- 复合 strength 与转移 delta 截断
- 输出人工复核优先级,不自动改状态
协议知识闭环
端点契约、字段解码规则、规则演进入口与源码分析产物,构成从流量到知识的可追溯闭环。
Endpoint Catalog
- 端点字段契约,append-only revision
- 真实流量校准产出 13 种观测信号
- 逐字段解析覆盖度与 confidence 演进
- 去重键幂等,重复校准跳过
Parse Rule
- 字段级解码 pipeline + preconditions / assertions
- draft → validated → canary → active 生命周期
- 晋升必须提交执行证据,append-only revision
- 健康监控与自动降级、Canary 影子执行
- cohort 分组服务
Parse Rule Proposal
- AI 安全的规则演进入口
- validate 校验 pipeline + checks 可用
- accept 只产 Draft,后续晋升另走证据门禁
- preview 不写执行表,只记审计
Source Analysis Bundle
- 源码分析产物导入 / 预览 / 关联 / 物化
content_hash幂等去重- 关联真实追加 Catalog revision
- 物化由调用方提供可执行 pipeline
转换与插件
内建转换步骤与可持久化线性 pipeline,WASM 与 JavaScript 双沙箱插件化扩展,图形化编排与内容嗅探推荐转换候选。
内建转换 pipeline
- JSON Pointer / 正则
- Base64 / Hex / URL / MD5 / SHA
- MessagePack / CBOR / XML
- form-urlencoded / HTTP 规范化
类型链静态检查
- 导入时校验相邻 step 类型兼容
StepDataType输入输出静态推导run_with_trace返回逐步 trace
安全沙箱扩展
- WASM 插件在沙箱中运行,无网络 / 文件系统访问
- 一次性脚本用 Boa JavaScript 沙箱
- 同样无网络、文件系统、浏览器 API 与模块加载
- 两类沙箱产出都进 artifact / provenance 证据链
图形化 pipeline 编排
- 桌面端可视化创建与编辑 pipeline
- 按步骤类型展开参数表单
- 拖拽排序、即时预览
- 可视化与 JSON 两种模式互相同步
WASM 插件三类
- Transformer / Importer / Analyzer
- 出厂插件(如 UBT 解码)随应用分发
- 按项目开关,
bundled.保留命名空间 - 值执行 preview-only,不落 artifact
内容嗅探
- 熵 / 魔数 / Base64 / Hex / JSON 特征
- 纯函数,不含原始内容
- 推荐转换候选步骤
AI 能力
确定性算法产出核心结论,AI Judge 人在回路两阶段判定,内嵌 AI 助手复用 MCP 工具注册表自主调用。
AI Judge
- 人对单条 finding 显式触发
- 两阶段:扫描产 Pending,判定并入评分
- 发往 provider 的摘要不含原始 body
- AI 维度贡献硬上限 0.15
- 判定历史 append-only,幂等拒绝重复请求
内嵌 AI 助手
- 自然语言下达分析任务
- agent 复用 MCP 工具注册表自主调用
- 默认只读,写操作需显式开启
- 删除与密钥工具永不暴露
- 完整 transcript 随 job 持久化
确定性核心 + AI 辅助
- 匹配 / diff / 统计 / 规则全部确定性算法产出
- 结果可复现、可核对
- AI 只作受门控的辅助:人在回路、显式触发、默认只读
- AI 误判不影响既有证据与评分
- 判定失败不触碰 finding 原有 confidence / evidence
治理与安全
账号体系、追加式审计与证据链、遥测保留、知识包与数据管理,构成可治理的本地优先边界。
账号体系
- Argon2 密码哈希
- 逻辑路径 → 哈希目录隔离
- API Token 只存哈希与前缀
审计与证据链
- 追加式 audit_log
- artifact / provenance 不可覆盖
- 输入输出哈希与来源引用
遥测保留与压缩
- retention / compaction 编排
- 明文不落遥测表
- 失败类别与 step 定位采集
Artifact GC
- 默认
dry_run - provenance 链保守保护
- 被引用永不删,每次 pass 追加 ledger
知识包
- 导出 / 导入按
package_hash幂等 - 跨项目默认拒绝
- 回放走 append-only 不绕门禁
数据管理
- capture / session 删除带预览
- 单事务扇出,blob 保守回收
- 删除是真删,无 trash
受限 HTTPS 客户端
- host 白名单
- 私网默认拒绝
- AI 调用按需放行内网网关