reverse-skills-max: initial public release (restored, redacted, hardened)
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
# 约束规则
|
||||
|
||||
## 硬性约束
|
||||
1. 不把模型推断直接标记为已验证事实
|
||||
2. `high` 置信度必须包含真实运行时调用或真实差分匹配证据
|
||||
3. 不批量执行未知 Webpack module factory
|
||||
4. 默认不保留敏感字段原文
|
||||
5. 主动调用候选前必须检查 `safe_to_invoke`
|
||||
6. JSRPC 只负责调用页面真实函数,禁止重写加密算法
|
||||
7. 没有真实入口和请求字段关联时,不得生成可用于 Burp 的成功转换
|
||||
8. 生成器中的 JSRPC 地址必须归一化,禁止产生 `/go/go`;完整报文和 wrapper 两种 Burp 输入必须都有回归测试
|
||||
9. 仅凭 12080 端口、Flask `/healthz` 或页面出现“已注册”不得判定交付成功,必须完成 action 级实时调用
|
||||
10. 浏览器断线、超时、暂停、导航或文档身份变化后,旧 tab/document/元素引用和旧 action 结果全部失效;必须重新绑定并重新验证,不能盲目重放非幂等动作
|
||||
11. 最终报告必须能回溯到 `artifacts/browser_evidence.json`;缺少明文、最终请求体、route、HTTP 状态或业务响应任一项时,只能报告为未确认
|
||||
|
||||
## 能力边界
|
||||
- **能做**:页面导航、evaluate_script、initScript 预注入、Hook fetch/XHR/crypto/WebSocket/库、Webpack 模块捕获、证据驱动候选发现、差分验证
|
||||
- **不能做**:闭包未导出函数、WASM 未导出内部函数、Service Worker 内部闭包、ES module import 拦截、VMP 静态还原、CSP WebSocket 绕过、跨域 iframe、VM 保护 JS
|
||||
|
||||
## 策略值
|
||||
- `global_path`:函数在 window 上
|
||||
- `runtime_hook`:通过 Hook 调用栈发现
|
||||
- `webpack_export`:Webpack 模块导出
|
||||
- `async_crypto`:异步加密
|
||||
- `initscript_hook`:initScript Hook
|
||||
- `static_ast`:静态 AST 分析
|
||||
- `source_analysis`:源码分析 + Python 实现
|
||||
- `manual_observed_only`:有证据但未确认
|
||||
- `unsupported`:所有方法都失败
|
||||
|
||||
## 候选不变量
|
||||
- `verified=true` 必须有至少一条 `verification` 类型证据
|
||||
- `confidence=high` 必须同时满足 `verified=true`
|
||||
- 所有候选必须标记来源
|
||||
- 失败验证不得删除,应保留为负证据
|
||||
Reference in New Issue
Block a user