Vulnerability · Published Jul 9, 2024 · Assigned by GitHub_M
CVE-2024-38517Tencent RapidJSON include/rapidjson/reader.h GenericReader::ParseNumber() Function Template Exponent Parsing Integer Underflow
Medium 6.8
In plain English
A medium-severity security flaw in RapidJSON from Tencent. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.4% (higher than 32% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
Tencent RapidJSON is vulnerable to privilege escalation due to an integer underflow in the `GenericReader::ParseNumber()` function of `include/rapidjson/reader.h` when parsing JSON text from a stream. An attacker needs to send the victim a crafted file which needs to be opened; this triggers the integer underflow vulnerability (when the file is parsed), leading to elevation of privilege.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| Alpine:v3.20 | rapidjson | 1.1.0-r6 | ALPINE-CVE-2024-38517 |
| Alpine:v3.21 | rapidjson | 1.1.0-r7 | ALPINE-CVE-2024-38517 |
| Alpine:v3.22 | rapidjson | 1.1.0-r7 | ALPINE-CVE-2024-38517 |
| Alpine:v3.23 | rapidjson | 1.1.0-r7 | ALPINE-CVE-2024-38517 |
| Alpine:v3.24 | rapidjson | 1.1.0-r7 | ALPINE-CVE-2024-38517 |
| Debian:12 | rapidjson | no fix listed | DEBIAN-CVE-2024-38517 |
| Debian:13 | rapidjson | 1.1.0+dfsg2-7.4 | DEBIAN-CVE-2024-38517 |
| Debian:14 | rapidjson | 1.1.0+dfsg2-7.4 | DEBIAN-CVE-2024-38517 |
Affected products (as reported)
Weakness: CWE-191 · Vector: CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H/E:U/RL:O/RC:C
References
- https://msrc.microsoft.com/update-guide/vulnerability/CVE-2024-38517 x_refsource_CONFIRM
- https://github.com/Tencent/rapidjson/pull/1261/commits/8269bc2bc289e9d343bae51cdf6d23ef0950e001 x_refsource_MISC
- https://github.com/fmalita/rapidjson/commit/8269bc2bc289e9d343bae51cdf6d23ef0950e001 x_refsource_MISC
- https://security.netapp.com/advisory/ntap-20240905-0001/