CVE-2020-14000

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.
Configurations

Configuration 1 (hide)

cpe:2.3:a:mit:scratch-vm:*:*:*:*:*:*:*:*

History

21 Nov 2024, 05:02

Type Values Removed Values Added
References () https://github.com/LLK/scratch-vm/pull/2476 - Third Party Advisory () https://github.com/LLK/scratch-vm/pull/2476 - Third Party Advisory
References () https://scratch.mit.edu/discuss/topic/422904/?page=1#post-4223443 - Vendor Advisory () https://scratch.mit.edu/discuss/topic/422904/?page=1#post-4223443 - Vendor Advisory

Information

Published : 2020-07-16 15:15

Updated : 2024-11-21 05:02


NVD link : CVE-2020-14000

Mitre link : CVE-2020-14000

CVE.ORG link : CVE-2020-14000


JSON object : View

Products Affected

mit

  • scratch-vm
CWE
CWE-502

Deserialization of Untrusted Data