Ad

CVE-2026-59729

MEDIUM CVSS 4.0: 5,1 EPSS 0.32%
Обновлено 28 июля 2026
Astro
Параметр Значение
CVSS 5,1 (MEDIUM)
Уязвимые версии до 7.0.6
Устранено в версии 7.0.6
Тип уязвимости CWE-79 (Межсайтовый скриптинг (XSS))
Поставщик Astro
Публичный эксплойт Нет

Astro — это веб-фреймворк для веб-сайтов, ориентированных на контент. Версии до 7.0.6 уязвимы для XSS из-за неэкранированных имен атрибутов расширения в renderHTMLElement. Исправление для CVE-2026-54298 (GHSA-jrpj-wcv7-9fh9) добавляло защиту INVALID_ATTR_NAME_CHAR в addAttribute(), чтобы имена атрибутов распространения, содержащие "' >/= или пробелы, удалялись.

Второй путь рендеринга атрибута, renderHTMLElement() в packages/astro/src/runtime/server/render/dom.ts, имеет свой собственный встроенный атрибут цикл, который не проходит через addAttribute() и не обновлялся. Он интерполирует имя атрибута без экранирования и экранирует только значение, поэтому ненадежные ключи свойств, распространяемые на компонент собственного подкласса HTMLElement, все равно могут выйти из контекста атрибута. Эта проблема была исправлена в версии 7.0.6.

Показать оригинальное описание (EN)

Astro is a web framework for content-driven websites. Versions prior to 7.0.6 are vulnerable to XSS through unescaped spread attribute names in renderHTMLElement. The fix for CVE-2026-54298 (GHSA-jrpj-wcv7-9fh9) added an INVALID_ATTR_NAME_CHAR guard to addAttribute() so that spread-prop attribute names containing "' >/= or whitespace are dropped. A second attribute-rendering path, renderHTMLElement() in packages/astro/src/runtime/server/render/dom.ts, has its own inline attribute loop that does not go through addAttribute() and was not updated. It interpolates the attribute name unescaped and only escapes the value, so untrusted prop keys spread onto a native-HTMLElement-subclass component can still break out of the attribute context. This issue has been fixed in version 7.0.6.

Характеристики атаки

Способ атаки
По сети
Атака возможна удалённо
Сложность
Низкая
Легко эксплуатировать
Условия для атаки
Не требуются
Нет дополнительных условий
Нужны права
Не требуются
Права не нужны
Участие пользователя
Активное
Нужно действие пользователя

Последствия

Конфиденциальность
Нет
Нет утечки данных
Целостность
Нет
Нет модификации данных
Доступность
Нет
Нет нарушения работы

Строка CVSS v4.0