---
id: CVE-2026-95847
title: Moquette is a lightweight Java MQTT broker
summary: >-
  Moquette is a lightweight Java MQTT broker. Prior to 0.18.1, H2PersistentQueue
  derives a session's message-map name as queue_ plus the client ID and its
  metadata-map name as queue_ plus the client ID plus _meta. A durable session
  whose c…
severity: high
cvss: 7.5
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N'
cwe:
  - CWE-99
vendor: moquette
product: moquette
affected:
  - moquette < 0.18.1
patched:
  - moquette 0.18.1
published: '2026-09-23'
updated: '2026-09-28'
sourceUpdated: '2026-09-28T15:23:24.197'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-95847'
references:
  - url: >-
      https://github.com/moquette-io/moquette/commit/72d6c8257191d2e4b2e3aa11ab25fd09f88c6cb7
    label: security-advisories@github.com
  - url: 'https://github.com/moquette-io/moquette/pull/964'
    label: security-advisories@github.com
  - url: 'https://github.com/moquette-io/moquette/releases/tag/v0.18.1'
    label: security-advisories@github.com
  - url: >-
      https://github.com/moquette-io/moquette/security/advisories/GHSA-5f42-97gr-vfhq
    label: security-advisories@github.com
  - url: >-
      https://github.com/moquette-io/moquette/security/advisories/GHSA-5f42-97gr-vfhq
    label: 134c704f-9b21-4f2e-91b3-4a467353bcc0
tags:
  - nvd
  - cve.org
  - exploit-available
epss: 0.00341
epssPercentile: 0.27428
exploitAvailable: true
ssvc:
  exploitation: poc
  automatable: 'yes'
  technicalImpact: partial
  timestamp: '2026-09-23T16:50:06.329970Z'
scores:
  nvd: 7.5
  cna: 8.8
ingestedAt: '2026-09-23T17:28:14.851Z'
---

## Overview

Moquette is a lightweight Java MQTT broker. Prior to 0.18.1, H2PersistentQueue derives a session's message-map name as queue_ plus the client ID and its metadata-map name as queue_ plus the client ID plus _meta. A durable session whose client ID ends in _meta can therefore make its message map collide with another client's metadata map. The colliding sessions read and write the same H2 MVStore map with incompatible value types, which can corrupt queue head and tail data and cause message loss, misdelivery, failed queue reloads, or exposure of queued content across sessions. This issue is fixed in version 0.18.1.

## Affected

- `moquette < 0.18.1`

## Remediation

Upgrade past the affected range:

- `moquette 0.18.1`
