
Complete exploit research for CVE-2026-43499 (GhostLock) on OPPO Watch 3 Pro, including kernel UAF analysis, disassembly, and exploit chain development with detailed reports.
Complete exploitation research on CVE-2026-43499 (GhostLock, rtmutex/futex-PI stack UAF) on the OPPO Watch 3 Pro (OWW211, ColorOS Watch China version, Android 11, ARM32).
Final conclusion: the chain-walk write mechanism crashes on trigger on OPPO 00522 (msm-5.4 refactored rtmutex), making exploitation impossible. All trigger methods (T2 requeue / sched_setattr) verified to panic on real hardware; additionally, the
/proc/switch/{lcd,mt,tp}trigger nodes are all blocked by SELinux. The mechanism research is fully preserved for reference on non-msm kernels / unpatched devices.
| Directory/File | Description |
|---|---|
ghostlock_repo/ | Full exploit source code + precompiled ARM32 binaries + detailed README |
ghostlock_oppo_report.md | Full exploit chain report |
ghostlock_deepcopy_report_v2.md | Deep-stack stamp deep disassembly measurements (corrects direction errors in the old report) |
ghostlock_depth_report.md | freed_waiter depth analysis |
ghostlock_write_target_00522_report.md | Chain-walk write target (.data writable fops) analysis |
_rev/ | kgsl vulnerability analysis (CVE-2022-22057 UAF / map_user_mem TOCTOU, both patched) |
symbols_00522.txt | 00522 kernel kallsyms symbol table (unique on the internet) |
heota_query.py | OPPO HeyOTA protocol emulation (AES-CTR, extracts 00522 firmware from the server) |
decode_kallsyms.py | kallsyms decoding script |
*_dis.txt / *_scan*.py | Disassembly records and deep-scan scripts |
freed_rt_waiter depth 0xE8 (relative to W thread sp_svc)prctl(PR_SET_NAME) deep-stack strncpy D=0xD0 → phase-1 stamp (covers +0x18..+0x27)fremovexattr deep-stack strncpy D=0x12C → phase-2 stamp (full coverage)recvmsg actual D=0xC0 (0x108 in the old report was a direction/depth error)FAKE_LOCK=0xC1ABA338 → writes unlocked_ioctl slot 0xC1ABA33Crt_mutex_adjust_prio_chain (0xc0196c4c) [7]/out path unlock(task + orig_lock) → any real chain-walk trigger inevitably panics| Item | Value |
|---|---|
| Model | OPPO Watch 3 Pro (OWW211) |
| System | ColorOS Watch China version, Android 11 (RKQ1.211102.001) |
This project is for learning and research purposes only. It may only be run on devices you own, and you should back up your data in advance. During exploitation, the device may crash, reboot, or lose data. The author is not responsible for any consequences resulting from misuse.
For research purposes only. Please comply with local laws and device manufacturer policies.
| SoC | Snapdragon W5+ Gen 1 (SW5100/monaco), Adreno 702v2 |
| Kernel | 5.4.134-perf-00522-gb29f81177a79 (ARM32, no KASLR) |
| Bootloader | Locked, OEM unlock disabled |