CVE-2020-7777 json
Arbitrary Code Execution
published 5y ago modified 4mo ago also GHSA-vm64-cfqx-3698 , EUVD-2022-1210
- cvss
- 7.2
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 2.1%
- EPSS 2.1% chance of exploitation in 30 days, percentile 81%
- public exploits
- 0
- none known
Summary
This affects all versions of package jsen. If an attacker can control the schema file, it could run arbitrary JavaScript code on the victim machine. In the module description and README file there is no mention about the risks of untrusted schema files, so I assume that this is applicable. In particular the required field of the schema is not properly sanitized. The resulting string that is build based on the schema definition is then passed to a Function.apply();, leading to an Arbitrary Code Execution.
Is CVE-2020-7777 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerExploit prediction
2.11% chance of exploitation in the next 30 days, higher than 81% of all scored CVEs (FIRST EPSS, 2026-11-09).
Exploits and checks
- snyk.io https://snyk.io/vuln/SNYK-JS-JSEN-1014670 referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.2 | CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H/E:P/RL:U/RC:C |
| CNA | 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.2 | CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| npm | jsen | <=0.6.6 |
no fix listed |
Affected products
- n/a jsen
Classification
- Weakness
-
- CWE-94 Improper Control of Generation of Code
References
-
snyk.io
/vuln/SNYK-JS-JSEN-1014670
exploit, third-party-advisory
-
github.com
/bugventure/jsen/blob/master/lib/jsen.js%23L875
broken-link
-
nvd.nist.gov
/vuln/detail/CVE-2020-7777
advisory
-
github.com
/bugventure/jsen/blob/master/lib/jsen.js#L875
web
-
security.snyk.io
/vuln/SNYK-JS-JSEN-1014670
web
Sources
- CVE List CVE-2020-7777
- GitHub Advisory GHSA-vm64-cfqx-3698
- NVD CVE-2020-7777
Fencer Intel 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.