Compania Google a decis să elimine din motorul de browser Chromium componentele pentru suportul limbajului de transformare a documentelor XML XSLT. Motivul menționat este dorința de a reduce suprafața de atac prin renunțarea la biblioteca libxslt. Potrivit Google, suportul XSLT 1.0 creează riscuri de securitate nejustificate, deoarece biblioteca libxslt prezintă periodic vulnerabilități (de exemplu, CVE-2025-7425 și CVE-2022-22834) și are probleme de întreținere (de la iunie până în septembrie, biblioteca a rămas fără suport și fără corecturi de vulnerabilitate). Proiectele Firefox și WebKit iau, de asemenea, în considerare eliminarea suportului XSLT.
Vulnerabilitățile din XSLT devin instrumente pentru desfășurarea atacurilor asupra browserelor, în condițiile în care suportul client pentru XSLT nu este solicitat și este folosit extrem de rar, iar sarcinile de transformare a datelor în HTML pot fi rezolvate mai sigur prin API-uri JavaScript, precum DOMParser și Fetch. Statisticile Google arată că proporția paginilor web încărcate care utilizează XSLT este de 0,02%, iar proporția paginilor care aplică instrucțiuni XSLT este estimată la 0,001%.
De asemenea, s-a decis să se oprească utilizarea bibliotecii libxml2 în Chromium, în care se găsesc de asemenea reguli de vulnerabilitate și probleme de întreținere. Biblioteca libxml2 este utilizată în Chromium pentru analizarea, serializarea și validarea datelor în format XML, iar pe baza libxslt este implementată clasa XSLTProcessor și instrucțiunile de procesare XSLT ("").
Suportul pentru funcționalitățile bazate pe libxslt, cum ar fi API-ul XSLTProcessor și instrucțiunile de analiză a tabelelor de stil XML, va fi oprit în versiunea Chrome 155, programată pentru 17 noiembrie 2026. În Chrome 143, programat pentru 2 decembrie 2025, va fi adăugat un avertisment în consola web referitor la trecerea API-ului XSLTProcessor în categoria deprecate. În Chrome 148 (primăvara 2026), suportul pentru XSLT va fi dezactivat implicit în ramurile Canary, Dev și Beta. Funcționalitatea pentru analizarea XML va fi păstrată, dar va fi transferată pe o nouă bibliotecă, scrisă în limbajul Rust cu accent pe asigurarea securității.
Ca alternativă la suportul încorporat de browser pentru XSLT, se propune transferarea procesării XSLT pe partea server și trimiterea clienților de conținut HTML deja format. serverul, se propune înlocuirea cu utilizarea formatului JSON și redarea prin conversia JSON în HTML/CSS cu ajutorul JavaScript. Printre alternativele posibile se menționează utilizarea bibliotecilor JavaScript Saxonica cu implementarea XSLT, un strat polyfill pentru asigurarea compatibilității cu codul vechi, oferind o înlocuire a XSLTProcessor bazată pe WASM, și o extensie a browserului care introduce automat stratul polyfill în documentele XML.
Sursa: opennet.ro
