Bundled with Unleash skills pack. Source: C:\Users\Admin.agents\skills\mobile-platform-vulnerability-research\SKILL.md
Mobile Platform Vulnerability Research
Priority Model
Prefer:
- zero-click network/message/media processing;
- one-click browser, document, link, or attachment RCE;
- application/renderer sandbox escape to system service or kernel;
- cross-app or cross-profile data/authority compromise;
- baseband, Wi-Fi, Bluetooth, NFC, or nearby-service compromise;
- pervasive OEM system components with privileged parsers;
- secure-world/TEE boundary bugs with practical reachability.
Ordinary app-local bugs and WebView XSS do not qualify without a platform boundary.
Phase 1: Pin a Current Device Matrix
Record:
- device model/SKU/region and hardware revision;
- latest stable OS build and security patch level;
- bootloader/baseband/modem, Wi-Fi/Bluetooth firmware;
- kernel build/config and vendor modules;
- system component/APEX/Mainline or equivalent independently updated package versions;
- browser/WebView engine version;
- OEM framework and carrier package versions;
- lock state, user/profile setup, enabled radios, and default apps;
- clean reset/flash procedure and image hashes.
Android/AOSP latest is not enough for an OEM-only bug; iOS version alone may not identify modem or WebKit component state. Prove exact shipped bytes.
Completion criterion: target can be reflashed/reset to a hash-identified current stable state.
Phase 2: Map Automatic and Low-Interaction Inputs
Remote/ambient
- SMS/MMS/RCS/iMessage-like messaging;
- push notification payloads and attachment previews;
- voice/video calls and signaling;
- image/audio/video/font/document thumbnailing and indexing;
- email/calendar/contact/vCard parsing;
- Wi-Fi management/action frames and provisioning;
- Bluetooth advertisements/profiles, NFC, UWB, nearby sharing;
- baseband control/data messages;
- captive portal and network discovery.
App-to-system
- Android Binder/AIDL/HIDL and content/provider intents;
- iOS XPC/Mach services, extensions, URL/document handlers;
- media, graphics, camera, codec, accessibility, clipboard, keystore, package/install, backup/restore services;
- shared memory, file descriptors, surfaces, handles, and capability tokens;
- OEM services exposed to ordinary or isolated apps.
For each input record interaction, lock-screen reachability, network proximity, parser process, sandbox, and final privilege.
Phase 3: Build the Boundary Graph
Trace:
remote bytes or app request
-> framework decoder/binding
-> native parser/service
-> IPC hop/shared object
-> privileged system/driver/secure service
Record:
- caller identity: UID, package, entitlement, sandbox/profile;
- service permission/SELinux/seatbelt checks;
- object/handle ownership and lifecycle;
- deserialization, lengths, offsets, counts, and types;
- async callback/cancellation and process death;
- user/profile/device-unlock state;
- kernel or firmware interface reached.
Completion criterion: every trust transition has an enforcing component and expected invariant.
Phase 4: Harness by Surface
- parser library harness for media/document/message formats;
- Binder/XPC client generated from interface metadata or runtime introspection;
- compromised-app/isolated-process harness for sandbox boundaries;
- radio protocol simulator or shielded test setup for connectivity;
- emulator/simulator for early triage, then physical current hardware;
- snapshot/reflash automation and tombstone/panic collection;
- differential tests across OEMs or OS releases.
Use sanitizers in source builds where meaningful, but confirm on release binaries. Preserve complete request sequences and device state.
Phase 5: High-Yield Campaigns
Zero-click parsers
- incremental/streaming decode and truncation;
- metadata/thumbnail/preview paths differing from full open;
- nested containers and parser handoff;
- huge dimensions/counts and integer conversion;
- hardware codec/GPU driver buffers;
- attachment cleanup and indexing races;
- processing while locked or before first unlock.
IPC and sandbox escape
- missing caller/entitlement/permission checks;
- identity checked before async work and lost later;
- stale Binder/XPC object after client death;
- shared-memory size/offset mutation;
- file descriptor/handle rights and object-type confusion;
- confused deputy across work/personal profiles;
- isolated process reaching methods intended for trusted system apps;
- service restart and generation-ID reuse.
Kernel/driver
- ioctl lengths and nested pointers;
- graphics/media/camera/DSP command buffers;
- async completion after close/free;
- mapping and cache coherency;
- integer overflow in allocation versus DMA;
- race across suspend/resume and process death.
Connectivity/baseband
- negotiation/state downgrade;
- fragment/reassembly and timer state;
- duplicate/reordered control messages;
- malformed capability lists;
- cross-layer length disagreement;
- host/modem shared-memory and diagnostic channels.
Phase 6: Impact and Chain Analysis
Separate:
- parser process code execution;
- app/renderer sandbox escape;
- system/root/kernel code execution;
- secure-world/key compromise;
- cross-profile/tenant data access;
- persistence and lock-screen/first-unlock implications.
Record mitigations: PAC, MTE, CFI, pointer hardening, hardened allocators, SELinux/seatbelt, seccomp, entitlement checks, kernel isolation, and reboot persistence.
A crash in a privileged media process may still be contained; identify the remaining boundary.
Phase 7: Stable and Deployment Validation
- retest after monthly patch/Mainline/APEX/WebView updates;
- test clean device, upgraded device, and relevant lock/profile states;
- verify OEM/carrier variants using the affected code;
- establish widespread deployment for OEM-only components;
- compare emulator and physical hardware behavior;
- search advisories, fuzz trackers, OEM bulletins, and upstream commits for novelty;
- avoid pre-release-only conclusions.
Variant Hunting
Search:
- preview/indexer versus full application parser;
- app framework and baseband/firmware copies of codecs;
- AOSP versus OEM service forks;
- work-profile, guest-user, lock-screen, and pre-unlock paths;
- same AIDL/XPC interface implemented by sibling services;
- hardware and software codec paths;
- fixes applied upstream but absent from current OEM branch;
- independently updated modules lagging the platform fix.
Common Pitfalls
- Recording OS version but not patch level and modular components.
- Calling emulator-only behavior a device vulnerability.
- Claiming zero-click without proving default automatic processing.
- Treating app crash as sandbox escape.
- Ignoring lock, profile, and first-unlock state.
- Testing an OEM component without deployment evidence.
- Losing full IPC/radio sequence needed for replay.
- Using beta OS findings without stable reproduction.
Verification Checklist
1---2name: mobile-platform-vulnerability-research3description: Use when hunting new vulnerabilities in the latest stable Android or iOS platform and widely deployed OEM components, including zero/one-click parsers, messaging and media services, Binder/XPC IPC, application sandboxes, system services, baseband/connectivity, kernels/drivers, secure services, and mobile browser-to-OS chains.4license: MIT5---67> Bundled with Unleash skills pack. Source: C:\Users\Admin\.agents\skills\mobile-platform-vulnerability-research\SKILL.md89# Mobile Platform Vulnerability Research1011## Priority Model1213Prefer:14151. zero-click network/message/media processing;162. one-click browser, document, link, or attachment RCE;173. application/renderer sandbox escape to system service or kernel;184. cross-app or cross-profile data/authority compromise;195. baseband, Wi-Fi, Bluetooth, NFC, or nearby-service compromise;206. pervasive OEM system components with privileged parsers;217. secure-world/TEE boundary bugs with practical reachability.2223Ordinary app-local bugs and WebView XSS do not qualify without a platform boundary.2425## Phase 1: Pin a Current Device Matrix2627Record:2829- device model/SKU/region and hardware revision;30- latest stable OS build and security patch level;31- bootloader/baseband/modem, Wi-Fi/Bluetooth firmware;32- kernel build/config and vendor modules;33- system component/APEX/Mainline or equivalent independently updated package versions;34- browser/WebView engine version;35- OEM framework and carrier package versions;36- lock state, user/profile setup, enabled radios, and default apps;37- clean reset/flash procedure and image hashes.3839Android/AOSP latest is not enough for an OEM-only bug; iOS version alone may not identify modem or WebKit component state. Prove exact shipped bytes.4041Completion criterion: target can be reflashed/reset to a hash-identified current stable state.4243## Phase 2: Map Automatic and Low-Interaction Inputs4445### Remote/ambient4647- SMS/MMS/RCS/iMessage-like messaging;48- push notification payloads and attachment previews;49- voice/video calls and signaling;50- image/audio/video/font/document thumbnailing and indexing;51- email/calendar/contact/vCard parsing;52- Wi-Fi management/action frames and provisioning;53- Bluetooth advertisements/profiles, NFC, UWB, nearby sharing;54- baseband control/data messages;55- captive portal and network discovery.5657### App-to-system5859- Android Binder/AIDL/HIDL and content/provider intents;60- iOS XPC/Mach services, extensions, URL/document handlers;61- media, graphics, camera, codec, accessibility, clipboard, keystore, package/install, backup/restore services;62- shared memory, file descriptors, surfaces, handles, and capability tokens;63- OEM services exposed to ordinary or isolated apps.6465For each input record interaction, lock-screen reachability, network proximity, parser process, sandbox, and final privilege.6667## Phase 3: Build the Boundary Graph6869Trace:7071```text72remote bytes or app request73 -> framework decoder/binding74 -> native parser/service75 -> IPC hop/shared object76 -> privileged system/driver/secure service77```7879Record:8081- caller identity: UID, package, entitlement, sandbox/profile;82- service permission/SELinux/seatbelt checks;83- object/handle ownership and lifecycle;84- deserialization, lengths, offsets, counts, and types;85- async callback/cancellation and process death;86- user/profile/device-unlock state;87- kernel or firmware interface reached.8889Completion criterion: every trust transition has an enforcing component and expected invariant.9091## Phase 4: Harness by Surface9293- parser library harness for media/document/message formats;94- Binder/XPC client generated from interface metadata or runtime introspection;95- compromised-app/isolated-process harness for sandbox boundaries;96- radio protocol simulator or shielded test setup for connectivity;97- emulator/simulator for early triage, then physical current hardware;98- snapshot/reflash automation and tombstone/panic collection;99- differential tests across OEMs or OS releases.100101Use sanitizers in source builds where meaningful, but confirm on release binaries. Preserve complete request sequences and device state.102103## Phase 5: High-Yield Campaigns104105### Zero-click parsers106107- incremental/streaming decode and truncation;108- metadata/thumbnail/preview paths differing from full open;109- nested containers and parser handoff;110- huge dimensions/counts and integer conversion;111- hardware codec/GPU driver buffers;112- attachment cleanup and indexing races;113- processing while locked or before first unlock.114115### IPC and sandbox escape116117- missing caller/entitlement/permission checks;118- identity checked before async work and lost later;119- stale Binder/XPC object after client death;120- shared-memory size/offset mutation;121- file descriptor/handle rights and object-type confusion;122- confused deputy across work/personal profiles;123- isolated process reaching methods intended for trusted system apps;124- service restart and generation-ID reuse.125126### Kernel/driver127128- ioctl lengths and nested pointers;129- graphics/media/camera/DSP command buffers;130- async completion after close/free;131- mapping and cache coherency;132- integer overflow in allocation versus DMA;133- race across suspend/resume and process death.134135### Connectivity/baseband136137- negotiation/state downgrade;138- fragment/reassembly and timer state;139- duplicate/reordered control messages;140- malformed capability lists;141- cross-layer length disagreement;142- host/modem shared-memory and diagnostic channels.143144## Phase 6: Impact and Chain Analysis145146Separate:147148- parser process code execution;149- app/renderer sandbox escape;150- system/root/kernel code execution;151- secure-world/key compromise;152- cross-profile/tenant data access;153- persistence and lock-screen/first-unlock implications.154155Record mitigations: PAC, MTE, CFI, pointer hardening, hardened allocators, SELinux/seatbelt, seccomp, entitlement checks, kernel isolation, and reboot persistence.156157A crash in a privileged media process may still be contained; identify the remaining boundary.158159## Phase 7: Stable and Deployment Validation160161- retest after monthly patch/Mainline/APEX/WebView updates;162- test clean device, upgraded device, and relevant lock/profile states;163- verify OEM/carrier variants using the affected code;164- establish widespread deployment for OEM-only components;165- compare emulator and physical hardware behavior;166- search advisories, fuzz trackers, OEM bulletins, and upstream commits for novelty;167- avoid pre-release-only conclusions.168169## Variant Hunting170171Search:172173- preview/indexer versus full application parser;174- app framework and baseband/firmware copies of codecs;175- AOSP versus OEM service forks;176- work-profile, guest-user, lock-screen, and pre-unlock paths;177- same AIDL/XPC interface implemented by sibling services;178- hardware and software codec paths;179- fixes applied upstream but absent from current OEM branch;180- independently updated modules lagging the platform fix.181182## Common Pitfalls1831841. Recording OS version but not patch level and modular components.1852. Calling emulator-only behavior a device vulnerability.1863. Claiming zero-click without proving default automatic processing.1874. Treating app crash as sandbox escape.1885. Ignoring lock, profile, and first-unlock state.1896. Testing an OEM component without deployment evidence.1907. Losing full IPC/radio sequence needed for replay.1918. Using beta OS findings without stable reproduction.192193## Verification Checklist194195- [ ] Device/SKU/hardware and every relevant component version recorded196- [ ] Latest stable and current patch level proven197- [ ] Automatic/interaction reachability established198- [ ] Boundary graph and enforcing identities complete199- [ ] Harness reproduces on physical release device where required200- [ ] Root cause and process/privilege level established201- [ ] Remaining sandbox/kernel/secure boundary identified202- [ ] Lock/profile/first-unlock states tested203- [ ] OEM/deployment relevance proven204- [ ] Monthly/component update and novelty gates pass205