What’s Vulnerable › Vulnerabilities
CVE-2021-43840: Path traversal in message_bus
- Severity: medium (CVSS 6.5 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 1.9% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2021-12-17 · updated 2026-06-17
- Weakness: CWE-22
Description
message_bus is a messaging bus for Ruby processes and web clients. In versions prior to 3.3.7 users who deployed message bus with diagnostics features enabled (default off) are vulnerable to a path traversal bug, which could lead to disclosure of secret information on a machine if an unintended user were to gain access to the diagnostic route. The impact is also greater if there is no proxy for your web application as the number of steps up the directories is not bounded. For deployments which uses a proxy, the impact varies. For example, If a request goes through a proxy like Nginx with `merge_slashes` enabled, the number of steps up the directories that can be read is limited to 3 levels. This issue has been patched in version 3.3.7. Users unable to upgrade should ensure that MessageBus::Diagnostics is disabled.
Affected products
- discourse message_bus: before 3.3.7 — fixed in 3.3.7
How to fix
Upgrade to a fixed version: discourse message_bus 3.3.7. Check the vendor advisory for mitigations.
References
- https://github.com/discourse/message_bus/commit/9b6deee01ed474c7e9b5ff65a06bb0447b4db2ba
- https://github.com/discourse/message_bus/security/advisories/GHSA-xmgj-5fh3-xjmm
- https://github.com/discourse/message_bus/commit/9b6deee01ed474c7e9b5ff65a06bb0447b4db2ba
- https://github.com/discourse/message_bus/security/advisories/GHSA-xmgj-5fh3-xjmm
Get alerted when CVE-2021-43840 or the next vulnerability affects your stack