{"id":"CVE-2024-39684","aliases":["AZL-43255","AZL-43297","AZL-43315","AZL-43618","AZL-45423","BELL-CVE-2024-39684","DEBIAN-CVE-2024-39684","EUVD-2024-38186","UBUNTU-CVE-2024-39684","USN-8189-1"],"status":"published","title":"Tencent RapidJSON include/rapidjson/reader.h GenericReader::ParseNumber() Function Template Exponent Parsing Integer Overflow","description":"Tencent RapidJSON is vulnerable to privilege escalation due to an integer overflow 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 overflow vulnerability (when the file is parsed), leading to elevation of privilege.","severity":{"version":"3.1","score":6.8,"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","level":"medium","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-10","score":0.0042,"percentile":0.36638,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-190"],"published":"2024-07-09T18:53:53Z","modified":"2026-11-09T12:49:26Z","fixes":[{"ecosystem":"Azure Linux:3","package":"rapidjson","fixed_in":["1.1.0-8"],"sources":["osv"]},{"ecosystem":"Azure Linux:2","package":"rapidjson","fixed_in":["1.1.0-8"],"sources":["osv"]},{"ecosystem":"Azure Linux:2","package":"ceph","fixed_in":["16.2.10-5"],"sources":["osv"]},{"ecosystem":"Ubuntu:Pro:16.04:LTS","package":"rapidjson","fixed_in":["0.12~git20141031-3ubuntu0.1~esm2"],"sources":["osv"]},{"ecosystem":"Ubuntu:Pro:18.04:LTS","package":"rapidjson","fixed_in":["1.1.0+dfsg2-3ubuntu0.1~esm2"],"sources":["osv"]},{"ecosystem":"Ubuntu:Pro:20.04:LTS","package":"rapidjson","fixed_in":["1.1.0+dfsg2-5ubuntu1+esm2"],"sources":["osv"]},{"ecosystem":"Ubuntu:Pro:22.04:LTS","package":"rapidjson","fixed_in":["1.1.0+dfsg2-7ubuntu0.1~esm2"],"sources":["osv"]},{"ecosystem":"Ubuntu:Pro:24.04:LTS","package":"rapidjson","fixed_in":["1.1.0+dfsg2-7.2ubuntu0.1~esm2"],"sources":["osv"]}],"affected":[{"source":"osv","ecosystem":"Azure Linux:3","package":"rapidjson","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.1.0-8"}]}]},{"source":"osv","ecosystem":"Azure Linux:2","package":"rapidjson","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.1.0-8"}]}]},{"source":"osv","ecosystem":"Azure Linux:2","package":"ceph","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"16.2.10-5"}]}]},{"source":"osv","ecosystem":"Azure Linux:2","package":"opencc","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"1.1.1-3"}]}]},{"source":"osv","ecosystem":"Azure Linux:3","package":"opencc","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"1.1.1-3"}]}]},{"source":"osv","ecosystem":"Alpaquita:23","package":"rapidjson","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.1.0-r4"}]}]},{"source":"osv","ecosystem":"Alpaquita:25","package":"rapidjson","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.1.0-r8"}]}]},{"source":"osv","ecosystem":"Alpaquita:stream","package":"rapidjson","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.1.0-r4"}]}]},{"source":"osv","ecosystem":"Debian:12","package":"rapidjson","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.1.0+dfsg2-7.1","1.1.0+dfsg2-7.2","1.1.0+dfsg2-7.3","1.1.0+dfsg2-7.4","1.1.0+dfsg2-7.6"]},{"source":"osv","ecosystem":"Debian:13","package":"rapidjson","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.1.0+dfsg2-7.4","1.1.0+dfsg2-7.6"]},{"source":"osv","ecosystem":"Debian:14","package":"rapidjson","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.1.0+dfsg2-7.4","1.1.0+dfsg2-7.6"]},{"source":"osv","ecosystem":"Ubuntu:Pro:16.04:LTS","package":"rapidjson","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.12~git20141031-3ubuntu0.1~esm2"}]}],"versions":["0.12~git20141031-3","0.12~git20141031-3ubuntu0.1~esm1"]},{"source":"osv","ecosystem":"Ubuntu:Pro:18.04:LTS","package":"rapidjson","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.1.0+dfsg2-3ubuntu0.1~esm2"}]}],"versions":["0.12~git20141031+dfsg-1","1.1.0+dfsg2-3","1.1.0+dfsg2-3ubuntu0.1~esm1"]},{"source":"osv","ecosystem":"Ubuntu:Pro:20.04:LTS","package":"rapidjson","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.1.0+dfsg2-5ubuntu1+esm2"}]}],"versions":["1.1.0+dfsg2-5","1.1.0+dfsg2-5ubuntu1","1.1.0+dfsg2-5ubuntu1+esm1"]},{"source":"osv","ecosystem":"Ubuntu:Pro:22.04:LTS","package":"rapidjson","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.1.0+dfsg2-7ubuntu0.1~esm2"}]}],"versions":["1.1.0+dfsg2-7","1.1.0+dfsg2-7ubuntu0.1~esm1"]},{"source":"osv","ecosystem":"Ubuntu:Pro:24.04:LTS","package":"rapidjson","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.1.0+dfsg2-7.2ubuntu0.1~esm2"}]}],"versions":["1.1.0+dfsg2-7.1","1.1.0+dfsg2-7.2","1.1.0+dfsg2-7.2ubuntu0.1~esm1"]},{"source":"osv","ecosystem":"Ubuntu:25.10","package":"rapidjson","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.1.0+dfsg2-7.3ubuntu1"]},{"source":"osv","ecosystem":"Ubuntu:26.10","package":"rapidjson","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.1.0+dfsg2-7.6ubuntu1"]},{"source":"osv","ecosystem":"Ubuntu:Pro:16.04:LTS","package":"rapidjson","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.12~git20141031-3ubuntu0.1~esm2"}]}],"versions":["0.12~git20141031-3","0.12~git20141031-3ubuntu0.1~esm1"]},{"source":"osv","ecosystem":"Ubuntu:Pro:18.04:LTS","package":"rapidjson","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.1.0+dfsg2-3ubuntu0.1~esm2"}]}],"versions":["0.12~git20141031+dfsg-1","1.1.0+dfsg2-3","1.1.0+dfsg2-3ubuntu0.1~esm1"]},{"source":"osv","ecosystem":"Ubuntu:Pro:20.04:LTS","package":"rapidjson","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.1.0+dfsg2-5ubuntu1+esm2"}]}],"versions":["1.1.0+dfsg2-5","1.1.0+dfsg2-5ubuntu1","1.1.0+dfsg2-5ubuntu1+esm1"]},{"source":"osv","ecosystem":"Ubuntu:Pro:22.04:LTS","package":"rapidjson","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.1.0+dfsg2-7ubuntu0.1~esm2"}]}],"versions":["1.1.0+dfsg2-7","1.1.0+dfsg2-7ubuntu0.1~esm1"]},{"source":"osv","ecosystem":"Ubuntu:Pro:24.04:LTS","package":"rapidjson","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.1.0+dfsg2-7.2ubuntu0.1~esm2"}]}],"versions":["1.1.0+dfsg2-7.1","1.1.0+dfsg2-7.2","1.1.0+dfsg2-7.2ubuntu0.1~esm1"]}],"products":[{"vendor":"tencent","product":"rapidjson"}],"references":[{"url":"https://msrc.microsoft.com/update-guide/vulnerability/CVE-2024-39684","tags":["x_refsource_CONFIRM","x_transferred","web","report"]},{"url":"https://security.netapp.com/advisory/ntap-20240905-0003/","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2024-39684","tags":["web"]},{"url":"https://docs.bell-sw.com/security/cves/CVE-2024-39684","tags":["advisory"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2024-39684","tags":["advisory"]},{"url":"https://ubuntu.com/security/CVE-2024-39684","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2024-39684","tags":["report"]},{"url":"https://ubuntu.com/security/notices/USN-8189-1","tags":["advisory"]}],"sources":{"cve":[{"id":"CVE-2024-39684","title":"Tencent RapidJSON include/rapidjson/reader.h GenericReader::ParseNumber() Function Template Exponent Parsing Integer Overflow","description":"Tencent RapidJSON is vulnerable to privilege escalation due to an integer overflow 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 overflow vulnerability (when the file is parsed), leading to elevation of privilege.","status":"published","published":"2024-07-09T18:53:53.855Z","modified":"2024-09-05T08:03:37.023Z","cvss":[{"version":"3.1","score":6.8,"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","level":"medium","assessor":"cna"}],"cwes":["CWE-190"],"updated_at":"2026-11-02T14:34:19.28149Z"}],"euvd":[{"id":"EUVD-2024-38186","description":"Tencent RapidJSON is vulnerable to privilege escalation due to an integer overflow 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 overflow vulnerability (when the file is parsed), leading to elevation of privilege.","status":"published","published":"2024-07-09T18:53:53Z","modified":"2024-09-05T08:03:37Z","cvss":[{"version":"3.1","score":6.8,"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","level":"medium"}],"updated_at":"2026-11-03T00:56:03.731667Z"}],"nvd":[{"id":"CVE-2024-39684","description":"Tencent RapidJSON is vulnerable to privilege escalation due to an integer overflow 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 overflow vulnerability (when the file is parsed), leading to elevation of privilege.","status":"published","published":"2024-07-09T19:15:12.7Z","modified":"2026-06-17T07:42:28.07Z","cvss":[{"version":"3.1","score":7.8,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high","assessor":"secondary"}],"cwes":["CWE-190"],"updated_at":"2026-11-02T14:10:12.016585Z"}],"osv":[{"id":"BELL-CVE-2024-39684","status":"published","published":"2026-07-22T06:05:52.4725Z","modified":"2026-07-31T07:19:18.341980734Z","cvss":[{"version":"3.1","score":7.8,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:28:20.200735Z"},{"id":"CVE-2024-39684","title":"Tencent RapidJSON include/rapidjson/reader.h GenericReader::ParseNumber() Function Template Exponent Parsing Integer Overflow","description":"Tencent RapidJSON is vulnerable to privilege escalation due to an integer overflow 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 overflow vulnerability (when the file is parsed), leading to elevation of privilege.","status":"published","published":"2024-07-09T18:53:53Z","modified":"2026-04-10T05:14:35.235176Z","cvss":[{"version":"3.1","score":7.8,"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","level":"high"}],"updated_at":"2026-11-02T15:44:41.618074Z"},{"id":"DEBIAN-CVE-2024-39684","description":"Tencent RapidJSON is vulnerable to privilege escalation due to an integer overflow 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 overflow vulnerability (when the file is parsed), leading to elevation of privilege.","status":"published","published":"2024-07-09T19:15:12.7Z","modified":"2026-11-02T12:02:44.183130614Z","cvss":[{"version":"3.1","score":7.8,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:45:43.156294Z"},{"id":"UBUNTU-CVE-2024-39684","description":"Tencent RapidJSON is vulnerable to privilege escalation due to an integer overflow 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 overflow vulnerability (when the file is parsed), leading to elevation of privilege.","status":"published","published":"2024-07-09T19:15:00Z","modified":"2026-11-09T12:49:26.596339751Z","cvss":[{"version":"3.1","score":7.8,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-09T13:27:42.046613Z"},{"id":"AZL-43255","title":"CVE-2024-39684 affecting package rapidjson for versions less than 1.1.0-8","description":"Tencent RapidJSON is vulnerable to privilege escalation due to an integer overflow 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 overflow vulnerability (when the file is parsed), leading to elevation of privilege.","status":"published","published":"2024-07-09T19:15:12Z","modified":"2026-11-05T05:40:51Z","updated_at":"2026-11-05T16:41:20.107976Z"},{"id":"AZL-43297","title":"CVE-2024-39684 affecting package rapidjson for versions less than 1.1.0-8","description":"Tencent RapidJSON is vulnerable to privilege escalation due to an integer overflow 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 overflow vulnerability (when the file is parsed), leading to elevation of privilege.","status":"published","published":"2024-07-09T19:15:12Z","modified":"2026-04-21T04:30:56.759484Z","updated_at":"2026-11-02T15:28:05.284713Z"},{"id":"AZL-43315","title":"CVE-2024-39684 affecting package ceph for versions less than 16.2.10-5","description":"Tencent RapidJSON is vulnerable to privilege escalation due to an integer overflow 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 overflow vulnerability (when the file is parsed), leading to elevation of privilege.","status":"published","published":"2024-07-09T19:15:12Z","modified":"2026-04-21T04:30:57.092251Z","updated_at":"2026-11-02T15:28:05.284713Z"},{"id":"AZL-43618","title":"CVE-2024-39684 affecting package opencc 1.1.1-3","description":"Tencent RapidJSON is vulnerable to privilege escalation due to an integer overflow 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 overflow vulnerability (when the file is parsed), leading to elevation of privilege.","status":"published","published":"2024-07-09T19:15:12Z","modified":"2026-04-21T04:31:04.90916Z","updated_at":"2026-11-02T15:28:05.284713Z"},{"id":"AZL-45423","title":"CVE-2024-39684 affecting package opencc 1.1.1-3","description":"Tencent RapidJSON is vulnerable to privilege escalation due to an integer overflow 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 overflow vulnerability (when the file is parsed), leading to elevation of privilege.","status":"published","published":"2024-07-09T19:15:12Z","modified":"2026-11-05T05:36:30Z","updated_at":"2026-11-05T16:41:20.321068Z"},{"id":"USN-8189-1","title":"rapidjson vulnerability","description":"It was discovered that RapidJSON did not properly protect against integer\noverflows in certain instances when parsing JSON text. A remote attacker\ncould possibly use this issue to craft a malicious JSON file, that when\nread by RapidJSON, would lead to an elevation of privilege, resulting in\nthe potential disclosure of sensitive information.","status":"published","published":"2026-04-20T13:49:01Z","modified":"2026-06-25T13:32:31.991950903Z","updated_at":"2026-11-02T16:58:22.951676Z"}]}}
