mirror of
https://github.com/Lakr233/vphone-cli.git
synced 2026-04-05 13:09:06 +08:00
Batch-tested all 24 kernel JB patches individually: - 18 enabled: A1,A3,A4,B5,B7,B9-B20,C21,C22 - 3 PANIC: A2, B6 (proc_security_policy), B8 (convert_port_to_map), C23 (hook_cred_label_update_execve) - 1 NOT_BOOT: C24 (kcall10) Added research/kernel_patch_jb/ with per-patch analysis notes.
824 B
824 B
B10 patch_vm_map_protect
How the patch works
- Source:
scripts/patchers/kernel_jb_patch_vm_protect.py. - Locator strategy:
- Try symbol
_vm_map_protect. - Fallback string anchor:
"vm_map_protect(". - In function body, find forward
TBNZwith high bit test (bit >= 24) used as guard.
- Try symbol
- Patch action:
- Rewrite that conditional
TBNZinto unconditionalB target.
- Rewrite that conditional
Expected outcome
- Force bypass of a protection-check branch in
vm_map_protectflow.
Target
- High-bit permission/attribute guard branch in vm_map_protect path.
IDA MCP evidence
- String:
0xfffffe0007049ab7("vm_map_protect(%p,...)") - xref:
0xfffffe0007bc4680 - containing function start:
0xfffffe0007bc405c
Risk
- This may allow mapping/protection transitions that original VM policy intended to reject.