~ / search / GHSA-vc9j-fhvv-8vrf

GHSA-vc9j-fhvv-8vrf

Remote Code Execution in scratch-vm

Source: GitHub Advisory Database (reviewed) Critical CVE-2020-14000

Packages

EcosystemPackageAffectedFixed in
npm scratch-vm < 0.2.0-prerelease.20200714185213 0.2.0-prerelease.20200714185213

Details

As written in the advisory (Markdown source, shown as plain text).

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.

References

External links from the advisory. They lead to third-party sites.