Astro
Уязвимости
23
Эксплуатируемые
0
Макс. CVSS
9.1
Макс. EPSS
0.0144
Распределение по критичности
Критический
1
Высокий
4
Средний
15
Низкий
3
Затронутые диапазоны версий
11.0.3–12.6.62.10.10–5.18.12.16.0–5.15.53.0.0–4.16.15.13.4–5.13.105.2.0–5.12.85.2.0–5.15.69.0.0–9.5.4< 10.0.0< 10.0.2< 10.0.5< 4.16.17< 4.16.18< 5.14.2< 5.14.3< 5.15.8< 5.15.9< 6.1.10< 6.1.6< 9.4.1
Также сопоставлено как (исходные строки): astro
Топ уязвимостей
CVE-2026-33768Astro – это веб-фреймворк. До версии 10.0.2 точка входа @astrojs/vercel без сервера считывает заголовок x-astro-path и параметр запроса x_astro_path для переписывания внутреннего пути запроса без аутентификации. На развертывании без Edge Middleware это позволяет любому полностью обойти ограничения на путь платформы Vercel. Переопределение сохраняет оригинальный метод HTTP и тело, поэтому это не ограничивается GET. POST, PUT, УДАЛИТЬ все приземлиться на переписанный путь. Блокировка правил брандмауэра /admin/* ничего не делает, когда запрос поступает как POST /api/health?x_astro_path=/admin/delete-user. Этот вопрос исправлен в версии 10.0.2.
CVE-2024-56159Astro — это веб-фреймворк для веб-сайтов, управляемых контентом. Ошибка в процессе сборки позволяет любому неаутентифицированному пользователю читать части исходного кода сервера. Во время сборки вместе с клиентскими ресурсами, такими как файлы 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.
CVE-2026-29772Astro — это веб-фреймворк. До версии 10.0.0 обработчик Astro Server Islands POST буферизует и анализирует полный корпус запроса как JSON без соблюдения ограничения по размеру. Поскольку JSON.parse() выделяет кучу V8 для каждого элемента во входе, созданная полезная нагрузка многих небольших объектов JSON достигает ~ 15x амплификации памяти (проволочных байтов для кучи байтов), что позволяет одному неаутентифицированному запросу исчерпать кучу процесса и сломать сервер. Маршрут /_server-islands/[name] регистрируется во всех приложениях Astro SSR независимо от того, использует ли какой-либо компонент сервер: отсрочка, и тело разобрано до того, как название острова будет подтверждено, поэтому затрагивается любое приложение Astro SSR с автономным адаптером Node. Этот вопрос исправлен в версии 10.0.0.
CVE-2026-27829Astro – это веб-фреймворк. В версиях с 9.0.0 до 9.5.3 ошибка в конвейере изображений Astro позволяет обойти «image.domains` / `image.remotePatterns` ограничения, позволяющие серверу получать контент от несанкционированных удаленных хостов. Astro предоставляет опцию «inferSize`», которая привносит удаленные изображения во время рендеринга для определения их размеров. Удаленные изображения предназначены для ограничения доменов, разрешенных вручную разработчиком сайта (с использованием параметров «image.domains» или «image.remotePatterns». Однако при использовании "inferSize`" проверки домена не выполняется - изображение извлекается из любого хоста независимо от настроенных ограничений. Злоумышленник, который может влиять на URL-адрес изображения (например, через контент CMS или данные, предоставленные пользователем), может заставить сервер получать от произвольных хостов. Это позволяет обойти «image.domains` / `image.remotePatterns` ограничения для выполнения запросов на стороне сервера к несанкционированным хостам. Это включает в себя риск подделки запросов на стороне сервера (SSRF) против внутренних сетевых служб и конечных точек облачных метаданных. Версия 9.5.4 устраняет проблему.
CVE-2025-59837Astro - это веб-фреймворк, который включает в себя прокси-сервер изображения. В версиях 5.13.4 и позже до 5.13.10 проверка домена изображения может быть обойдена с помощью обратных ударов в параметре href, что позволяет серверным запросам на произвольных URL-адресах. Это может привести к подделке запросов на стороне сервера (SSRF) и, возможно, кросс-сайтовому сценарию (XSS). Эта уязвимость существует из-за неполного исправления для CVE-2025-58179. Зафиксировано в 5.13.10.
CVE-2025-64765Astro — это веб-фреймворк. До версии 5.15.8 существует несоответствие между нормализацией путей запроса для маршрутизации/рендеринга и как промежуточное ПО приложения считывает путь проверки проверки. Astro внутреннее приложение decodeURI() для определения того, какой маршрут для рендеринга, в то время как промежуточное ПО использует context.url.pathname без применения той же нормализации (decodeURI). Это несоответствие может позволить злоумышленникам достигать защищенных маршрутов, используя закодированные варианты пути, которые проходят маршрутизацию, но обходят проверки проверки. Этот вопрос был исправлен в версии 5.15.8.
CVE-2025-55303Astro - это веб-фреймворк для сайтов, управляемых контентом. В версиях астро до 5.13.2 и 4.16.18 конечную точку оптимизации изображения в проектах, развернутых с рендерингом по требованию, позволяет обслуживать изображения из несанкционированных сторонних доменов. Сайты, созданные по требованию, построенные с помощью Astro, включают конечную точку /_image, которая возвращает оптимизированные версии изображений. Ошибка в затронутых версиях астро позволяет злоумышленнику обойти ограничения стороннего домена, используя протокол-относительный URL в качестве источника изображения, например, /_image?href=/example.com/image.png. Эта уязвимость зафиксирована в пунктах 5.13.2 и 4.16.18.
CVE-2025-66202Astro - это веб-фреймворк. Версии 5.15.7 и ниже имеют двойное кодирование URL-обхода, которое позволяет любому злоумышленнику без аутентификации обходить проверки аутентификации на основе пути в промежуточное программное обеспечение Astro, предоставляя несанкционированный доступ к защищенным маршрутам. В то время как оригинальный CVE-2025-64765 был зафиксирован в v5.15.8, исправление недостаточно, поскольку оно декодирует только один раз. Используя двукодированные URL-адреса, злоумышленники все еще могут обойти аутентификацию и получить доступ к любому маршруту, защищенному проверками фамилии промежуточных программ. Эта проблема исправлена в версии 5.15.8.
CVE-2025-64525Astro — это веб-фреймворк. В версиях Astro 2.16.0 до 5.15.5, которые используют рендеринг запроса, запрашивать заголовки `x-forwarded-proto` и `x-pitred-port` небезопасно используются без дезинфекции для построения URL-адреса. Это имеет несколько последствий, наиболее важными из которых являются: промежуточный защищенный обход маршрута (только через `x-forwarded-proto`), DoS через отравление кэшем (если CDN присутствует), SSRF (только через `x-forwarded-proto`), загрязнение URL (потенциальный SXSS, если CDN присутствует) и WAF-обход. Версия 5.15.5 содержит патч.
CVE-2025-61925Astro — это веб-фреймворк. До версии 5.14.2 Astro отражает значение в `X-Forwarded-Host` в выводе при использовании `Astro.url` без какой-либо проверки. Веб-серверы, такие как nginx, обычно маршрутизируют запросы через заголовок «Хост» и пересылают другие заголовки запросов. Как таковой, как вредоносный запрос может быть отправлен как с заголовком "Host` "Host` "Host", так и с заголовком 'X-Forwarded-Host`, где значения не совпадают, а заголовок 'X-Forwarded-Host` является вредоносным. Затем Astro вернет вредоносное значение. Это может привести к тому, что любое использование значения «Astro.url` в коде» будет манипулироваться запросом. Например, если пользователь следует указаниям и использует `Astro.url` для канонической ссылки, канонической ссылкой можно манипулировать другим сайтом. Теоретически возможно, что значение также может быть использовано в качестве URL-адреса входа/регистрации или другого файла формы, что приведет к потенциальному перенаправлению учетных данных для входа на вредоносную сторону. Поскольку это вектор атаки по запросу, площадь поверхности будет только для злоумышленника, пока кто-то не подумает, что наличие кэширующего прокси является общей настройкой, и в этом случае любая кэшированная страница может сохранять вредоносное значение для последующих пользователей. Многие другие фреймворки имеют разрешающий список доменов для подтверждения или не имеют случая, когда заголовки отражаются, чтобы избежать таких проблем. Это может повлиять на любого, кто использует Astro в режиме динамического рендеринга по требованию за кэшинг-прокси. Версия 5.14.2 содержит исправление проблемы.
CVE-2025-58179В веб-фреймворке Astro существует уязвимость SSRF при использовании адаптера Cloudflare. При конфигурации output: 'server' и использовании imageService: 'compile' конечная точка оптимизации изображений не проверяет получаемые URL, позволяя обслуживать контент с неавторизованных доменов. Источники: https://github.com/withastro/astro/security/advisories/GHSA-qpr4-c339-7vq8 [1], https://github.com/withastro/astro/commit/9ecf3598e2b29dd74614328fde3047ea90e67252 [2]
Исправление включает добавление проверки isRemoteAllowed для проверки URL на соответствие конфигурации пользователя [2].
Источники:
- [1] https://github.com/withastro/astro/security/advisories/GHSA-qpr4-c339-7vq8
- [2] https://github.com/withastro/astro/commit/9ecf3598e2b29dd74614328fde3047ea90e67252
CVE-2024-56140Astro — это веб-фреймворк для веб-сайтов, управляемых контентом. В затронутых версиях ошибка в промежуточном программном обеспечении защиты CSRF Astro позволяет запросам обходить проверки CSRF. Когда для параметра конфигурации `security.checkOrigin` установлено значение `true`, промежуточное программное обеспечение Astro выполнит проверку CSRF. Однако существует уязвимость, которая может обойти эту защиту. Параметр, разделенный точкой с запятой, разрешен после типа в `Content-Type`. Веб-браузеры будут рассматривать `Content-Type`, например `application/x-www-form-urlencoded; abc`, как `простой запрос` и не будут выполнять предварительную проверку. В этом случае CSRF не блокируется, как ожидалось. Кроме того, заголовок `Content-Type` не является обязательным для запроса. Эта проблема была решена в версии 4.16.17, и всем пользователям рекомендуется обновиться. Известных обходных путей для этой уязвимости нет.
CVE-2026-41067Astro — это веб-фреймворк. До 6.1.6 функция 3scriptVars в конвейере рендеринга на стороне сервера Astro использует чувствительный к случаю regex /<\/script>/g для дезинфекции значений, вводимых встроенные теги <script> через директиву «Определить:вары». HTML-парсеры закрывают элементы <script> корпус-чувство, а также принимают whitespace или / перед закрытием >, позволяя злоумышленнику обходить дезинфекцию с помощью полезных нагрузок, таких как </Script>, </script > или </script/> и вводить произвольный HTML/JavaScript. Эта уязвимость зафиксирована в пункте 6.1.6.
CVE-2025-65019Astro — это веб-фреймворк. До версии 5.15.9, при использовании адаптера облака Astro (@astrojs/cloudflare) с выводом: 'server', конечная точка оптимизации изображения (/_image) содержит критическую уязвимость в функции isRemoteAllowed(), которая безоговорочно позволяет данные: URL-адреса протоколов. Это позволяет совершать атаки по кросс-сайту (XSS) с помощью вредоносных полезных нагрузок SVG, обходя ограничения доменов и защиту политики безопасности контента. Этот вопрос был исправлен в версии 5.15.9.
CVE-2025-64745Astro — это веб-фреймворк. Начиная с версии 5.2.0 и до версии 5.15.6, уязвимость отражательная кросс-сайтная сценарная (XSS) существует на страницах ошибок сервера разработки Astro при использовании параметра «TreilingSlash». Злоумышленник может вводить произвольный код JavaScript, который выполняется в контексте браузера жертвы, создав вредоносный URL. Хотя эта уязвимость влияет только на сервер разработки, а не на производство, она может быть использована для компрометации движущихся сред разработчиков с помощью социальной инженерии или вредоносных ссылок. Версия 5.15.6 устраняет проблему.
CVE-2025-55207Astro - это веб-фреймворк для сайтов, управляемых контентом. После CVE-2025-54793 все еще есть уязвимость Open Redirect в подмножестве сценариев развертывания Astro до версии 9.4.1. Астро 5.12.8 обратился к CVE-2025-54793, где https://example.com//astro.build/press перенаправит на внешнее происхождение //astro.build/press. Однако с адаптером развертывания Node в автономном режиме и прицепомSlash, настроенным на «всегда» в конфигурации Astro, https://example.com//astro.build/press по-прежнему перенаправляет на //astro.build/press. Это влияет на любого пользователя, который нажимает на специально созданную ссылку, указывающая на затронутый домен. Поскольку домен кажется законным, жертвы могут быть обмануты, чтобы доверять перенаправленной странице, что приводит к возможной краже учетных данных, распространению вредоносных программ или другим атакам, связанным с фишингом. Эта проблема была исправлена в версии 9.4.1.
CVE-2025-54793Astro - это веб-фреймворк для создания сайтов, ориентированных на контент. В версиях с 5.2.0 по 5.12.7 существует уязвимость открытого перенаправления в логике перенаправления слэша при обработке путей с двойными слэшами. Это позволяет злоумышленнику перенаправлять пользователей на произвольные внешние домены, создавая URL-адреса типа https://mydomain.com//malicious-site.com/. Это увеличивает риск фишинга и других атак социальной инженерии. Данная проблема затрагивает сайты, использующие рендеринг на стороне сервера (SSR) с адаптерами Node или Cloudflare. Она не затрагивает статические сайты или сайты, развернутые на Netlify или Vercel. Проблема исправлена в версии 5.12.8. В качестве обходного пути на сетевом уровне можно блокировать ответы о перенаправлении с значением заголовка Location, начинающимся с `//`. Более подробная информация представлена в источнике [1].
Источники:
- [1] https://github.com/withastro/astro/security/advisories/GHSA-cq8c-xv66-36gw
- [2] https://github.com/withastro/astro/commit/0567fb7b50c0c452be387dd7c7264b96bedab48f
CVE-2025-64764Astro — это веб-фреймворк. До версии 5.15.8 отраженная уязвимость XSS присутствует, когда в целевом приложении используется функция серверных островов, независимо от того, что было задумано в шаблоне(ах) компонента. Этот вопрос был исправлен в версии 5.15.8.
CVE-2024-47885Веб-фреймворк Astro имеет гаджет DOM Clobbering в клиентском маршрутизаторе, начиная с версии 3.0.0 и до версии 4.16.1. Это может привести к межсайтовому скриптингу (XSS) на веб-сайтах, использующих клиентскую маршрутизацию Astro и имеющих *сохраненные* HTML-элементы без скриптов, контролируемые злоумышленником (например, теги `iframe` с непроверенными атрибутами `name`) на целевых страницах. Эта уязвимость может привести к атакам межсайтового скриптинга (XSS) на веб-сайтах, созданных с помощью Astro, которые включают клиентскую маршрутизацию с помощью `ViewTransitions` и хранят вставленные пользователем HTML-теги без скриптов без надлежащей проверки атрибутов `name` на странице. Версия 4.16.1 содержит исправление для этой проблемы.
CVE-2026-41322@astrojs/node позволяет Astro развернуть ваш сайт SSR для целей Node. До 10,0,5, запрос статических js/css ресурсов от пути _astro с неправильным / неправильно сформированным заголовком if-match возвращает ошибку 500 с однолетним сроком действия кэша вместо 412 в некоторых случаях. Это приводит к тому, что все последующие запросы к этому файлу, независимо от заголовка, если матча, будет подан ошибка 5xx вместо файла до истечения срока действия кэша. Эта уязвимость фиксируется в 10.0.5.
CVE-2025-64757Astro — это веб-фреймворк. До версии 5.14.3 на сервере разработки акрофтя была выявлена уязвимость, которая позволяет получить произвольный доступ к локальному считыванию файлов через конечную точку оптимизации изображения. Уязвимость влияет на среды разработки Astro и позволяет удаленным злоумышленникам считывать любой файл изображения, доступный для процесса Node.js в системе хоста. Этот вопрос был исправлен в версии 5.14.3.
CVE-2026-45028Astro — это веб-фреймворк. Астро-версии до 6.1.10 использовали шифрование AES-GCM для защиты конфиденциальности и целостности параметров серверного островного реквизита и слотов, но не связывали шифротекст с предполагаемым компонентом или типом параметров. Злоумышленник может воспроизводить зашифрованное значение одного компонента (p) в качестве значения слотов (s) другого компонента или наоборот. Поскольку слоты содержат сырой неизбежный HTML, в то время как реквизит может содержать значения, контролируемые пользователем, это может привести к XSS в приложениях. Это происходит, когда приложение использует серверные острова, два разных компонента острова сервера имеют одно и то же имя ключа для реквизита и слота, а злоумышленник имеет полный контроль над значением перекрывающего реквизита (требуется динамически отображаемая страница). Эта уязвимость зафиксирована в пункте 6.1.10.
CVE-2026-33769Astro – это веб-фреймворк. От версии 2.10.10 до версии 5.18.1, эта проблема касается обеспечения соблюдения пути удаленных Установок Astro для удаленных URL-адресов, используемых серверными фетчерами, такими как конечная точка оптимизации изображения. Логика соответствия пути для /* подстановочных знаков не заякорена, поэтому имя, которое содержит разрешенный префикс позже на пути, все еще может совпадать. В результате злоумышленник может получить дорожки за пределами предполагаемого допустимого префикса на разрешенном хосте. Этот вопрос был исправлен в версии 5.18.1.