CVE-2024-37309: CrateDB has a Client initialized Session-Renegotiation DoS
Summary Client-Initiated TLS Renegotiation Denial of Service (DoS) Vulnerability at Port 4200
Details A high-risk vulnerability has been identified where the TLS endpoint (port 4200) permits client-initiated renegotiation. In this scenario, an attacker can exploit this feature to repeatedly request renegotiation of security parameters during an ongoing TLS session. This flaw could lead to excessive consumption of CPU resources, resulting in potential server overload and service disruption. The vulnerability was confirmed using an openssl client where the command ‘R’ initiates renegotiation, followed by the server confirming with ‘RENEGOTIATING’.
PoC
- Connect to the TLS server on port 4200 using an openssl client.
- Initiate a TLS session.
- Send the renegotiation command (‘R’) multiple times.
- Observe the server response to confirm renegotiation.
Impact This vulnerability allows an attacker to perform a denial of service attack by exhausting server CPU resources through repeated TLS renegotiations. This impacts the availability of services running on the affected server, posing a significant risk to operational stability and security.
TLS 1.3 explicitly forbids renegotiation, since it closes a window of opportunity for an attack.
References
- cratedb.com/docs/crate/reference/en/latest/appendices/release-notes/5.7.2.html
- github.com/advisories/GHSA-x268-qpg6-w9g2
- github.com/crate/crate
- github.com/crate/crate/commit/1dde03bdf031a20886065195527e368e4a3218b3
- github.com/crate/crate/security/advisories/GHSA-x268-qpg6-w9g2
- nvd.nist.gov/vuln/detail/CVE-2024-37309
Detect and mitigate CVE-2024-37309 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →