Vulnerability · Published Jul 16, 2020 · Assigned by mitre

CVE-2020-14000

Critical 9.8

In plain English

A critical-severity security flaw in the scratch-vm package (npm). There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 2.8% (higher than 87% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS NVD)9.8Critical
Exploit odds (30 days)2.8%top 13.3% of all CVEs
Exploited in the wildNo reportsnot in CISA KEV
Attack toolingNoneno public tooling known

Official description

MIT Lifelong Kindergarten Scratch scratch-vm before 0.2.0-prerelease.20200714185213 loads extension URLs from untrusted project.json files with certain _ characters, resulting in remote code execution because the URL's content is treated as a script and is executed as a worker. The responsible code is getExtensionIdForOpcode in serialization/sb3.js. The use of _ is incompatible with a protection mechanism in older versions, in which URLs were split and consequently deserialization attacks were prevented. NOTE: the scratch.mit.edu hosted service is not affected because of the lack of worker scripts.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
npmscratch-vm0.2.0-prerelease.20200714185213GHSA-vc9j-fhvv-8vrf

Affected products (as reported)

VendorProductVersions
n/a n/a n/a

References