CVE-2026-30867: emqx CocoaMQTT · Reachable Assertion
Affects emqx CocoaMQTTSource CVE Database V5
Not known to be exploited · CVSS 5.7 Medium : upgrade to 2.2.2 when convenient.
Data as of 30 Oct 2026, 11:52 UTC
- EPSS
- 0.3% chance of exploitation in 30 days – higher than 24% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
- Patch
- Available – fixed in 2.2.2
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:HExploitation evidence
Disclosed: evidence found.
CVE published 2 Apr 2026
Detectable: no evidence on record.
No public nuclei template indexed
Weaponized: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 30 Oct 2026.
What to do
Upgrade CocoaMQTT and emqx/CocoaMQTT to 2.2.2.
Affected software
| Product | Affected | Fixed in |
|---|---|---|
| emqxCocoaMQTT | Affected
| Fixed in
|
GitHubemqx/CocoaMQTTpkg:github/emqx/CocoaMQTTOther threats | Affected
| Fixed in
|
Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.
AI-suggested
This issue has been fixed in CocoaMQTT version 2.2.2. Users should upgrade to version 2.2.2 or later to remediate the vulnerability. Additionally, removing any retained malformed messages from the MQTT broker will restore functionality for affected clients. No other mitigation is required.
Description
CVE-2026-30867 is a reachable assertion vulnerability in the CocoaMQTT client library for iOS and macOS prior to version 2.2.2. The flaw exists in the packet parsing logic, where a 4-byte malformed payload with the RETAIN flag set can be published to a shared topic on an MQTT broker. When a vulnerable client subscribes to this topic, the broker pushes the malformed packet, causing the client application to crash immediately in the background. This results in a persistent denial-of-service condition until the retained message is removed from the broker. The issue has been patched in CocoaMQTT version 2.2.2.
References
- github.com/emqx/CocoaMQTT/security/advisories/GHSA-r3fr-7m74-q7g2 (opens in a new tab)
- github.com/emqx/CocoaMQTT/pull/659 (opens in a new tab)
- github.com/emqx/CocoaMQTT/commit/010bca6f61b97d726252f61641d331a2bf82b338 (opens in a new tab)
- github.com/emqx/CocoaMQTT/releases/tag/2.2.2 (opens in a new tab)