Astro — это веб-фреймворк для веб-сайтов, управляемых контентом. Ошибка в процессе сборки позволяет любому неаутентифицированному пользоват…
Astro — это веб-фреймворк для веб-сайтов, управляемых контентом. Ошибка в процессе сборки позволяет любому неаутентифицированному пользователю читать части исходного кода сервера. Во время сборки вместе с клиентскими ресурсами, такими как файлы css и шрифтов, файлы sourcemap **для кода сервера** перемещаются в общедоступную папку. Любая посторонняя сторона может прочитать их с помощью несанкционированного HTTP-запроса GET к тому же серверу, на котором размещена остальная часть веб-сайта. Хотя некоторые файлы сервера хешируются, что затрудняет их доступ, файлы, соответствующие маршрутизатору файловой системы (файлы в `src/pages`), имеют предсказуемые имена. Например, файл sourcemap для `src/pages/index.astro` получает имя `dist/client/pages/index.astro.mjs.map`. Эта уязвимость является основной причиной проблемы № 12703, которая ведет к простому проекту stackblitz, демонстрирующему уязвимость. После сборки обратите внимание на содержимое папки `dist/client` (в коде astro она называется `config.build.client`). Все серверы astro делают указанную папку доступной для общедоступного Интернета без какой-либо аутентификации. Она содержит файлы `.map`, соответствующие коду, который выполняется на сервере. Все проекты **server-output** в версиях Astro 5 **с v5.0.3** по **v5.0.7**, у которых **включены sourcemaps**, либо напрямую, либо через надстройку, такую как `sentry`, подвержены уязвимости. Исправление для проектов **server-output** было выпущено в **astro@5.0.8**. Кроме того, все проекты **static-output**, созданные с использованием версий Astro 4 **4.16.17 или старше** или версий Astro 5 **5.0.8 или старше**, у которых **включены sourcemaps**, также подвержены уязвимости. Исправление для проектов **static-output** было выпущено в **astro@5.0.9** и перенесено в Astro v4 в **astro@4.16.18**. Непосредственное воздействие ограничивается исходным кодом. Любые секреты или переменные среды не раскрываются, если они не присутствуют дословно в исходном коде. Непосредственной потери целостности на уязвимом сервере нет. Однако впоследствии можно обнаружить другую уязвимость через раскрытый исходный код. Нет непосредственного воздействия на доступность уязвимого сервера. Однако наличие небезопасного регулярного выражения, например, можно быстро использовать для последующего компрометации доступности. Исправление для проектов **server-output** было выпущено в **astro@5.0.8**, а исправление для проектов **static-output** было выпущено в **astro@5.0.9** и перенесено в Astro v4 в **astro@4.16.18**. Пользователям рекомендуется немедленно обновиться, если они используют sourcemaps или интеграцию, которая включает sourcemaps.
Продукт хранит конфиденциальные данные в корневом каталоге веб-документов с недостаточным контролем доступа, что может сделать их доступными для ненадёжных сторон.
https://cwe.mitre.org/data/definitions/219.html →Открыть в коллекции CWE →| Продукт | Вендор | Статус |
|---|---|---|
| Отслеживается | ||
| astro | * | Отслеживается |