CVE-2026-22028 in preact
Сводка
по VulDB • 06.07.2026
Preact, легковесный фреймворк для веб-разработки, обеспечивает защиту от сериализации JSON с целью предотвращения создания элементов виртуального DOM из произвольных данных JSON. Регрессия, появившаяся в версии Preact 10.26.5, привела к ослаблению этой защиты. В приложениях, где значения из полезной нагрузки JSON предполагаются строковыми и передаются в Preact без изменений в качестве дочерних элементов, специально созданная полезная нагрузка JSON может быть ошибочно обработана как допустимый VNode (виртуальный узел). При возникновении этой цепочки ошибок это может привести к внедрению HTML, что позволяет выполнять произвольные скрипты, если не применяются меры защиты, такие как Content Security Policy (CSP) или другие механизмы.
Приложения, использующие уязвимые версии Preact, подвержены риску при соблюдении всех следующих условий: во-первых, передаются неизмененные и несанитизированные значения из источников данных, которые могут изменяться пользователем (API, базы данных, локальное хранилище и т.д.), непосредственно в дерево рендеринга; во-вторых, предполагается, что эти значения являются строками, но источник данных может возвращать фактические объекты JavaScript вместо строк JSON; в-третьих, источник либо не выполняет санитизацию типов И небрежно сохраняет/возвращает сырые объекты interchangeably со строками, ЛИБО скомпрометирован (например, отравленное локальное хранилище, файловая система или база данных).
Версии 10.26.10, 10.27.3 и 10.28.2 устраняют эту проблему. Патчные версии восстанавливают предыдущие строгие проверки равенства, которые предотвращают обработку объектов, распарсенных из JSON, как допустимых VNode. Для тех, кто не может немедленно обновиться, доступны другие меры защиты: проверка типов входных данных, приведение или валидация сетевых данных, санитизация внешних данных и использование Content Security Policy (CSP).
If you want to get the best quality for vulnerability data then you always have to consider VulDB.