ADVERTENTIE SLUITEN

HTML escapen/unescapen

HTML escapen/unescapen

Ondersteunt HTML-entiteit escaping en unescaping, verwerkt speciale tekens en tags. Detecteert automatisch benoemde en numerieke entiteitsformaten, voorkomt XSS-aanvallen, geschikt voor het weergeven van gebruikersinvoer, codevoorbeelden en veilige inhoudsverwerking.

Gebruiksinstructies

🚀 Snelstart

  • Voer HTML of reeds ge-escape tekst in het tekstvak in.
  • Kies de modus "Coderen" of "Decoderen".
  • Klik op de knop om te converteren; het resultaat verschijnt in hetzelfde tekstvak.
  • Gebruik "Kopiëren" om de uitvoer direct voor code of documentatie te gebruiken.

📌 Veelvoorkomende scenario's

  • Gebruikersreacties: escapen van ingevoerde tekst om XSS-aanvallen te voorkomen.
  • Blogartikelen: HTML-codevoorbeelden veilig tonen in content.
  • Forumberichten: user-generated content veilig weergeven.
  • Chatberichten: voorkomen dat kwaadwillige code via chat wordt uitgevoerd.
  • Formulierdata: gebruikersinvoer tonen zonder dat deze als HTML wordt geïnterpreteerd.
  • Codeweergave: HTML/JavaScript-snippets tonen op een pagina zonder uitvoer.

🎛️ Escape-regels & entiteiten

  • Typisch patroon: < → &lt;, > → &gt;, & → &amp;, \" → &quot;, ' → &#39;
  • Welke tekens meestal worden geescaped: < > & \" ' (de schuine streep / is meestal niet nodig; afhankelijk van de context).
  • Tags escapen: schrijf <div> als &lt;div&gt; zodat de browser het niet als echte tag interpreteert.
  • Script-tekst tonen: als u letterlijk <script> wilt weergeven, gebruik &lt;script&gt;.
  • Attributen: gebruik &quot; (of &#34;) voor dubbele aanhalingstekens in attributen.

🧭 Gebruiksadvies

  • Contextbewuste escaping: kies de juiste escape-strategie afhankelijk van de context (HTML-body, attributen, JS, CSS).
  • Server-side verwerking: kritieke beveiligingsescaping hoort idealiter ook op de server te gebeuren.
  • Dubbel controleren: kijk na escapen naar de gegenereerde HTML om zeker te zijn dat niets is gemist.
  • Preview-check: inspecteer de geescape-tekenreeks in de browser (of DevTools) om te zien hoe deze daadwerkelijk wordt weergegeven.
  • Gebruik bibliotheken: in productie is een volwassen escape-/sanitizerbibliotheek betrouwbaarder dan handmatige verwerking.

⚠️ Beperkingen & compatibiliteit

  • Dit is geen sanitizer: scripts/on*‑events/gevaarlijke URL-schema's worden niet verwijderd; gebruik altijd een whitelist-sanitizer in de keten.
  • Contextafhankelijk: verschillende contexten (HTML, attributen, JS, CSS) vragen andere escape-regels.
  • Niet volledige bescherming: alleen escapen is geen volledige XSS-bescherming; combineer met sanitizers, CSP en inputvalidatie.
  • Grote hoeveelheden tekst kunnen de browser vertragen; verwerk lange blokken bij voorkeur in delen.

🔒 Privacy & veiligheid

  • Alle verwerking gebeurt in uw browser; gegevens verlaten uw apparaat niet.

❓ Veelgestelde vragen

Wat is een XSS-aanval?

XSS (Cross-Site Scripting) is een aanval waarbij een aanvaller kwaadaardig script in een pagina injecteert om gegevens te stelen of acties namens de gebruiker uit te voeren. HTML-escaping is een basismaatregel tegen XSS.

Wanneer moet ik HTML escapen?

Altijd wanneer u gebruikersinvoer weergeeft: reacties, formulieren, berichten, enz. Zodra tekst HTML-tags kan bevatten, moet deze worden geescaped.

Wat is het verschil tussen &amp;lt; en &amp;#60;?

Beide stellen het teken < voor. &amp;lt; is een benoemde entiteit (lt = less‑than), &amp;#60;/&amp;#x3C; zijn decimale/hex-entiteiten. In moderne HTML gedragen ze zich gelijk: gebruik &amp;lt; voor leesbaarheid; gebruik &amp;#60;/&amp;#x3C; wanneer benoemde entiteiten niet worden ondersteund of u willekeurige tekens/markuptalen moet afdekken. Vergeet het afsluitende puntkomma niet, anders kan de parser entiteiten en tekst samenvoegen.

Voorkomt escapen alle JavaScript-injecties?

Nee. HTML-escaping is alleen correct in HTML-context. In JavaScript-, CSS- of URL-contexten gelden andere escape‑regels; gebruik per context de juiste strategie.

Waarom zie ik soms &amp;amp;lt; (dubbel geescaped)?

Dit gebeurt als inhoud twee keer is geescaped. Eerst wordt < → &amp;lt;, daarna wordt & opnieuw geescaped tot &amp;amp;, waardoor &amp;amp;lt; ontstaat. Vermijd herhaald escapen op dezelfde bron.

Hoe kan ik bepaalde veilige HTML‑tags toestaan?

Gebruik een sanitizer op basis van een allowlist: definieer welke tags/attributen zijn toegestaan en filter de rest weg. Deze tool is vooral bedoeld voor expliciete escaperingsstappen, niet voor volledige HTML-schoonmaak.