docs: 全量烧录实证记录——状态20 产品头门禁定案(留证 suota-flash-log.jsonl),设备零风险

This commit is contained in:
agent committed 2026-07-29 05:57:22 +00:00
1 parent 14cd3277de
commit 5a981439aa
2 files changed
+15 -3

No files matched your search

+8 -2
View File
@@ -42,9 +42,15 @@
| 传输 | 三轮"首块前静默停滞" | **asyncio StreamReader 64KiB 行限制**,144KB 镜像请求永不到达(build 9: limit=4MiB) | | 传输 | 三轮"首块前静默停滞" | **asyncio StreamReader 64KiB 行限制**,144KB 镜像请求永不到达(build 9: limit=4MiB) |
| 协议 | 状态码 16 误杀 | 固件反汇编实证 = MEM_DEV type 0x13 信息应答(0x07FCB770),build 10 按信息码处理 | | 协议 | 状态码 16 误杀 | 固件反汇编实证 = MEM_DEV type 0x13 信息应答(0x07FCB770),build 10 按信息码处理 |
| 引脚 | 块1 状态 22(0x38000 读失败) | GPIO_MAP 字节序错误;探针实证 **BE 序 {05,06,00,40} 电气有效**(已固化为服务端默认) | | 引脚 | 块1 状态 22(0x38000 读失败) | GPIO_MAP 字节序错误;探针实证 **BE 序 {05,06,00,40} 电气有效**(已固化为服务端默认) |
| 门禁 | 状态 20(产品头无效) | **设备 0x38000 无有效 'pR' 产品头**(裸 'pQ' 直启),固件中止首缓冲处理——vendor 级设计,强推有砖险,**用户决策安全收尾** | | 门禁 | 状态 20(产品头无效) | **设备 0x38000 无有效 'pR' 产品头**(裸 'pQ' 直启),固件中止首缓冲处理——vendor 级设计 |
设备全程零风险(探针均 max_blocks=2 安全模式,不发 END)。 **全量烧录实证(用户授权 2026-07-29,留证 docs/suota-flash-log.jsonl)**:mem_dev_ok → 16(信息)→ gpio_map_ok → 块1 发送 → 状态 20 → 安全中止(写 flash 前终止,零写入)。结论:阻断确为 0x38000 产品头缺失/无效,非引脚误读。
**vendor 目录逆向(路线 1)**:qbsg.top /api/firmware/catalog 免认证开放;PP_da14585_4.2_CH.img 与本机镜像 sha256 完全一致(vendor OTA 镜像=本镜像,无产品头附加);NEW 变体同检 0x38000。
**解法路线(遗留 K4)**:①JTAG/UART 写产品头 ②逆向 vendor 付费激活流程(PP_da14585_4.2_NEW 的 activation 疑含产品头写入路径,libapp.so Rust secp256k1/AES)③评估 vendor 原始 OTA 在同类裸启设备上是否同败(vendor 级缺陷)。
设备全程零风险(门禁在写 flash 前中止;END/复位信号从未发出)。
## 已知问题 ## 已知问题
+7 -1
View File
@@ -1 +1,7 @@
{"kind": "run_start", "image": "analysis/firmware/fw_tst.img", "gpio": "05060040", "authorization": "用户授权 2026-07-29(DECISIONS.md)", "ts": "2026-07-29T05:27:57.656"} {"kind": "run_start", "image": "analysis/firmware/fw_tst.img", "gpio": "05060040", "authorization": "用户授权 2026-07-29(DECISIONS.md)", "ts": "2026-07-29T05:34:52.990"}
{"kind": "connected", "device": "18:BC:5A:5D:BF:28", "attempt": 1, "ts": "2026-07-29T05:35:26.042"}
{"kind": "event", "el": 34.25, "msg": {"event": "ota_stage", "stage": "mem_dev_ok"}, "ts": "2026-07-29T05:35:27.392"}
{"kind": "event", "el": 35.25, "msg": {"event": "ota_stage", "stage": "mem_dev_status", "codes": [16]}, "ts": "2026-07-29T05:35:28.385"}
{"kind": "event", "el": 36.05, "msg": {"event": "ota_stage", "stage": "gpio_map_ok"}, "ts": "2026-07-29T05:35:29.192"}
{"kind": "event", "el": 37.64, "msg": {"event": "ota_block_sent", "block": 1, "total": 301}, "ts": "2026-07-29T05:35:30.779"}
{"kind": "event", "el": 39.38, "msg": {"id": 1, "ok": false, "error": "RuntimeError: 块 1/301 失败: 状态码 20"}, "ts": "2026-07-29T05:35:32.522"}