CVE-2020-28495 json
Prototype Pollution
published 2021-02-02 5 y ago modified 2026-07-08 4 mo ago also GHSA-6cf8-qhqj-vjqm , EUVD-2021-0536
- cvss
- 7.3
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 3.8%
- EPSS 3.8% chance of exploitation in 30 days, percentile 89%
- public exploits
- 0
- none known
Summary
This affects the package total.js before 3.4.7. The set function can be used to set a value into the object according to the path. However the keys of the path being set are not properly sanitized, leading to a prototype pollution vulnerability. The impact depends on the application. In some cases it is possible to achieve Denial of service (DoS), Remote Code Execution or Property Injection.
Patch / fix
- npm total.js 3.4.7
- n/a total.js 3.4.7
Exploit prediction
3.76% chance of exploitation in the next 30 days, higher than 89% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- snyk.io https://snyk.io/vuln/SNYK-JS-TOTALJS-1046671 referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.3 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L/E:P/RL:O/RC:C |
| CNA | 3.1 | 7.3 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L |
| NVD | 2.0 | 7.5 | AV:N/AC:L/Au:N/C:P/I:P/A:P |
| GitHub | 3.1 | 7.3 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| npm | total.js | <3.4.7 |
3.4.7 |
Affected products
- n/a total.js
Classification
References
-
github.com
/totaljs/framework/commit/b3f901561d66ab799a4a99279893b94cad7ae4ff
web, patch, third-party-advisory
-
snyk.io
/vuln/SNYK-JS-TOTALJS-1046671
web, exploit, patch, third-party-advisory
-
docs.totaljs.com
/latest/en.html%23api~FrameworkUtils~U.set
web, broken-link
-
github.com
/totaljs/framework/blob/master/utils.js%23L6606
web, broken-link
-
github.com
/totaljs/framework/blob/master/utils.js%23L6617
web, broken-link
-
nvd.nist.gov
/vuln/detail/CVE-2020-28495
advisory
-
npmjs.com
/package/total.js
web
Sources
- CVE List CVE-2020-28495
- GitHub Advisory GHSA-6cf8-qhqj-vjqm
- NVD CVE-2020-28495
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.