Advisory · CVE-2026-111923
Crafted MDM enrollment plist can crash Fleet through unbounded recursion
Fleet before 4.89.0 contains an unbounded recursion flaw in Apple MDM enrollment property list parsing, so an unauthenticated attacker can crash the server with a crafted binary plist payload of about 150 bytes. CVSS 4.0 8.7 (CVSS 3.1 7.5).
- Vendor
- fleetdm
- Product
- Fleet
- Identifier / CWE
- CVE-2026-111923
CWE-674 - Action timing
- Immediate
Explain it like I’m five
A tiny enrollment file can be nested like a trap of boxes inside boxes, and Fleet keeps opening them until it runs out of memory and falls over.
- 01Crafted plist sent
An unauthenticated attacker sends a crafted binary plist payload of about 150 bytes to the MDM enrollment endpoints.
- 02Parser recurses
Fleet property list parsing follows the nesting without a bound, triggering exponential allocation or infinite recursion.
- 03Server crashes
CPU and memory are exhausted and the Fleet server crashes.
What happened
Fleet disclosed CVE-2026-111923 for versions before 4.89.0: an unbounded recursion flaw (CWE-674) in Apple MDM enrollment property list parsing that allows unauthenticated attackers to crash the server with a crafted binary plist payload of about 150 bytes sent to the enrollment endpoints.
Per the vendor affected data in the NVD record, 4.89.0 is the first unaffected release, so upgrading to 4.89.0 or later is the stated fix.
What to do
- Inventory Fleet servers, including test and staging instances with enrollment endpoints exposed.
- Upgrade affected instances to 4.89.0 or later using the project release guidance.
- Restrict access to MDM enrollment endpoints to expected networks while remediation is underway.
- Hunt for enrollment requests followed by server restarts, and memory spikes tied to small plist payloads.
- Verify the deployed version after updating, not just that an update ran.
Management note
Enrollment endpoints must stay reachable for new devices, which makes an unauthenticated crash bug an availability risk you cannot firewall away. Patch promptly and watch restart counts.