В Chromium е решено да се премахне поддръжката на XSLT и да се прекрати използването на libxslt и libxml2

Компания Google реши да премахне компоненти за поддръжка на езика за преобразуване на XML документи XSLT от браузерния двигател Chromium. Причината е желание за намаляване на нападателната повърхност чрез спиране на използването на библиотеката libxslt. Според Google, поддръжката на XSLT 1.0 създава неоправдани рискове за сигурността, тъй като в библиотеката libxslt периодично се откриват уязвимости (например, CVE-2025-7425 и CVE-2022-22834) и тя има проблеми с поддръжката (от юни до септември библиотеката остава без поддръжка и актуализация на уязвимостите). Проектите Firefox и WebKit също разглеждат възможността да премахнат поддръжката на XSLT.

Уязвимостите в XSLT стават инструмент за атаки срещу браузерите, при положение че в момента клиентската поддръжка на XSLT е ненужна и се използва изключително рядко, а задачите за преобразуване на данни в HTML могат да бъдат решени по-сигурно с помощта на JavaScript API, като DOMParser и Fetch. Според статистиката на Google, дялът на заредените уеб-страници, на които се използва XSLT, е 0.02%, а делът на страниците, на които се прилагат инструкции за обработка на XSLT, се оценява на 0.001%.

По подобен начин е решено да се спре използването на библиотеката libxml2 в Chromium, в която също редовно се откриват уязвимости и има проблеми с поддръжката. Библиотеката libxml2 се използва в Chromium за парсинг, серриалиране и проверка на данни в XML формат, а на нейна база е реализационен клас XSLTProcessor и инструкции за обработка на XSLT ("").

Поддръжката на възможности, базирани на libxslt, като API XSLTProcessor и инструкции за парсинг на XML стилови таблици, ще бъде прекратена в версия Chrome 155, насрочена за 17 ноември 2026 година. В Chrome 143, планиран за 2 декември 2025 година, в уеб конзолата ще бъде добавено предупреждение за превод на API XSLTProcessor в категориите на остарели. В Chrome 148 (пролет 2026 година) поддръжката на XSLT ще бъде по подразбиране деактивирана в канарските, Dev и Beta версии. Функционалността за парсинг на XML ще бъде запазена, но ще бъде прехвърлена на нова библиотека, написана на Rust, с оглед на осигуряване на сигурността.

Като заместител на вградената в браузера поддръжка на XSLT, се предлага да се премести обработката на XSLT на страна сървър и да се изпраща на клиентите вече формиран HTML съдържание. Обработчиците, използващи XML API за взаимодействие между клиента и сървър, предлага се замяна с приложение на формат JSON и визуализация чрез преобразуване на JSON в HTML/CSS с помощта на JavaScript. От възможните алтернативи също се отбелязва използването на JavaScript библиотеки Saxonica с реализация на XSLT, polyfill слой за осигуряване на съвместимост със стария код, предлагаща замяна на XSLTProcessor на база WASM и браузърно разширение, автоматично поставящо polyfill слой в XML документи.

Източник: opennet.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster