Cloudanix VulnDB

CVE-2024-8376

None

CVSS

—

EPSS

0.7%

Published

Oct 11, 2024

CISA due date

—

Cloudanix analysis

Monitor only SSVC: Track

A flaw in the Mosquitto messaging server lets attackers send special commands that can crash the service or leak memory, disrupting connected devices until the software is updated.

Exploitation
Remote Unauthenticated
Attacker needs
None
Complexity
Moderate
Impact
Data Exposure
Component
Network Service
Class
Use After Free
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

Sending crafted sequences of CONNECT, DISCONNECT, SUBSCRIBE, UNSUBSCRIBE and PUBLISH packets triggers memory leaks, segmentation faults or heap-use-after-free conditions in the broker's packet handling logic.

Why it matters to the business

MQTT brokers can crash or leak memory under attacker-controlled traffic, causing service outages for IoT and messaging systems that rely on the broker for device communication and data routing.

How an attack unfolds

An attacker connects to an exposed Mosquitto instance and transmits a precise series of MQTT control packets that exercise the vulnerable state machine, resulting in invalid memory access or resource exhaustion.

How to fix it

Upgrade eclipse-mosquitto/mosquitto to the commit 1914b3ee2a18102d0a94cbdbbfeae1afa03edd17 or later release that resolves the packet sequence handling flaw.

How to confirm the fix worked

Confirm the broker reports the fixed commit hash on startup or via version query; replay the known packet sequences in a test environment to verify absence of crashes or leaks.

Typical attack path

  1. Establish TCP connection to the broker
  2. Send crafted CONNECT packet
  3. Follow with specific DISCONNECT, SUBSCRIBE, UNSUBSCRIBE and PUBLISH combinations
  4. Trigger use-after-free or crash condition

How to detect it

Review broker logs for repeated abnormal packet sequences or sudden process terminations; inspect core dumps or memory profiles for signs of heap corruption after unexpected disconnects.

What your security team should do

  • Apply the fixed commit or newer release immediately on all public-facing brokers
  • Restrict inbound MQTT access to trusted networks until patched
  • Monitor for unusual packet rates or connection patterns from untrusted sources

The record

In Eclipse Mosquitto up to version 2.0.18a, an attacker can achieve memory leaking, segmentation fault or heap-use-after-free by sending specific sequences of "CONNECT", "DISCONNECT", "SUBSCRIBE", "UNSUBSCRIBE" and "PUBLISH" packets.

Affected packages

