本文整合 iOS 风险知识、防护加固、标准流程、实践项目、报告模板、能力验收和落地计划。重点是建立闭环:发现风险、验证风险、修复风险、按原路径复测、形成交付报告。
1. 防护目标
iOS 防护不是"让 App 永远不可逆向"。更合理的目标是:
| 目标 | 含义 | 例子 |
|---|---|---|
| 降低静态可读性 | 减少类名、方法名、字符串和敏感配置暴露 | 符号处理、字符串保护 |
| 提高动态分析成本 | 识别调试、Hook、越狱、高风险环境 | 越狱检测、反调试、Frida 检测 |
| 保护本地数据 | 减少 token、隐私、密钥落盘风险 | Keychain、最小化缓存 |
| 加强网络安全 | 防止普通中间人抓包和请求篡改 | ATS、证书绑定、请求签名 |
| 服务端最终授权 | 核心权益不信任客户端 | 会员、支付、订单、提现由服务端判断 |
| 可复测可交付 | 每个修复都能用原路径验证 | 复测矩阵和最终报告 |
2. iOS 常见风险
| 风险 | 证据 | 验证 | 修复方向 |
|---|---|---|---|
| 本地会员判断 | isVip、premium |
Frida/LLDB 修改返回值 | 服务端授权 |
| 硬编码密钥 | strings、Hopper |
Hook 签名前参数 | 服务端密钥、短期凭证 |
| Keychain 使用不当 | access group、访问级别 | 登录/退出/重放测试 | 最小权限和吊销 |
| ATS 放宽 | Info.plist | 抓包验证 | 严格 ATS |
| 证书绑定缺失 | 可被普通代理抓包 | Burp/Charles | 公钥 pinning 和轮换 |
| URL Scheme 未鉴权 | plist scheme | 构造 URL | 登录态和参数校验 |
| WebView JSBridge 风险 | WKScriptMessageHandler |
控制域名调用 | 白名单和最小接口 |
| 越狱检测单点 | 路径、URL、动态库 | Hook 绕过后复测 | 风险评分 |
| 反调试缺失 | LLDB 可随意 attach | LLDB attach | 仅提高成本,服务端兜底 |
| 日志泄露 | Console/log | release 运行观察 | 移除敏感日志 |
3. 防护设计
3.1 符号和字符串
| 防护 | 价值 | 局限 | 复测 |
|---|---|---|---|
| Strip Symbols | 减少函数名暴露 | ObjC metadata 仍可能存在 | nm 对比 |
| Swift 优化 | 减少可读性 | 行为仍可观察 | swift-demangle 对比 |
| 字符串保护 | 降低直接搜索命中 | 运行时仍会出现明文 | Frida Hook |
| 类名方法名处理 | 提高分析成本 | ObjC 需要兼容 Runtime | Frida 枚举 |
3.2 完整性校验
检查对象:
- App 签名证书。
- 主二进制 hash。
- Framework hash。
- 资源文件 hash。
- 关键配置文件。
- 运行时加载模块。
局限:客户端完整性校验可以被 Patch 或 Hook。更稳妥的方式是把风险信号上报服务端,由服务端结合账号、设备、行为和接口风险做判断。
3.3 越狱、调试和 Hook 检测
| 检测 | 常见方法 | 响应建议 |
|---|---|---|
| 越狱 | 路径、URL Scheme、可写目录、动态库 | 风险评分,限制高危操作 |
| 调试 | ptrace、sysctl、父进程、端口 |
敏感流程加强校验 |
| Frida/Hook | 模块、线程、端口、IMP 变化 | 上报风险,不单点封禁 |
| Tweak 注入 | Substrate、libhooker、模块列表 | 记录并限制敏感接口 |
3.4 网络防护
| 防护 | 要求 |
|---|---|
| ATS | 正式环境禁止任意明文和弱 TLS |
| 证书绑定 | 绑定公钥 pin,设计备用 pin 和轮换 |
| 请求签名 | 覆盖 method、path、timestamp、nonce、body hash |
| 重放防护 | 服务端保存 nonce,限制时间窗口 |
| 鉴权 | token 绑定用户,资源归属由服务端判断 |
3.5 数据安全
| 数据 | 建议 |
|---|---|
| 密码 | 不保存 |
| token | 尽量短期,服务端可吊销 |
| refresh token | Keychain,严格访问级别 |
| 会员状态 | 可缓存展示,关键接口服务端校验 |
| 身份证/银行卡 | 尽量不落地 |
| 签名密钥 | 不保存长期共享密钥 |
| 剪贴板 | 不长期放验证码、token、密码 |
4. 复测矩阵
| 编号 | 攻击路径 | 加固前证据 | 加固后预期 | 结论 |
|---|---|---|---|---|
| R-001 | strings 搜索 secret |
命中硬编码密钥 | 不再出现长期密钥 | 记录 |
| R-002 | Hook isVip |
UI/行为变化 | 核心接口仍拒绝 | 记录 |
| R-003 | 改 userId |
可访问他人资源 | 403 | 记录 |
| R-004 | 重放请求 | 旧请求成功 | nonce 拒绝 | 记录 |
| R-005 | 用户 CA 抓包 | 明文可见 | release 阻断 | 记录 |
| R-006 | LLDB attach | 可断敏感函数 | 风险识别或限制敏感操作 | 记录 |
| R-007 | 越狱路径 Hook | 检测可被改 | 不影响服务端最终授权 | 记录 |
| R-008 | Keychain token 复用 | 退出后旧 token 可用 | 服务端吊销 | 记录 |
| R-009 | URL Scheme 拉起 | 未登录访问敏感页 | 登录态拦截 | 记录 |
| R-010 | WebView JSBridge 调用 | 任意域可调用 | 域名白名单限制 | 记录 |
5. 标准分析流程
text
授权范围确认
-> IPA 信息收集
-> plist / entitlements 审计
-> Mach-O / 符号 / 字符串分析
-> Runtime / Frida 验证
-> 抓包 / 接口验证
-> LLDB / 二进制调试
-> 风险分级
-> 修复建议
-> 原路径复测
-> 最终交付
6. 综合 Demo 项目
6.1 阶段计划
| 阶段 | 时间 | 任务 | 产出 |
|---|---|---|---|
| Demo 准备 | 0.5 天 | 构建测试 App 和测试后端 | IPA、接口说明 |
| 静态分析 | 1 天 | plist、entitlements、Mach-O、符号 | 静态报告 |
| 动态分析 | 1 天 | 抓包、Frida、Keychain | 动态报告 |
| LLDB 分析 | 1 天 | 断点、调用栈、寄存器、二进制 | 调试报告 |
| 防护改造 | 1 天 | 证书绑定、服务端授权、日志清理 | 加固版本 |
| 复测交付 | 0.5 天 | 按原路径复测 | 最终报告 |
6.2 目录结构
text
ios-security-delivery/
00-scope/
01-env/
02-static/
03-dynamic/
04-lldb-mach-o/
05-defense-retest/
06-report/
7. 最终报告模板
markdown
# iOS App 安全分析与防护复测报告
## 1. 测试边界
- App:
- Bundle ID:
- 版本:
- 样本 SHA256:
- 授权范围:
- 设备:
## 2. 工具版本
| 工具 | 版本 | 用途 |
## 3. 风险摘要
| 编号 | 风险 | 等级 | 证据 | 修复状态 |
## 4. 详细风险
### R-001 会员权益依赖客户端判断
- 证据:
- 复现步骤:
- 影响:
- 修复建议:
- 复测结果:
## 5. 防护评估
| 防护项 | 状态 | 复测结果 | 局限 |
## 6. 剩余风险
## 7. 结论
8. 能力验收
| 能力 | 合格标准 |
|---|---|
| IPA 分析 | 能输出 plist、entitlements、Bundle 信息 |
| Mach-O 分析 | 能说明架构、依赖、符号、字符串 |
| Runtime 分析 | 能枚举类和 Hook 授权 Demo 方法 |
| 抓包验证 | 能完成鉴权、篡改、重放测试 |
| Keychain 检查 | 能说明 token 保存和访问级别 |
| LLDB 调试 | 能设置断点、保存调用栈 |
| 防护复测 | 能按原攻击路径验证修复 |
| 报告交付 | 每个结论有证据和边界 |
9. 核心知识点表
| 知识点 | 核心理解 | Demo/验证 | 常见误区 |
|---|---|---|---|
| 分层防护 | 客户端提高成本,服务端最终授权 | Hook 后测接口 | 加固等于修复 |
| 符号处理 | 降低静态可读性 | nm 对比 |
符号没了就安全 |
| 完整性 | 发现篡改和注入 | hash/签名复测 | 客户端校验不可绕 |
| 越狱检测 | 风险信号 | Hook 检测函数 | 单点阻断核心业务 |
| 反调试 | 提高调试成本 | LLDB attach | 能完全阻止调试 |
| 证书绑定 | 保护链路 | 代理抓包复测 | 替代服务端鉴权 |
| 请求签名 | 防篡改和重放 | Repeater 修改 | 签名不覆盖 body |
| Keychain | 凭据存储 | 退出后 token 复测 | 永不过期 |
| URL Scheme | 外部入口 | 构造 URL | 能拉起就高危 |
| 复测矩阵 | 修复闭环 | 原路径复测 | 只看代码改动 |
10. 风险关闭标准
| 状态 | 标准 |
|---|---|
| 已修复 | 原攻击路径复测失败,服务端或客户端修复有证据 |
| 已缓解 | 攻击成本提高,但仍存在可绕过路径 |
| 需服务端改造 | 客户端无法独立修复,核心逻辑需后端控制 |
| 误报 | 有证据证明不影响安全目标 |
| 接受风险 | 业务明确接受,报告写明原因和范围 |
| 待验证 | 缺少环境、账号、接口或样本,不能关闭 |
11. 发布前安全检查
| 检查项 | 方法 | 通过标准 |
|---|---|---|
get-task-allow |
entitlements | 正式包为 false |
| ATS | Info.plist | 无任意明文放开 |
| 敏感字符串 | strings |
无长期密钥和测试配置 |
| 符号 | nm、class-dump |
release 暴露面可控 |
| 日志 | Console | 无 token、密码、签名前明文 |
| 证书绑定 | 抓包复测 | 高风险接口阻断普通代理 |
| 请求签名 | Repeater | 篡改和重放失败 |
| 本地数据 | Keychain/UserDefaults/文件 | 无长期明文敏感数据 |
| URL Scheme | 构造 URL | 敏感入口要求登录和校验 |
| Hook 复测 | Frida | 客户端变化不影响核心服务端授权 |
12. 常见问题
| 问题 | 说明 |
|---|---|
| 加固后还可以 Frida Hook,是否失败? | 不一定。要看 Hook 后是否影响核心业务和服务端授权。 |
| 证书绑定被测试脚本绕过,是否没有价值? | 仍有价值,它提高普通中间人攻击成本,但不能替代服务端校验。 |
| 越狱检测被绕过,是否高危? | 取决于绕过后能否执行高风险业务。检测应作为风险信号。 |
| Keychain 是否绝对安全? | 不是。访问级别、token 生命周期和服务端吊销同样重要。 |
| 静态看不到密钥是否就安全? | 不够。还要 Hook 签名前入口和检查服务端设计。 |
| 修复后为什么还要复测? | 因为移动端防护容易只改表面,原攻击路径复测才能证明闭环。 |
13. 防护与复测知识点详解
| 知识点 | 核心理解 | Demo/验证 | 常见误区 |
|---|---|---|---|
| 分层防护 | 客户端防护提高成本,服务端授权修复核心风险。 | Hook 后验证服务端资源接口。 | 把加固等同业务修复。 |
| 符号处理 | 去符号和混淆降低静态阅读效率。 | release 前后对比 nm、class-dump。 |
符号没了就安全。 |
| 字符串保护 | 减少直接搜索命中,但运行时仍会出现明文。 | 静态搜不到后再 Hook 运行时。 | 字符串隐藏等于密钥安全。 |
| 代码完整性 | 检测二进制、Framework、资源是否被篡改。 | hash 对比和重签名复测。 | 客户端完整性不可绕过。 |
| 签名校验 | 签名校验能发现重签名,但本地校验可被 Patch。 | 重签名 Demo 后复测。 | 签名校验替代服务端鉴权。 |
| 越狱检测 | 越狱是风险信号,不是唯一安全判断。 | Hook 检测后访问高风险接口。 | 检测到越狱就一刀切。 |
| 反调试 | 反调试提高调试成本,但不能保证不可分析。 | LLDB attach 复测。 | 反调试完全阻止逆向。 |
| Frida 检测 | 检测 Hook 环境会有误报和对抗。 | 启动 Frida 后观察风险策略。 | 检测本地决定核心业务。 |
| 证书绑定 | pinning 防普通 MITM,需要备用 pin 和轮换。 | release 代理抓包复测。 | 抓不到包就接口安全。 |
| ATS 基线 | ATS 应限制明文和弱 TLS 例外。 | 检查 plist 并抓包。 | HTTPS 就不用管 ATS。 |
| 请求签名 | 签名防篡改和重放,核心在服务端校验。 | 修改 body/sign/nonce 复测。 | 签名只在客户端验证。 |
| nonce 防重放 | nonce 必须由服务端保存一次性使用。 | 重复发送旧请求。 | 客户端生成 nonce 就够。 |
| 资源归属 | 服务端必须按 token 校验资源属于当前账号。 | 改 userId/orderId/resourceId。 | 只验证 token 有效。 |
| Keychain 策略 | 凭据访问级别、分组、同步和吊销都要控制。 | 退出登录后重放旧 token。 | Keychain 永远安全。 |
| 日志清理 | release 不输出 token、密码、签名前明文。 | Console 复测关键流程。 | 只清业务日志,不查 SDK 日志。 |
| WebView 防护 | JSBridge 要最小接口、域名白名单和参数校验。 | 构造测试页面调用 Bridge。 | WebView 本身就是漏洞。 |
| URL Scheme 防护 | 外部入口必须校验登录态和参数。 | 构造 URL 触发敏感页面。 | 能打开就高危,打不开就安全。 |
| CI 检查 | CI 适合基线扫描,不能替代人工复测。 | 扫描 plist、entitlements、strings、符号。 | CI 通过就安全。 |
| 复测矩阵 | 修复后必须用原攻击路径验证。 | 记录加固前、加固后、结论。 | 只看代码 diff。 |
| 风险关闭 | 关闭风险需要证据、修复说明和剩余风险。 | 按状态标记已修复/缓解/接受/待验证。 | 口头说修复就关闭。 |
| 高层摘要 | 管理层需要影响范围、等级、状态和下一步。 | 输出 executive summary。 | 只堆技术细节。 |
| 技术报告 | 开发需要可复现步骤、证据和修复建议。 | 输出 final report。 | 报告没有命令和样本 hash。 |
14. 防护复测实践矩阵
| 场景 | 操作 | 验收标准 |
|---|---|---|
| 证书绑定复测 | debug/release 分别代理抓包。 | 确认 pinning 和接口鉴权边界。 |
| Hook 复测 | Hook 本地判断后访问核心接口。 | 确认服务端授权是否生效。 |
| 重放复测 | 重复发送旧请求。 | 确认 nonce 和 timestamp 生效。 |
| 重签名复测 | 重签名测试包运行关键流程。 | 确认完整性和服务端策略。 |
| 发布前检查 | 检查 entitlements、ATS、日志、strings、符号。 | 形成发布门禁清单。 |
15. 交付与风险关闭标准
| 判断点 | 要求 |
|---|---|
| 1 | 先在自建 IOSReverseDemo 中触发功能,再保存命令输出、截图或日志。 |
| 2 | 同时记录静态证据和动态证据,避免只凭单一工具结论。 |
| 3 | 如果涉及服务端接口,必须保存请求、响应、账号状态和服务端期望行为。 |
| 4 | 如果验证失败,写明失败原因、设备限制、包类型限制或缺少权限。 |
以上内容用于补充正式知识点和验证边界,不作为过程标签。阅读时应把每个知识点落实到 Demo、工具输出和报告证据中。
16. 防护复测专题知识库
本节继续补充正式知识内容。每个条目都围绕概念、重要性、Demo 验证、风险判断、修复边界和常见误区展开。
1. 分层防护
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
2. 符号处理
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
3. 字符串保护
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
4. 代码完整性
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
5. 签名校验
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
6. 资源完整性
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
7. Framework 完整性
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
8. 越狱检测
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
9. 反调试
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
10. Frida 检测
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
11. Tweak 注入检测
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
12. 证书绑定
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
13. ATS 基线
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
14. 请求签名
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
15. nonce 防重放
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
16. timestamp 窗口
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
17. body hash
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
18. 服务端鉴权
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
19. 资源归属
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
20. token 吊销
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
21. Keychain 策略
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
22. 本地缓存最小化
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
23. 日志清理
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
24. WebView 白名单
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
25. JSBridge 最小接口
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
26. URL Scheme 鉴权
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
27. Universal Link 校验
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
28. CI 基线检查
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
29. 发布门禁
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
30. 复测矩阵
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
31. 风险分级
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
32. 风险关闭
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
33. 接受风险
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
34. 剩余风险
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
35. 高层摘要
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
36. 技术报告
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
37. 证据归档
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
38. 修复建议
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
39. 服务端改造
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
40. 客户端改造
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
41. 兼容性验证
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
42. 误报处理
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
43. 性能影响
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
44. 灰度发布
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
45. 回归测试
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
46. 分层防护
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
47. 符号处理
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
48. 字符串保护
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
49. 代码完整性
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
50. 签名校验
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
51. 资源完整性
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
52. Framework 完整性
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
53. 越狱检测
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
54. 反调试
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
55. Frida 检测
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
56. Tweak 注入检测
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
57. 证书绑定
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
58. ATS 基线
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
59. 请求签名
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
60. nonce 防重放
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
61. timestamp 窗口
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
62. body hash
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
63. 服务端鉴权
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
64. 资源归属
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
65. token 吊销
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
66. Keychain 策略
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
67. 本地缓存最小化
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
68. 日志清理
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
69. WebView 白名单
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
70. JSBridge 最小接口
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
71. URL Scheme 鉴权
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
72. Universal Link 校验
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
73. CI 基线检查
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
74. 发布门禁
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
75. 复测矩阵
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
76. 风险分级
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
77. 风险关闭
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
78. 接受风险
- 概念:先说明该知识点在 iOS 逆向、防护或复测中的准确位置,不把工具输出当作结论。
- 重要性:它通常决定分析入口、风险等级、服务端边界或最终交付能否复现。
- Demo 验证:在
IOSReverseDemo中选择对应功能,用测试账号触发,并保存命令、日志、截图或请求响应。 - 风险判断:判断时区分静态线索、运行时现象、服务端业务影响和防护成本提升。
- 修复边界:客户端能提高攻击成本和减少暴露,核心权益、订单、账号和资源归属仍要服务端校验。
- 常见误区:不要因为能 Hook、能抓包、能看到字符串就直接判高危,必须证明真实业务影响。
17. 交付复测补充知识点
| 知识点 | 说明 | 验证方式 |
|---|---|---|
| 复测负责人 | 用于保证 iOS 逆向分析过程可复现、可审计、可交付,避免结论只停留在工具截图。 | 在 case-ios-demo 中保存对应记录,并在最终报告中引用。 |
| 修复证据 | 用于保证 iOS 逆向分析过程可复现、可审计、可交付,避免结论只停留在工具截图。 | 在 case-ios-demo 中保存对应记录,并在最终报告中引用。 |
| 灰度策略 | 用于保证 iOS 逆向分析过程可复现、可审计、可交付,避免结论只停留在工具截图。 | 在 case-ios-demo 中保存对应记录,并在最终报告中引用。 |
| 误报记录 | 用于保证 iOS 逆向分析过程可复现、可审计、可交付,避免结论只停留在工具截图。 | 在 case-ios-demo 中保存对应记录,并在最终报告中引用。 |
| 服务端依赖 | 用于保证 iOS 逆向分析过程可复现、可审计、可交付,避免结论只停留在工具截图。 | 在 case-ios-demo 中保存对应记录,并在最终报告中引用。 |
| 客户端限制 | 用于保证 iOS 逆向分析过程可复现、可审计、可交付,避免结论只停留在工具截图。 | 在 case-ios-demo 中保存对应记录,并在最终报告中引用。 |
| 发布门禁 | 用于保证 iOS 逆向分析过程可复现、可审计、可交付,避免结论只停留在工具截图。 | 在 case-ios-demo 中保存对应记录,并在最终报告中引用。 |
| 剩余风险说明 | 用于保证 iOS 逆向分析过程可复现、可审计、可交付,避免结论只停留在工具截图。 | 在 case-ios-demo 中保存对应记录,并在最终报告中引用。 |
这些补充项不改变前面的分析流程,主要用于把知识点落到团队协作、版本复测和报告交付中。
18. 防护复测案例补充
18.1 敏感数据存储修复复测
- 知识点:修复不是把字段换个位置,而是确认敏感数据不再以可直接读取的方式存在。
- 操作:修复前后分别导出沙盒、Keychain 相关状态和运行日志。
- Demo:把 Demo 中的 token 从
UserDefaults改为更合理的 Keychain 存储,并控制生命周期。 - 观察:如果退出登录后仍能使用旧 token,请求层仍存在风险。
- 判断:本地清理和服务端失效要一起验证。
- 产物:保存修复前后对照表和接口验证结果。
18.2 证书绑定防护复测
- 知识点:SSL Pinning 应降低抓包和篡改成本,但不能替代服务端鉴权。
- 操作:代理抓包、证书替换、Hook 校验函数分别做对照。
- Demo:在 Demo 中加入证书校验,再测试普通代理是否失败。
- 观察:如果 Hook 后仍能抓包,说明攻击成本提高有限,需要补充运行时完整性检测。
- 判断:Pinning 通过复测只能说明网络通道更难被观察,不能说明接口逻辑安全。
- 产物:保存抓包失败证据和绕过成本说明。
18.3 客户端开关修复复测
- 知识点:本地开关只能控制展示,不能决定真实权益。
- 操作:Hook 本地开关、篡改配置、重放接口,观察权益是否真的变化。
- Demo:把 Demo 会员入口改为服务端结果驱动,并让服务端返回最终授权状态。
- 观察:UI 被打开但资源接口拒绝,是较合理的防护结果。
- 判断:核心权益必须由服务端判断,客户端只负责展示和体验。
- 产物:保存 Hook 前后 UI、接口响应和资源访问结果。
18.4 越狱检测策略复测
- 知识点:越狱检测应作为风险信号,而不是唯一拦截条件。
- 操作:分别测试普通设备、越狱设备、Hook 绕过后的行为。
- Demo:Demo 检测到高风险环境后限制敏感操作,而不是直接崩溃。
- 观察:直接退出 App 会影响可用性,也容易暴露检测点。
- 判断:更成熟的做法是风险分级、服务端联动和关键操作二次校验。
- 产物:输出设备状态、检测结果、业务限制和误伤评估。
18.5 反调试复测
- 知识点:反调试主要增加动态分析成本,需要评估稳定性和误伤。
- 操作:尝试 LLDB 附加、Frida 注入、启动期断点,记录 App 行为。
- Demo:对 Demo 加入简单调试检测后,观察 Debug 包与 Release 包差异。
- 观察:过强反调试可能影响崩溃采集、自动化测试和合法诊断。
- 判断:防护策略要兼顾安全收益和工程可维护性。
- 产物:保存误伤场景、绕过场景和建议配置。
18.6 符号混淆复测
- 知识点:混淆目标是降低语义可读性,而不是让二进制无法运行或无法排障。
- 操作:混淆前后比较类名、方法名、字符串、崩溃符号化和包体大小。
- Demo:对 Demo 的会员、支付、风控类名做混淆,检查关键业务语义是否仍明显。
- 观察:只混淆少量类名效果有限,字符串和资源配置仍可能暴露入口。
- 判断:混淆通过标准应包含"语义降低"和"功能稳定"两个维度。
- 产物:保存混淆前后对照和回归测试结果。
18.7 服务端校验闭环
- 知识点:移动端防护最终要落到服务端权限、订单、账号和资源归属校验。
- 操作:针对每个客户端可篡改点,验证服务端是否重新计算或拒绝。
- Demo:修改 Demo 的价格、会员等级、userId 后重放请求,确认服务端响应。
- 观察:如果服务端只相信客户端字段,客户端任何加固都只是延缓问题暴露。
- 判断:高价值业务必须用服务端状态作为最终可信来源。
- 产物:输出客户端字段、服务端校验点和修复状态。
18.8 最终交付验收
- 知识点:交付不是简单写结论,而是让研发、测试、安全和业务都能复现与关闭。
- 操作:为每个风险提供样本版本、影响范围、复现步骤、证据、修复建议和复测结果。
- Demo:用 Demo 的会员绕过案例写一份从发现到修复再到复测的完整记录。
- 观察:缺少复测截图或服务端响应时,风险关闭依据不足。
- 判断:只有"修复代码、验证通过、剩余风险明确"同时满足,才建议关闭。
- 产物:形成最终报告和风险关闭清单。