CVE-2026-85724: critical vulnerability in moquette-io moquette
Moquette pattern ACL wildcard injection allows cross-tenant authorization bypass
Published · Updated
E-mail alert when it lands in KEV, gets a public PoC or its score goes up.
28Vexday Risk Score
No sign of exploitation. No public exploitation artifact known so far.
ssvc Trackcvss 9.6epss 0.3%
Moquette is a lightweight Java MQTT broker. Prior to 0.18.1, when pattern-based ACL rules are configured, AuthorizationsCollector.canDoOperation substitutes client ID and username values directly into rules containing %c or %u and then treats the result as an MQTT topic filter. A client that uses + or # in either identity can broaden the substituted filter and gain cross-tenant read and write access. A # identity can also produce an invalid filter that triggers a NullPointerException in Topic.match and disrupts session processing. This issue is fixed in version 0.18.1.
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N
Affected products
moquette-io · moquetteRelated CVEs — moquette-io moquette
In the same product, most dangerous first.
CVE-2026-85058HIGHMoquette: Missing Authorization in io.moquette:moquette-brokerEPSS 0.6%CVE-2026-95842HIGHMoquette uncaught MQTT command exceptions can terminate shared session event loopsEPSS 0.4%CVE-2026-95843HIGHMoquette malformed shared subscriptions can crash command processingEPSS 0.4%CVE-2026-95848CRITICALMoquette fails open when configured authentication or authorization classes cannot loadEPSS 0.4%CVE-2026-95844HIGHMoquette deeply nested MQTT topics can cause stack exhaustionEPSS 0.4%CVE-2026-95845HIGHMoquette unbounded per-session message queues allow memory exhaustionEPSS 0.4%