Description
Fleet is an open-source device management platform built on osquery. In versions up to and including 4.84.1, the Apple MDM commands listing endpoint (GET /api/v1/fleet/mdm/apple/commands) allowed an authenticated user with the lowest-privilege Observer role to extract sensitive values from joined database tables, including host enrollment secrets and Apple Push Notification Service tokens, through a sort-order oracle. The endpoint accepted a user-supplied order_key parameter that was not validated against a column allowlist, and because the underlying query joins the hosts and nano_enrollments tables, an attacker could set the sort column to a sensitive field and combine it with the cursor-based after parameter to binary-search the value one character at a time, with the presence or absence of results revealing each character even though the value never appeared in the response. With extracted node_key or orbit_node_key values an attacker could impersonate enrolled hosts to Fleet's osquery and Orbit endpoints, submit fabricated host data, and retrieve pending scripts and commands. This issue is fixed in version 4.84.2.
Published: 2026-08-26
Score: 6.5 Medium
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The Fleet device‑management API allowed an authenticated user with the Observer privilege to request the Apple MDM commands list using the order_key query parameter. The parameter is not checked against a whitelist of columns, and because the underlying query joins hosts and nano_enrollments tables, the attacker can choose a sensitive column such as host enrollment secrets or APNs tokens. By repeatedly querying with different order_key values and a cursor‑based after parameter, the attacker can binary‑search each character of the secret, learning it without it appearing in the response. The recovered node_key or orbit_node_key can then be used to impersonate an enrolled device, allowing the attacker to submit fabricated host data and retrieve any pending scripts or commands.

Affected Systems

This flaw exists in all Fleet releases up to and including version 4.84.1 of the Fleet open‑source device‑management platform, provided by FleetDM. Because the vulnerability is triggered by an authenticated Observer role, any such user in a Fleet deployment affected by those versions can exploit it.

Risk and Exploitability

The CVSS score of 6.5 indicates a medium severity vulnerability. EPSS is not available, and the flaw is not listed in CISA KEV. The attack requires only an authenticated Observer role on a vulnerable Fleet instance, and the exploit uses standard API query parameters without needing local code execution or elevated system privileges. Once the certificate secrets are obtained, an attacker can impersonate a host and gain further access to Fleet’s osquery and Orbit endpoints. Therefore the risk is significant for environments where observer roles are granted broadly and where host secrets are valuable.

Generated by OpenCVE AI on August 26, 2026 at 20:41 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade to Fleet version 4.84.2 or later.
  • If an upgrade cannot be performed immediately, temporarily disable the /api/v1/fleet/mdm/apple/commands endpoint for Observer users or enforce a column allowlist validation on the order_key parameter.
  • Validate future releases against the advisory and monitor for additional remediation documentation on secret‑exfiltration controls.

Generated by OpenCVE AI on August 26, 2026 at 20:41 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-x4qr-qw6h-wvxq Fleet: Observer-level enrollment secret extraction via ORDER BY oracle on Apple MDM commands endpoint
History

Wed, 26 Aug 2026 20:30:00 +0000

Type Values Removed Values Added
First Time appeared Fleetdm
Fleetdm fleet
Vendors & Products Fleetdm
Fleetdm fleet

Wed, 26 Aug 2026 19:30:00 +0000

Type Values Removed Values Added
Description Fleet is an open-source device management platform built on osquery. In versions up to and including 4.84.1, the Apple MDM commands listing endpoint (GET /api/v1/fleet/mdm/apple/commands) allowed an authenticated user with the lowest-privilege Observer role to extract sensitive values from joined database tables, including host enrollment secrets and Apple Push Notification Service tokens, through a sort-order oracle. The endpoint accepted a user-supplied order_key parameter that was not validated against a column allowlist, and because the underlying query joins the hosts and nano_enrollments tables, an attacker could set the sort column to a sensitive field and combine it with the cursor-based after parameter to binary-search the value one character at a time, with the presence or absence of results revealing each character even though the value never appeared in the response. With extracted node_key or orbit_node_key values an attacker could impersonate enrolled hosts to Fleet's osquery and Orbit endpoints, submit fabricated host data, and retrieve pending scripts and commands. This issue is fixed in version 4.84.2.
Title Fleet: Observer-level enrollment secret extraction via ORDER BY oracle on Apple MDM commands endpoint
Weaknesses CWE-200
CWE-89
References
Metrics cvssV3_1

{'score': 6.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-08-26T19:06:12.147Z

Reserved: 2026-05-13T19:53:47.921Z

Link: CVE-2026-46371

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-26T20:17:23.470

Modified: 2026-08-26T20:17:23.470

Link: CVE-2026-46371

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-26T20:45:03Z

Weaknesses
  • CWE-200

    Exposure of Sensitive Information to an Unauthorized Actor

  • CWE-89

    Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')