Chartbrew — это веб-приложение с открытым исходным кодом, которое может напрямую подключаться к базам данных и API и использовать данные для создания диаграмм. До версии 4.8.4 приложение позволяло загружать файлы (логотипы проектов) без проверки типа файла или содержимого. Он доверяет расширению, предоставленному пользователем.
Эти файлы сохраняются в каталоге uploads/ и обслуживаются статически. Злоумышленник может загрузить HTML-файл, содержащий вредоносный код JavaScript. Поскольку токены аутентификации, скорее всего, хранятся в localStorage (поскольку они возвращаются в теле API), этот XSS может привести к захвату учетной записи.
Эта проблема исправлена в версии 4.8.4.
Показать оригинальное описание (EN)
Chartbrew is an open-source web application that can connect directly to databases and APIs and use the data to create charts. Prior to version 4.8.4, the application allows uploading files (project logos) without validating the file type or content. It trusts the extension provided by the user. These files are saved to the uploads/ directory and served statically. An attacker can upload an HTML file containing malicious JavaScript. Since authentication tokens are likely stored in localStorage (as they are returned in the API body), this XSS can lead to account takeover. This issue has been patched in version 4.8.4.
Характеристики атаки
Последствия
Строка CVSS v3.1