HTML – kodowanie/odkodowywanie
Escapuj znaki specjalne HTML do encji albo lokalnie odkoduj nazwane, dziesiętne i szesnastkowe odwołania znakowe do pokazywania tagów i przykładów kodu.
Tekst wejściowy
Znaki
0 / 50,000
Szybki start
Typowe scenariusze
Komentarze użytkowników
zmień tekst, jeśli chcesz, aby komentarze były wyświetlane jako zwykły tekst w kontekście treści HTML
Artykuły/blog
bezpieczne wyświetlanie przykładów kodu HTML w treści.
Posty na forum
wyświetlaj tekst wygenerowany przez użytkowników, nie pozwalając, aby tagi były renderowane jako znaczniki
Wiadomości czatu
renderuj wklejone znaczniki jako tekst, zanim dotrą do obszaru zawartości HTML
Dane formularza
sprawdź i skopiuj wartości ucieczki przed wyświetleniem przesłanego tekstu
Prezentacja kodu
wyświetlanie fragmentów HTML/JavaScript na stronie.
Zasady kodowania i encje
Ucieczka a granice sanityzacji
Wskazówki użycia
Ograniczenia i kompatybilność
Prywatność i bezpieczeństwo
Najczęstsze pytania
XSS (Cross-Site Scripting) ma miejsce, gdy niezaufana treść jest interpretowana jako skrypt lub znacznik na stronie. Ucieczka HTML pomaga w kontekstach treści HTML, ale jest to tylko jedna część zapobiegania XSS.
Użyj zmiany znaczenia HTML, gdy niezaufany tekst zostanie wstawiony do treści lub kontekstu atrybutu HTML. Preferuj domyślną ucieczkę TextContent lub framework dla zwykłego tekstu i użyj innej zmiany ucieczki dla kontekstów JavaScript, CSS, URL lub JSON.
Obie formy reprezentują znak < (mniejszości). < to encja nazwana (lt = less‑than), a </< to encje numeryczne/szesnastkowe. W nowoczesnym HTML działają tak samo: dla czytelności preferuj <, a w sytuacjach, gdzie nazwy nie są wspierane albo trzeba kodować dowolne znaki/między językami znaczników – użyj form numerycznych. Pamiętaj o średniku na końcu encji (np. <); jego brak może spowodować błędną interpretację z sąsiednimi znakami.
Nie. Ucieczka HTML działa tylko w kontekstach encji HTML. Ciągi JavaScript, CSS, adresy URL, JSON i bogate HTML wymagają innej obsługi.
To efekt podwójnego kodowania. Najpierw < zamienia się w <, a potem & w &amp;, co daje &amp;lt;. Należy unikać wielokrotnego kodowania tej samej treści.
Używaj środków odkażających, a nie tego narzędzia ucieczki. Narzędzie dezynfekujące może utworzyć listę dozwolonych bezpiecznych tagów i atrybutów, filtrować protokoły oraz usuwać zdarzenia lub style. Używaj bibliotek takich jak DOM Purify lub sanitize-html, oczyszczaj serwer, jeśli to możliwe, i używaj TextContent dla zwykłego tekstu.