Headline
CVE-2023-40168: Malicious projects or extensions can read and upload arbitrary files from disk
TurboWarp is a desktop application that compiles scratch projects to JavaScript. TurboWarp Desktop versions prior to version 1.8.0 allowed a malicious project or custom extension to read arbitrary files from disk and upload them to a remote server. The only required user interaction is opening the sb3 file or loading the extension. The web version of TurboWarp is not affected. This bug has been addressed in commit 55e07e99b59
after an initial fix which was reverted. Users are advised to upgrade to version 1.8.0 or later. Users unable to upgrade should avoid opening sb3 files or loading extensions from untrusted sources.
Impact
TurboWarp Desktop versions prior to version 1.8.0 allowed a malicious project or malicious custom extension (sandboxed or unsandboxed) to silently read arbitrary files from disk and upload them to a remote server due to the desktop app allowing unrestricted access to file:// and allowing unrestricted network access. The only required user interaction is opening the sb3 file or loading the extension. Pressing the green flag is not necessary.
The web version of TurboWarp is not affected.
Patches
The file:// access bug is resolved on TurboWarp Desktop 1.8.0 and later. Manually updating is likely to be required as many official distribution channels do not support automatic updates.
Additional mitigations are being developed for future versions.
Workarounds
Avoid opening sb3 files or loading custom extensions from untrusted sources such as those sent over chat messaging apps.
References
- This was originally intended to be fixed by f0f82aa but was reverted by a62dbd7 for causing regressions
- It was ultimately fixed by 55e07e9