Vitest — это платформа тестирования на базе Vite. С версий 3.0.0 до 3.2.5, 4.1.8 и 5.0.0-beta.4 режим браузера Vitest предоставлял API cdp(), который перенаправлял необработанные методы протокола Chrome DevTools без блокировки с помощьюallowWrite илиallowExec, позволяя удаленному клиенту с открытыми метаданными API браузера использовать CDP Page.setDownloadBehavior и Runtime.evaluate для перезаписи vite.config.ts и выполнения под контролем злоумышленника. Код Node.js.
Эта проблема исправлена в бета-версиях 3.2.5, 4.1.8 и 5.0.0.
Показать оригинальное описание (EN)
Vitest is a testing framework powered by Vite. From 3.0.0 until 3.2.5, 4.1.8, and 5.0.0-beta.4, Vitest Browser Mode exposed a cdp() API that forwarded raw Chrome DevTools Protocol methods without being gated by allowWrite or allowExec, allowing a remote client with exposed browser API metadata to use CDP Page.setDownloadBehavior and Runtime.evaluate to overwrite vite.config.ts and execute attacker-controlled Node.js code. This issue is fixed in versions 3.2.5, 4.1.8, and 5.0.0-beta.
Характеристики атаки
Последствия
Строка CVSS v3.1