GHSA-xmgj-5fh3-xjmm

Suggest an improvement
Source
https://github.com/advisories/GHSA-xmgj-5fh3-xjmm
Import Source
https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2021/12/GHSA-xmgj-5fh3-xjmm/GHSA-xmgj-5fh3-xjmm.json
JSON Data
https://api.test.osv.dev/v1/vulns/GHSA-xmgj-5fh3-xjmm
Aliases
Published
2021-12-17T19:59:13Z
Modified
2023-11-01T04:56:46.490508Z
Severity
  • 4.2 (Medium) CVSS_V3 - CVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:U/C:H/I:N/A:N CVSS Calculator
Summary
Path traversal when MessageBus::Diagnostics is enabled
Details

Impact

Users who deployed message bus with diagnostics features enabled (default off) were 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.

Patches

Patched in 3.3.7.

Workarounds

Disable MessageBus::Diagnostics in production like environments.

Database specific
{
    "nvd_published_at": "2021-12-17T19:15:00Z",
    "cwe_ids": [
        "CWE-22"
    ],
    "severity": "MODERATE",
    "github_reviewed": true,
    "github_reviewed_at": "2021-12-17T19:34:45Z"
}
References

Affected packages

RubyGems / message_bus

Package

Name
message_bus
Purl
pkg:gem/message_bus

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0Unknown introduced version / All previous versions are affected
Fixed
3.3.7

Affected versions

0.*

0.0.1
0.0.2
0.9.3
0.9.3.1
0.9.3.2
0.9.4
0.9.5
0.9.6

1.*

1.0.0
1.0.1
1.0.2
1.0.3
1.0.4
1.0.5
1.0.6
1.0.7
1.0.8
1.0.9
1.0.10
1.0.11
1.0.12
1.0.13
1.0.14
1.0.15
1.0.16
1.1.0
1.1.1

2.*

2.0.0.beta.1
2.0.0.beta.2
2.0.0.beta.3
2.0.0.beta.4
2.0.0.beta.5
2.0.0.beta.6
2.0.0.beta.7
2.0.0.beta.8
2.0.0.beta.9
2.0.0.beta.10
2.0.0.beta.11
2.0.0
2.0.1
2.0.2
2.0.3
2.0.5
2.0.6
2.0.7
2.0.8
2.0.9
2.1.0
2.1.1
2.1.2
2.1.3
2.1.4
2.1.5
2.1.6
2.2.0.pre
2.2.0.pre.1
2.2.0.pre.2
2.2.0
2.2.1
2.2.2
2.2.3
2.2.4

3.*

3.0.0
3.1.0
3.2.0
3.3.0
3.3.1
3.3.2
3.3.3
3.3.4
3.3.5
3.3.6