Vypnutí XSLT v Microsoft Edge: nové politiky a bezpečnostní rizika
Microsoft zavádí politiku vypnutí XSLT v Edge verze 147, vydané 9. dubna 2026. Funkce XSLTEnabled umožňuje správci ovládat dostupnost zastaralého jazyka pro transformace XML a minimalizovat s ním spojené zranitelnosti. Jedná se o krok k úplnému ukončení podpory, podobný plánům Chromiumu, WebKitu a Gecka.
Co je XSLT a proč je zastaralý
XSLT (Extensible Stylesheet Language Transformations) je standard W3C z roku 1999 pro transformaci XML do HTML nebo jiných formátů. Poslední verze jazyka nedostaly širokou podporu v prohlížečích. Statistiky použití: pouze 0,02 % webových stránek využívá XSLT, transformace méně než 0,001 %.
Moderní alternativy nabízejí větší flexibilitu:
- JavaScriptové frameworky (React, Vue.js) pro dynamické zpracování dat.
- Web Components a Shadow DOM pro strukturované transformace.
- Server-side rendering s šablonátory (Handlebars, Pug).
Tyto nástroje se integrují s REST/GraphQL API a vyhýbají se klientským XML parserům.
Politika XSLTEnabled v Edge v147
V bezpečnostní aktualizaci Edge 147 byla přidána skupina politik pro kontrolu XSLT:
- XSLTEnabled: globální zapnutí/vypnutí procesoru XSLT.
- XSLTBaseURL: základní URL pro styly (omezeno na podnikové scénáře).
- XSLTSecurityManager: správa přístupu k DOM a síťovým zdrojům.
Podnikovým klientům se doporučuje otestovat vypnutí: posoudit dopad na legacy aplikace, monitorovat logy chyb parsování. Microsoft zdůrazňuje rizika kyberbezpečnosti – libxslt obsahuje neopravěnou zranitelnost kvůli absenci aktivní údržby.
Politika se aplikuje přes registr Windows (HKLM\SOFTWARE\Policies\Microsoft\Edge\XSLTEnabled) nebo skupinové politiky v Active Directory. Syntaxe pro registr:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Edge]
"XSLTEnabled"=dword:00000000
Po restartu Edge jsou transformace blokovány chybou NS_ERROR_XSLT_NOT_AVAILABLE.
Chronologie ukončení v prohlížečích
- Edge (Chromium): politika v v147 (duben 2026), úplné odstranění – krátce po Chromiumu.
- Chrome: testování v 146 (březen 2026), vypnutí v 176 (srpen 2027).
- Safari (WebKit): plány na ukončení v 2027, zaměření na SwiftUI pro XML-podobné úlohy.
- Firefox (Gecko): podobná politika ve vývoji, priorita WebAssembly pro transformace.
Vývojáři Chromium koordinují migraci: příznak chrome://flags/#enable-xslt se odstraňuje postupně.
Bezpečnostní rizika a migrace
Libxslt, základní knihovna XSLT, je zranitelná vůči útokům typu XXE (XML External Entity), kde útočník může extrahovat lokální soubory nebo provádět SSRF. Absence záplat činí použití riskantním v roce 2026.
Strategie migrace pro middle/senior vývojáře:
- Audit kódu: grep -r 'xslt\.' nebo analýza stop zásobníku.
- Nahrazení XPath + DOMParser v JS.
- Testování: Puppeteer pro simulaci vypnutého XSLT.
- Fallback: detekce funkcí s Modernizr nebo nativním
document.implementation.hasFeature('XSLT', '1.0').
Příklad migrace jednoduchého XSLT na JS:
// Legacy XSLT
const xsltProcessor = new XSLTProcessor();
xsltProcessor.importStylesheet(xsltDoc);
const result = xsltProcessor.transformToFragment(xmlDoc, document);
// Modern JS alternative
function transformXML(xmlString, xslString) {
const xmlDoc = new DOMParser().parseFromString(xmlString, 'text/xml');
const xslDoc = new DOMParser().parseFromString(xslString, 'text/xml');
const xsltProcessor = new XSLTProcessor();
xsltProcessor.importStylesheet(xslDoc);
return xsltProcessor.transformToDocument(xmlDoc);
}
Co je důležité
- Politika XSLTEnabled v Edge 147 umožňuje kontrolované vypnutí XSLT od dubna 2026.
- Zranitelnosti libxslt (XXE, SSRF) činí technologii nebezpečnou bez záplat.
- Migrace na JS transformace nebo serverové šablonátory je standard pro rok 2027.
- Všechny enginy (Chromium, WebKit, Gecko) synchronizují vypnutí do roku 2027.
- Podnikovým správcům: testujte přes GPO, monitorujte legacy XML aplikace.
— Editorial Team
Zatím žádné komentáře.