Ecosystem Package Introduced Fixed
Debian:11 mosquitto 0 No fix
Debian:12 mosquitto 0 No fix
Debian:13 mosquitto 0 No fix
Debian:13 mosquitto 0 2.0.20-1
Debian:14 mosquitto 0 2.0.20-1
Red Hat:satellite:6.14::el8 foreman 0 0:3.7.0.14-1.el8sat
Red Hat:satellite:6.14::el8 foreman-cli 0 0:3.7.0.14-1.el8sat
Red Hat:satellite:6.14::el8 foreman-debug 0 0:3.7.0.14-1.el8sat
Red Hat:satellite:6.14::el8 foreman-dynflow-sidekiq 0 0:3.7.0.14-1.el8sat
Red Hat:satellite:6.14::el8 foreman-ec2 0 0:3.7.0.14-1.el8sat
Red Hat:satellite:6.14::el8 foreman-journald 0 0:3.7.0.14-1.el8sat
Red Hat:satellite:6.14::el8 foreman-libvirt 0 0:3.7.0.14-1.el8sat
Red Hat:satellite:6.14::el8 foreman-openstack 0 0:3.7.0.14-1.el8sat
Red Hat:satellite:6.14::el8 foreman-ovirt 0 0:3.7.0.14-1.el8sat
Red Hat:satellite:6.14::el8 foreman-postgresql 0 0:3.7.0.14-1.el8sat
Red Hat:satellite:6.14::el8 foreman-redis 0 0:3.7.0.14-1.el8sat
Red Hat:satellite:6.14::el8 foreman-service 0 0:3.7.0.14-1.el8sat
Red Hat:satellite:6.14::el8 foreman-telemetry 0 0:3.7.0.14-1.el8sat
Red Hat:satellite:6.14::el8 foreman-vmware 0 0:3.7.0.14-1.el8sat
Red Hat:satellite:6.14::el8 mosquitto 0 0:2.0.19-1.el8sat
Red Hat:satellite:6.14::el8 mosquitto-debuginfo 0 0:2.0.19-1.el8sat
Red Hat:satellite:6.14::el8 mosquitto-debugsource 0 0:2.0.19-1.el8sat
Red Hat:satellite:6.15::el8 foreman 0 0:3.9.1.11-1.el8sat
Red Hat:satellite:6.15::el8 foreman-cli 0 0:3.9.1.11-1.el8sat
Red Hat:satellite:6.15::el8 foreman-debug 0 0:3.9.1.11-1.el8sat
Red Hat:satellite:6.15::el8 foreman-dynflow-sidekiq 0 0:3.9.1.11-1.el8sat
Red Hat:satellite:6.15::el8 foreman-ec2 0 0:3.9.1.11-1.el8sat
Red Hat:satellite:6.15::el8 foreman-journald 0 0:3.9.1.11-1.el8sat
Red Hat:satellite:6.15::el8 foreman-libvirt 0 0:3.9.1.11-1.el8sat
Red Hat:satellite:6.15::el8 foreman-openstack 0 0:3.9.1.11-1.el8sat
Red Hat:satellite:6.15::el8 foreman-ovirt 0 0:3.9.1.11-1.el8sat
Red Hat:satellite:6.15::el8 foreman-pcp 0 0:3.9.1.11-1.el8sat
Red Hat:satellite:6.15::el8 foreman-postgresql 0 0:3.9.1.11-1.el8sat
Red Hat:satellite:6.15::el8 foreman-redis 0 0:3.9.1.11-1.el8sat
Red Hat:satellite:6.15::el8 foreman-service 0 0:3.9.1.11-1.el8sat
Red Hat:satellite:6.15::el8 foreman-telemetry 0 0:3.9.1.11-1.el8sat
Red Hat:satellite:6.15::el8 foreman-vmware 0 0:3.9.1.11-1.el8sat
Red Hat:satellite:6.15::el8 mosquitto 0 0:2.0.19-1.el8sat
Red Hat:satellite:6.15::el8 mosquitto-debuginfo 0 0:2.0.19-1.el8sat
Red Hat:satellite:6.15::el8 mosquitto-debugsource 0 0:2.0.19-1.el8sat
Red Hat:satellite:6.16::el8 ansible-collection-redhat-satellite 0 0:4.2.0-1.el8sat
Red Hat:satellite:6.16::el8 ansible-collection-redhat-satellite_operations 0 0:3.0.0-1.el8sat
Red Hat:satellite:6.16::el8 ansible-lint 0 0:5.4.0-1.el8pc
Red Hat:satellite:6.16::el8 ansible-runner 0 0:2.2.1-6.el8sat
Red Hat:satellite:6.16::el8 ansiblerole-foreman_scap_client 0 0:0.3.0-1.el8sat
Red Hat:satellite:6.16::el8 ansiblerole-insights-client 0 0:1.7.1-2.el8sat
Red Hat:satellite:6.16::el8 candlepin 0 0:4.4.16-1.el8sat
Red Hat:satellite:6.16::el8 candlepin-selinux 0 0:4.4.16-1.el8sat
Red Hat:satellite:6.16::el8 cjson 0 0:1.7.17-1.el8sat
Red Hat:satellite:6.16::el8 cjson-debuginfo 0 0:1.7.17-1.el8sat
Red Hat:satellite:6.16::el8 cjson-debugsource 0 0:1.7.17-1.el8sat
Red Hat:satellite:6.16::el8 createrepo_c 0 0:1.1.3-1.el8pc
Red Hat:satellite:6.16::el8 createrepo_c-debuginfo 0 0:1.1.3-1.el8pc
Red Hat:satellite:6.16::el8 createrepo_c-debugsource 0 0:1.1.3-1.el8pc
Red Hat:satellite:6.16::el8 createrepo_c-libs 0 0:1.1.3-1.el8pc
Red Hat:satellite:6.16::el8 createrepo_c-libs-debuginfo 0 0:1.1.3-1.el8pc
Red Hat:satellite:6.16::el8 dynflow-utils 0 0:1.6.3-1.el8sat
Red Hat:satellite:6.16::el8 foreman 0 0:3.12.0.1-1.el8sat
Red Hat:satellite:6.16::el8 foreman-bootloaders-redhat 0 0:202102220000-3.el8sat
Red Hat:satellite:6.16::el8 foreman-bootloaders-redhat-tftpboot 0 0:202102220000-3.el8sat
Red Hat:satellite:6.16::el8 foreman-cli 0 0:3.12.0.1-1.el8sat
Red Hat:satellite:6.16::el8 foreman-debug 0 0:3.12.0.1-1.el8sat
Red Hat:satellite:6.16::el8 foreman-discovery-image 0 1:4.1.0-61.el8sat
Red Hat:satellite:6.16::el8 foreman-discovery-image-service 0 0:1.0.0-4.1.el8sat
Red Hat:satellite:6.16::el8 foreman-discovery-image-service-tui 0 0:1.0.0-4.1.el8sat
Red Hat:satellite:6.16::el8 foreman-dynflow-sidekiq 0 0:3.12.0.1-1.el8sat
Red Hat:satellite:6.16::el8 foreman-ec2 0 0:3.12.0.1-1.el8sat
Red Hat:satellite:6.16::el8 foreman-fapolicyd 0 0:1.0.1-3.el8sat
Red Hat:satellite:6.16::el8 foreman-installer 0 1:3.12.0.1-1.el8sat
Red Hat:satellite:6.16::el8 foreman-installer-katello 0 1:3.12.0.1-1.el8sat
Red Hat:satellite:6.16::el8 foreman-journald 0 0:3.12.0.1-1.el8sat
Red Hat:satellite:6.16::el8 foreman-libvirt 0 0:3.12.0.1-1.el8sat
Red Hat:satellite:6.16::el8 foreman-obsolete-packages 0 0:1.10-1.el8sat
Red Hat:satellite:6.16::el8 foreman-openstack 0 0:3.12.0.1-1.el8sat
Red Hat:satellite:6.16::el8 foreman-ovirt 0 0:3.12.0.1-1.el8sat
Red Hat:satellite:6.16::el8 foreman-pcp 0 0:3.12.0.1-1.el8sat
Red Hat:satellite:6.16::el8 foreman-postgresql 0 0:3.12.0.1-1.el8sat
Red Hat:satellite:6.16::el8 foreman-proxy 0 0:3.12.0-1.el8sat
Red Hat:satellite:6.16::el8 foreman-proxy-content 0 0:4.14.0-0.1.rc2.el8sat
Red Hat:satellite:6.16::el8 foreman-proxy-fapolicyd 0 0:1.0.1-3.el8sat
Red Hat:satellite:6.16::el8 foreman-proxy-journald 0 0:3.12.0-1.el8sat
Red Hat:satellite:6.16::el8 foreman-redis 0 0:3.12.0.1-1.el8sat
Red Hat:satellite:6.16::el8 foreman-selinux 0 0:3.12.0-1.el8sat
Red Hat:satellite:6.16::el8 foreman-service 0 0:3.12.0.1-1.el8sat
Red Hat:satellite:6.16::el8 foreman-telemetry 0 0:3.12.0.1-1.el8sat
Red Hat:satellite:6.16::el8 foreman-vmware 0 0:3.12.0.1-1.el8sat
Red Hat:satellite:6.16::el8 katello 0 0:4.14.0-0.1.rc2.el8sat
Red Hat:satellite:6.16::el8 katello-certs-tools 0 0:2.10.0-1.el8sat
Red Hat:satellite:6.16::el8 katello-client-bootstrap 0 0:1.7.9-1.el8sat
Red Hat:satellite:6.16::el8 katello-common 0 0:4.14.0-0.1.rc2.el8sat
Red Hat:satellite:6.16::el8 katello-debug 0 0:4.14.0-0.1.rc2.el8sat
Red Hat:satellite:6.16::el8 katello-selinux 0 0:5.0.2-1.el8sat
Red Hat:satellite:6.16::el8 libcomps 0 0:0.1.21-1.el8pc
Red Hat:satellite:6.16::el8 libcomps-debuginfo 0 0:0.1.21-1.el8pc
Red Hat:satellite:6.16::el8 libcomps-debugsource 0 0:0.1.21-1.el8pc
Red Hat:satellite:6.16::el8 libsodium 0 0:1.0.17-3.el8sat
Red Hat:satellite:6.16::el8 libsodium-debuginfo 0 0:1.0.17-3.el8sat
Red Hat:satellite:6.16::el8 libsodium-debugsource 0 0:1.0.17-3.el8sat
Red Hat:satellite:6.16::el8 libsolv 0 1:0.7.20-6.el8sat
Red Hat:satellite:6.16::el8 libsolv-debuginfo 0 1:0.7.20-6.el8sat
Red Hat:satellite:6.16::el8 libsolv-debugsource 0 1:0.7.20-6.el8sat
Red Hat:satellite:6.16::el8 libsolv-demo-debuginfo 0 1:0.7.20-6.el8sat
Red Hat:satellite:6.16::el8 libsolv-tools-debuginfo 0 1:0.7.20-6.el8sat
Red Hat:satellite:6.16::el8 mosquitto 0 0:2.0.19-1.el8sat
Red Hat:satellite:6.16::el8 mosquitto-debuginfo 0 0:2.0.19-1.el8sat
Red Hat:satellite:6.16::el8 mosquitto-debugsource 0 0:2.0.19-1.el8sat
Red Hat:satellite:6.16::el8 perl-solv-debuginfo 0 1:0.7.20-6.el8sat
Red Hat:satellite:6.16::el8 postgresql-evr 0 0:0.0.2-3.el8sat
Red Hat:satellite:6.16::el8 pulpcore-obsolete-packages 0 0:1.2.0-1.el8pc
Red Hat:satellite:6.16::el8 pulpcore-selinux 0 0:2.0.1-1.el8pc
Red Hat:satellite:6.16::el8 puppet-agent 0 0:8.8.1-1.el8sat
Red Hat:satellite:6.16::el8 puppet-agent-oauth 0 0:0.5.10-1.el8sat
Red Hat:satellite:6.16::el8 puppet-foreman_scap_client 0 0:1.0.0-2.el8sat
Red Hat:satellite:6.16::el8 puppetlabs-stdlib 0 0:9.4.1-1.el8sat
Red Hat:satellite:6.16::el8 puppetserver 0 0:8.6.2-2.el8sat
Red Hat:satellite:6.16::el8 python-aiodns 0 0:3.0.0-7.el8pc
Red Hat:satellite:6.16::el8 python-aiofiles 0 0:22.1.0-5.el8pc
Red Hat:satellite:6.16::el8 python-aiohttp 0 0:3.9.4-1.el8pc
Red Hat:satellite:6.16::el8 python-aiohttp-debugsource 0 0:3.9.4-1.el8pc
Red Hat:satellite:6.16::el8 python-aiohttp-xmlrpc 0 0:1.5.0-6.el8pc
Red Hat:satellite:6.16::el8 python-aioredis 0 0:2.0.1-6.el8pc
Red Hat:satellite:6.16::el8 python-aiosignal 0 0:1.3.1-5.el8pc
Red Hat:satellite:6.16::el8 python-ansible-builder 0 0:3.0.0-1.el8pc
Red Hat:satellite:6.16::el8 python-asgiref 0 0:3.6.0-5.el8pc
Red Hat:satellite:6.16::el8 python-async-lru 0 0:1.0.3-5.el8pc
Red Hat:satellite:6.16::el8 python-async-timeout 0 0:4.0.2-6.el8pc
Red Hat:satellite:6.16::el8 python-asyncio-throttle 0 0:1.0.2-7.el8pc
Red Hat:satellite:6.16::el8 python-attrs 0 0:21.4.0-6.el8pc
Red Hat:satellite:6.16::el8 python-backoff 0 0:2.2.1-5.el8pc
Red Hat:satellite:6.16::el8 python-bindep 0 0:2.11.0-5.el8pc
Red Hat:satellite:6.16::el8 python-bleach 0 0:3.3.1-6.el8pc
Red Hat:satellite:6.16::el8 python-bleach-allowlist 0 0:1.0.3-7.el8pc
Red Hat:satellite:6.16::el8 python-bracex 0 0:2.2.1-6.el8pc
Red Hat:satellite:6.16::el8 python-brotli 0 0:1.0.9-6.el8pc
Red Hat:satellite:6.16::el8 python-brotli-debugsource 0 0:1.0.9-6.el8pc
Red Hat:satellite:6.16::el8 python-certifi 0 0:2022.12.7-5.el8pc
Red Hat:satellite:6.16::el8 python-cffi 0 0:1.15.1-5.el8pc
Red Hat:satellite:6.16::el8 python-cffi-debugsource 0 0:1.15.1-5.el8pc
Red Hat:satellite:6.16::el8 python-chardet 0 0:5.0.0-2.el8pc
Red Hat:satellite:6.16::el8 python-charset-normalizer 0 0:2.1.1-5.el8pc
Red Hat:satellite:6.16::el8 python-click 0 0:8.1.3-5.el8pc
Red Hat:satellite:6.16::el8 python-click-shell 0 0:2.1-7.el8pc
Red Hat:satellite:6.16::el8 python-colorama 0 0:0.4.4-7.el8pc
Red Hat:satellite:6.16::el8 python-commonmark 0 0:0.9.1-9.el8pc
Red Hat:satellite:6.16::el8 python-contextlib2 0 0:21.6.0-7.el8pc
Red Hat:satellite:6.16::el8 python-cryptography 0 0:42.0.8-1.el8pc
Red Hat:satellite:6.16::el8 python-cryptography-debugsource 0 0:42.0.8-1.el8pc
Red Hat:satellite:6.16::el8 python-daemon 0 0:2.3.1-3.el8sat
Red Hat:satellite:6.16::el8 python-dataclasses 0 0:0.8-7.el8pc
Red Hat:satellite:6.16::el8 python-dateutil 0 0:2.8.2-5.el8pc
Red Hat:satellite:6.16::el8 python-debian 0 0:0.1.44-7.el8pc
Red Hat:satellite:6.16::el8 python-defusedxml 0 0:0.7.1-7.el8pc
Red Hat:satellite:6.16::el8 python-deprecated 0 0:1.2.13-5.el8pc
Red Hat:satellite:6.16::el8 python-diff-match-patch 0 0:20200713-7.el8pc
Red Hat:satellite:6.16::el8 python-distro 0 0:1.7.0-4.el8pc
Red Hat:satellite:6.16::el8 python-django 0 0:4.2.16-1.el8pc
Red Hat:satellite:6.16::el8 python-django-filter 0 0:23.2-4.el8pc
Red Hat:satellite:6.16::el8 python-django-guid 0 0:3.3.0-5.el8pc
Red Hat:satellite:6.16::el8 python-django-import-export 0 0:3.1.0-4.el8pc
Red Hat:satellite:6.16::el8 python-django-lifecycle 0 0:1.0.0-4.el8pc
Red Hat:satellite:6.16::el8 python-django-readonly-field 0 0:1.1.2-4.el8pc
Red Hat:satellite:6.16::el8 python-djangorestframework 0 0:3.14.0-4.el8pc
Red Hat:satellite:6.16::el8 python-djangorestframework-queryfields 0 0:1.0.0-8.el8pc
Red Hat:satellite:6.16::el8 python-docutils 0 0:0.20.1-4.el8pc
Red Hat:satellite:6.16::el8 python-drf-access-policy 0 0:1.3.0-4.el8pc
Red Hat:satellite:6.16::el8 python-drf-nested-routers 0 0:0.93.4-6.el8pc
Red Hat:satellite:6.16::el8 python-drf-spectacular 0 0:0.26.5-5.el8pc
Red Hat:satellite:6.16::el8 python-dynaconf 0 0:3.1.12-4.el8pc
Red Hat:satellite:6.16::el8 python-ecdsa 0 0:0.18.0-5.el8pc
Red Hat:satellite:6.16::el8 python-enrich 0 0:1.2.6-7.el8pc
Red Hat:satellite:6.16::el8 python-et-xmlfile 0 0:1.1.0-6.el8pc
Red Hat:satellite:6.16::el8 python-flake8 0 0:5.0.0-3.el8pc
Red Hat:satellite:6.16::el8 python-frozenlist 0 0:1.3.3-5.el8pc
Red Hat:satellite:6.16::el8 python-frozenlist-debugsource 0 0:1.3.3-5.el8pc
Red Hat:satellite:6.16::el8 python-future 0 0:0.18.3-5.el8pc
Red Hat:satellite:6.16::el8 python-galaxy-importer 0 0:0.4.19-2.el8pc
Red Hat:satellite:6.16::el8 python-gitdb 0 0:4.0.10-5.el8pc
Red Hat:satellite:6.16::el8 python-gitpython 0 0:3.1.40-3.el8pc
Red Hat:satellite:6.16::el8 python-gnupg 0 0:0.5.0-4.el8pc
Red Hat:satellite:6.16::el8 python-googleapis-common-protos 0 0:1.59.1-4.el8pc
Red Hat:satellite:6.16::el8 python-grpcio 0 0:1.65.4-1.el8pc
Red Hat:satellite:6.16::el8 python-grpcio-debugsource 0 0:1.65.4-1.el8pc
Red Hat:satellite:6.16::el8 python-gunicorn 0 0:22.0.0-1.el8pc
Red Hat:satellite:6.16::el8 python-importlib-metadata 0 0:6.0.1-3.el8pc
Red Hat:satellite:6.16::el8 python-inflection 0 0:0.5.1-6.el8pc
Red Hat:satellite:6.16::el8 python-iniparse 0 0:0.4-39.el8pc
Red Hat:satellite:6.16::el8 python-jinja2 0 0:3.1.4-1.el8pc
Red Hat:satellite:6.16::el8 python-jq 0 0:1.6.0-3.el8pc
Red Hat:satellite:6.16::el8 python-json-stream 0 0:2.3.2-4.el8pc
Red Hat:satellite:6.16::el8 python-json-stream-rs-tokenizer 0 0:0.4.25-3.el8pc
Red Hat:satellite:6.16::el8 python-jsonschema 0 0:4.10.3-3.el8pc
Red Hat:satellite:6.16::el8 python-lockfile 0 0:0.12.2-4.el8pc
Red Hat:satellite:6.16::el8 python-lxml 0 0:4.9.2-4.el8pc
Red Hat:satellite:6.16::el8 python-lxml-debugsource 0 0:4.9.2-4.el8pc
Red Hat:satellite:6.16::el8 python-markdown 0 0:3.4.1-3.el8pc
Red Hat:satellite:6.16::el8 python-markuppy 0 0:1.14-6.el8pc
Red Hat:satellite:6.16::el8 python-markupsafe 0 0:2.1.2-4.el8pc
Red Hat:satellite:6.16::el8 python-markupsafe-debugsource 0 0:2.1.2-4.el8pc
Red Hat:satellite:6.16::el8 python-mccabe 0 0:0.7.0-3.el8pc
Red Hat:satellite:6.16::el8 python-multidict 0 0:6.0.4-4.el8pc

Related vulnerabilities