CVE-2021-32831 json
Code injection in total.js
published 2021-08-30 5 y ago modified 2026-06-17 4 mo ago also GHSA-vwhc-pww7-72x6 , EUVD-2021-2121
- cvss
- 7.5
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 1.5%
- EPSS 1.5% chance of exploitation in 30 days, percentile 73%
- public exploits
- 0
- none known
Summary
Total.js framework (npm package total.js) is a framework for Node.js platfrom written in pure JavaScript similar to PHP's Laravel or Python's Django or ASP.NET MVC. In total.js framework before version 3.4.9, calling the utils.set function with user-controlled values leads to code-injection. This can cause a variety of impacts that include arbitrary code execution. This is fixed in version 3.4.9.
Patch / fix
- npm total.js 3.4.9
- totaljs total.js 3.4.9
Exploit prediction
1.47% chance of exploitation in the next 30 days, higher than 73% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- securitylab.github.com https://securitylab.github.com/advisories/GHSL-2021-066-totaljs-totaljs/ referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.5 | CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:C/C:H/I:H/A:H |
| NVD | 3.1 | 7.2 | CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H |
| NVD | 2.0 | 6.5 | AV:N/AC:L/Au:S/C:P/I:P/A:P |
| GitHub | 3.1 | 7.5 | CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:C/C:H/I:H/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| npm | total.js | <3.4.9 |
3.4.9 |
Affected products
- totaljs framework
Classification
- Weakness
-
- CWE-94 Improper Control of Generation of Code
References
-
github.com
/totaljs/framework/commit/887b0fa9e162ef7a2dd9cec20a5ca122726373b3
web, patch, third-party-advisory
-
securitylab.github.com
/advisories/GHSL-2021-066-totaljs-totaljs/
exploit, patch, third-party-advisory
-
github.com
/totaljs/framework/blob/e644167d5378afdc45cb0156190349b2c07ef235/changes.txt#L11
web, third-party-advisory
-
npmjs.com
/package/total.js
web, product, third-party-advisory
-
nvd.nist.gov
/vuln/detail/CVE-2021-32831
advisory
-
github.com
/totaljs
package
-
securitylab.github.com
/advisories/GHSL-2021-066-totaljs-totaljs
advisory
Sources
- CVE List CVE-2021-32831
- GitHub Advisory GHSA-vwhc-pww7-72x6
- NVD CVE-2021-32831
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.