Description
Moquette is a lightweight Java MQTT broker. Prior to 0.18.1, PostOffice.publishWill publishes a client-controlled Last Will message through publish2Subscribers without invoking the authorizator.canWrite check used by normal PUBLISH paths. When anonymous access is enabled and topic ACLs restrict writes, a remote client can set an ACL-protected topic as the Last Will Topic during CONNECT and perform an abnormal client disconnect, causing the broker to inject attacker-controlled messages into a topic for which the client lacks write permission. This issue is fixed in version 0.18.1.
Published: 2026-09-18
Score: 7.5 High
EPSS: < 1% Very Low
KEV: No
Impact: Unauthorized message injection via last‑will topics
Action: Apply Patch
AI Analysis

Impact

Moquette selects a client’s last‑will topic when they connect. The broker forwards the will through the publish2Subscribers path, but the canWrite authorization check that normally blocks unauthorized PUBLISH messages is bypassed. The result is that a remote client who connects with anonymous access and assigns a write‑protected topic as its will can cause the broker to inject attacker‑controlled messages to that topic when the client disconnects. This violates confidentiality and integrity and constitutes a form of unauthorized message injection, as described by CWE‑862.

Affected Systems

Affected systems are installations of the Moquette MQTT broker supplied by moquette‑io. Versions earlier than 0.18.1 lack the patch that restores the authorization check during will publication. Any build using 0.18.0 or earlier is potentially vulnerable.

Risk and Exploitability

The CVSS score of 7.5 indicates high severity. Because the exploit requires a client to connect and publish a will for a protected topic, the attack vector is remote and does not need local privilege. No EPSS data is available, and the vulnerability is not yet listed in the CISA KEV catalog. Attackers can trigger the failure by issuing a CONNECT with last‑will settings for a protected topic and then causing an abnormal disconnect; after that the broker will forward the will to subscribers. Consequently, the risk is significant for deployments that allow anonymous client connections or that have narrow ACLs, especially if sensitive topics are protected.

Generated by OpenCVE AI on September 19, 2026 at 13:59 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade to Moquette 0.18.1 or later to restore the authorization check for last‑will publication.
  • If immediate upgrade is not possible, disable anonymous client access or enforce strict ACLs that forbid write access to topics that could be used as last‑will topics.
  • As a temporary workaround, re‑implement the will handling logic to invoke the authorizator.canWrite check before publication.

Generated by OpenCVE AI on September 19, 2026 at 13:59 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-9jjc-fw8x-fmwx io.moquette:moquette-broker has a Missing Authorization issue
History

Fri, 18 Sep 2026 21:30:00 +0000

Type Values Removed Values Added
Description Moquette is a lightweight Java MQTT broker. Prior to 0.18.1, PostOffice.publishWill publishes a client-controlled Last Will message through publish2Subscribers without invoking the authorizator.canWrite check used by normal PUBLISH paths. When anonymous access is enabled and topic ACLs restrict writes, a remote client can set an ACL-protected topic as the Last Will Topic during CONNECT and perform an abnormal client disconnect, causing the broker to inject attacker-controlled messages into a topic for which the client lacks write permission. This issue is fixed in version 0.18.1.
Title Moquette: Missing Authorization in io.moquette:moquette-broker
Weaknesses CWE-862
References
Metrics cvssV3_1

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


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-09-18T17:40:39.113Z

Reserved: 2026-09-02T21:21:01.774Z

Link: CVE-2026-85058

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-09-18T18:17:17.447

Modified: 2026-09-18T18:17:17.447

Link: CVE-2026-85058

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-19T14:00:15Z

Weaknesses