# Wyłączenie XSLT w Microsoft Edge: nowe polityki i ryzyka bezpieczeństwa
Microsoft wprowadza politykę wyłączania XSLT w Edge w wersji 147, opublikowanej 9 kwietnia 2026 roku. Funkcja XSLTEnabled pozwala administratorom zarządzać dostępnością przestarzałego języka transformacji XML, minimalizując związane z nim luki bezpieczeństwa. To krok w kierunku całkowitego porzucenia, analogiczny do planów Chromium, WebKit i Gecko.
Co to jest XSLT i dlaczego jest przestarzały
XSLT (Extensible Stylesheet Language Transformations) — standard W3C z 1999 roku do transformacji XML w HTML lub inne formaty. Nowsze wersje języka nie zyskały szerokiego wsparcia w przeglądarkach. Statystyki użycia: zaledwie 0,02% stron internetowych wykorzystuje XSLT, a transformacje — mniej niż 0,001%.
Współczesne alternatywy oferują większą elastyczność:
- Frameworki JavaScript (React, Vue.js) do dynamicznego przetwarzania danych.
- Web Components i Shadow DOM do strukturalnych transformacji.
- Server-side rendering z silnikami szablonów (Handlebars, Pug).
Te narzędzia integrują się z interfejsami REST/GraphQL API, unikając parserów XML po stronie klienta.
Polityka XSLTEnabled w Edge v147
W aktualizacji bezpieczeństwa Edge 147 dodano grupę polityk do kontroli XSLT:
- XSLTEnabled: globalne włączanie/wyłączanie procesora XSLT.
- XSLTBaseURL: bazowy URL dla stylów (ograniczony do scenariuszy korporacyjnych).
- XSLTSecurityManager: zarządzanie dostępem do DOM i zasobów sieciowych.
Korporacyjnym klientom zaleca się przetestowanie wyłączenia: ocenić wpływ na aplikacje legacy, monitorować logi błędów parsowania. Microsoft podkreśla ryzyka cyberbezpieczeństwa — libxslt zawiera niezałatane luki z powodu braku aktywnego utrzymania.
Polityka jest wdrażana poprzez rejestr Windows (HKLM\SOFTWARE\Policies\Microsoft\Edge\XSLTEnabled) lub polityki grupowe w Active Directory. Składnia dla rejestru:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Edge]
"XSLTEnabled"=dword:00000000
Po ponownym uruchomieniu Edge transformacje są blokowane z błędem NS_ERROR_XSLT_NOT_AVAILABLE.
Chronologia wyłączeń w przeglądarkach
- Edge (Chromium): polityka w v147 (kwiecień 2026), całkowite usunięcie — tuż za Chromium.
- Chrome: testowanie w 146 (marzec 2026), wyłączenie w 176 (sierpień 2027).
- Safari (WebKit): plany wyłączenia w 2027, fokus na SwiftUI dla zadań XML-podobnych.
- Firefox (Gecko): analogiczna polityka w opracowaniu, priorytet WebAssembly dla transformacji.
Deweloperzy Chromium koordynują migrację: flaga chrome://flags/#enable-xslt jest usuwana etapami.
Ryzyka bezpieczeństwa i migracja
Libxslt, podstawowa biblioteka XSLT, jest podatna na ataki typu XXE (XML External Entity), w których atakujący może odczytywać lokalne pliki lub przeprowadzać SSRF. Brak patchy czyni użycie ryzykownym w 2026 roku.
Strategia migracji dla deweloperów middle/senior:
- Audyt kodu: grep -r 'xslt\.' lub analiza śladów stosu.
- Zamiana na XPath + DOMParser w JS.
- Testowanie: Puppeteer do symulacji wyłączonego XSLT.
- Fallback: detekcja funkcji z Modernizr lub natywnym
document.implementation.hasFeature('XSLT', '1.0').
Przykład migracji prostego 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 ważne
- Polityka XSLTEnabled w Edge 147 pozwala na kontrolowane wyłączenie XSLT od kwietnia 2026.
- Luki libxslt (XXE, SSRF) czynią technologię niebezpieczną bez patchy.
- Migracja na transformacje JS lub szablony serwerowe — standard na 2027 rok.
- Wszystkie silniki (Chromium, WebKit, Gecko) synchronizują wyłączenie do 2027.
- Korporacyjnym administratorom: testujcie przez GPO, monitorujcie aplikacje legacy XML.
— Editorial Team
Brak komentarzy.