HTML Escape/Unescape

Tool für HTML‑Entitäten Escape/Unescape zur Reduzierung des XSS‑Risikos

Nutzungsanleitung

🚀 Schnellstart

  • Geben Sie Inhalt (HTML oder bereits escapten Text) in das Textfeld ein
  • Wählen Sie Kodieren oder Dekodieren
  • Klicken Sie auf die Schaltfläche – das Ergebnis erscheint im selben Textfeld
  • Klicken Sie auf Kopieren, um das Ergebnis zu übernehmen

📌 Häufige Anwendungsfälle

  • Benutzerkommentare: Escapen von benutzergenerierten Kommentaren zur Verhinderung von XSS-Angriffen
  • Blog-Beiträge: Anzeige von HTML-Code-Beispielen in Artikeln
  • Forum-Beiträge: Sichere Anzeige von benutzergenerierten Inhalten
  • Chat-Nachrichten: Verhinderung der Verbreitung von bösartigem Code über Chat-Funktionen
  • Formulardaten: Verarbeitung und Anzeige von Formularübermittlungsdaten
  • Code-Anzeige: Anzeige von HTML/JavaScript-Code-Snippets auf Webseiten

🧭 Anwendungstipps

  • Kontextbewusstes Escaping: Wählen Sie die geeignete Escape-Strategie basierend auf dem Ausgabeort
  • Serverseitige Verarbeitung: Kritisches Sicherheits-Escaping sollte serverseitig erfolgen
  • Doppelte Überprüfung: Überprüfen Sie die Ausgabe nach dem Escaping, um sicherzustellen, dass nichts übersehen wurde
  • Bibliotheken verwenden: Produktionsumgebungen sollten ausgereifte Escape-Bibliotheken anstelle manueller Verarbeitung verwenden
  • Vorschau-Prüfung: Vorschau der tatsächlichen Anzeige in der Browser-Konsole nach dem Escaping

🎛️ Escape‑Regeln und Entitäten

  • Häufige Zeichen: < > & " ' (Schrägstrich / ist i.d.R. nicht erforderlich; kontextabhängig)
  • Entity-Format: Sonderzeichen werden in das Format &entity; oder &#code; konvertiert, z.B. < wird zu < oder <
  • Attribut-Escape: Anführungszeichen werden zu " konvertiert, schützt HTML-Attributwerte
  • Skript-Schutz: <script>-Tags werden automatisch escaped, um JavaScript-Injection zu verhindern
  • Schreibe <div> als &lt;div&gt;, damit der Browser es nicht als Tag interpretiert

⚠️ Einschränkungen & Kompatibilität

  • Kein Sanitizer: entfernt keine Skripte/Ereignisse/unsicheren Protokolle; mit Inhalts‑Sanitization kombinieren
  • Unvollständiger Schutz: Escaping allein kann nicht alle XSS verhindern, kombinieren Sie mit anderen Sicherheitsmaßnahmen
  • Kontextabhängig: Verschiedene Orte erfordern unterschiedliche Escape-Strategien (HTML-Inhalt, Attribute, JavaScript, CSS)
  • Um die Seite flüssig zu halten, werden sehr große Texte ggf. vereinfacht verarbeitet. Bitte ggf. in Teile aufteilen

🔒 Datenschutz & Sicherheit

  • Die gesamte Verarbeitung erfolgt in Ihrem Browser; Daten verlassen Ihr Gerät nicht

❓ FAQ

Was ist ein XSS-Angriff?

XSS (Cross-Site Scripting) ist, wenn Angreifer bösartige Skripte in Webseiten einschleusen, um Benutzerinformationen zu stehlen oder bösartige Operationen durchzuführen. HTML-Escaping ist eine grundlegende Verteidigung gegen XSS

Wann ist HTML-Escaping erforderlich?

Escaping ist erforderlich, wenn Benutzereingaben angezeigt werden, einschließlich Kommentare, Nachrichten, Formulardaten usw. Jeder Inhalt, der HTML-Tags enthalten könnte, muss escaped werden

Was ist der Unterschied zwischen &amp;lt; und &amp;#60;?

Beide stehen für < (Kleiner‑als‑Zeichen). &amp;lt; ist eine benannte Entität (lt = less‑than), &amp;#60;/&amp;#x3C; sind numerische/hexadezimale Entitäten. In modernem HTML verhalten sie sich gleich: &amp;lt; ist lesbarer; &amp;#60;/&amp;#x3C; nutzen, wenn benannte Entitäten nicht unterstützt werden oder für beliebige Zeichen/über Markup‑Sprachen hinweg. Das abschließende Semikolon beibehalten (z. B. &amp;lt;); ohne Semikolon kann der Parser mit folgenden Buchstaben „verkleben“, z. B. wird „&amp;notin“ zu „&amp;not;“+„in“ → „¬in“

Verhindert Escaping alle JavaScript-Injections?

Nein. HTML-Escaping funktioniert nur im HTML-Kontext. JavaScript-, CSS- und URL-Kontexte erfordern unterschiedliche Escape-Methoden

Warum sehe ich manchmal &amp;amp;lt; doppeltes Escaping?

Dies geschieht, wenn Inhalt zweimal escaped wird. Zuerst wird &lt; zu &amp;lt;, dann wird &amp; zu &amp;amp; escaped, was zu &amp;amp;lt; führt. Vermeiden Sie wiederholtes Escaping

Wie kann ich einige sichere HTML-Tags zulassen?

Nutzen Sie Sanitization statt reinem Escaping: erlaubnisbasierte Liste sicherer Tags/Attribute und Protokollfilter. Behalten Sie nur p/br/ul/ol/li/a/strong/em/code/pre/blockquote/h1–h3; bei a nur href/title/target (Protokolle http/https/mailto/tel), bei img nur src/alt; entfernen Sie style und alle on*‑Events. Empfohlen DOMPurify/sanitize‑html; möglichst serverseitig sanitisieren; nie ungeprüfte Inhalte in innerHTML/dangerouslySetInnerHTML schreiben; für reinen Text textContent verwenden

HTML Escape/Unescape - Online HTML‑Entitäten‑Tool - CrateX.app