Description
Exposed dangerous method or function and Incorrect Authorization vulnerability in OnePlus OxygenOS on Android. The olc2 logging HAL exposes a binder method that fork()'s and calls execl("/vendor/bin/sh", "sh", "-c", cmd, NULL) with a caller-supplied command string. The only authorization check is getCallingUid() == 0. Because SELinux policy grants binder access to this HAL to a wide client attribute, any uid-0 process in any of those domains (including dumpstate, which is reachable from an unprivileged app via Vulnerability 1) obtains arbitrary command execution. The spawned shell lands in u:r:vendor_qti_init_shell:s0 SELinux context via a policy type_transition, a domain holding all Linux capabilities. This issue affects OxygenOS: from 16.1.0 before 16.1.10.500, from 16.0.0 before 16.0.5.1200, and from 15.0.0 before 15.0.0.2000.
Published: 2026-10-21
Score: 8.4 High
EPSS: < 1% Very Low
KEV: No
Impact: Arbitrary Command Execution
Action: Immediate Patch
AI Analysis

Impact

The vulnerability arises from an exposed binder method in the OxygenOS logging HAL that executes a shell command supplied by the caller. The only check is that the caller has UID zero, and SELinux grants access to that HAL to a broad set of client domains. An attacker who can become a uid‑0 process in any of those domains, such as a dumpstate process, can trigger the method to execute arbitrary commands. This grants full system compromise, as the spawned shell runs in the vendor_qti_init_shell context with all Linux capabilities. The weakness aligns with CWE‑749 and CWE‑863.

Affected Systems

The flaw affects OnePlus OxygenOS versions 15.0.0.0‑15.0.0.1999, 16.0.0.0‑16.0.5.1199, and 16.1.0.0‑16.1.10.499. Users on any of these builds can be impacted if the binder method is reachable.

Risk and Exploitability

The CVSS score of 8.4 points to high severity, but the EPSS score of less than 1% suggests that exploitation in the wild is currently unlikely. The vulnerability is not listed in the CISA KEV catalogue. An attacker would need to obtain uid‑0 access in one of the permitted SELinux domains, a goal that can be achieved through other local privilege escalation bugs. Once achieved, the binder call provides a clean path to command execution without needing external input. The path requires local interaction with the Android system services, not remote network connections, indicating the attack vector is local.

Generated by OpenCVE AI on October 21, 2026 at 15:52 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Apply the latest OnePlus OxygenOS update that removes the exposed binder method.
  • Modify SELinux policy to restrict the HAL’s binder interface to only system processes, not to broad client domains.
  • If an update is unavailable, disable the vulnerable HAL or the exec call via system configuration to block arbitrary command execution.

Generated by OpenCVE AI on October 21, 2026 at 15:52 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 30 Oct 2026 07:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Wed, 21 Oct 2026 22:30:00 +0000

Type Values Removed Values Added
First Time appeared Oneplus
Oneplus oxygenos
Vendors & Products Oneplus
Oneplus oxygenos

Wed, 21 Oct 2026 09:15:00 +0000

Type Values Removed Values Added
Description Exposed dangerous method or function and Incorrect Authorization vulnerability in OnePlus OxygenOS on Android. The olc2 logging HAL exposes a binder method that fork()'s and calls execl("/vendor/bin/sh", "sh", "-c", cmd, NULL) with a caller-supplied command string. The only authorization check is getCallingUid() == 0. Because SELinux policy grants binder access to this HAL to a wide client attribute, any uid-0 process in any of those domains (including dumpstate, which is reachable from an unprivileged app via Vulnerability 1) obtains arbitrary command execution. The spawned shell lands in u:r:vendor_qti_init_shell:s0 SELinux context via a policy type_transition, a domain holding all Linux capabilities. This issue affects OxygenOS: from 16.1.0 before 16.1.10.500, from 16.0.0 before 16.0.5.1200, and from 15.0.0 before 15.0.0.2000.
Title OnePlus OxygenOS exposed dangerous method vulnerability
Weaknesses CWE-749
CWE-863
References
Metrics cvssV4_0

{'score': 8.4, 'vector': 'CVSS:4.0/AV:L/AC:L/AT:N/PR:H/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N'}


Subscriptions

Oneplus Oxygenos
cve-icon MITRE

Status: PUBLISHED

Assigner: ENISA

Published:

Updated: 2026-10-29T19:09:35.392Z

Reserved: 2026-08-04T07:41:00.082Z

Link: CVE-2026-70387

cve-icon Vulnrichment

Updated: 2026-10-29T19:09:17.590Z

cve-icon NVD

Status : Deferred

Published: 2026-10-21T09:17:07.930

Modified: 2026-10-29T19:17:26.790

Link: CVE-2026-70387

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-21T22:15:10Z

Weaknesses
  • CWE-749

    Exposed Dangerous Method or Function

  • CWE-863

    Incorrect Authorization