HTML-entiteiten
Escape opmaaktekens zodat ze als tekst worden weergegeven, of decodeer ze weer terug.
- Draait in je browser — je tekst wordt nergens naartoe gestuurd
- Geen aanmelding, geen quota, gratis te gebruiken zo vaak je wilt
Hoe het werkt
Onvertrouwde tekst zonder escaping in een webpagina zetten is de manier waarop cross-site scripting ontstaat. Coderen zet de tekens die een browser als opmaak behandelt om in entiteiten, zodat ze worden weergegeven in plaats van uitgevoerd.
Wat wordt gecodeerd
De vijf tekens die ertoe doen: ampersand, kleiner-dan, groter-dan, dubbel aanhalingsteken en apostrof. De ampersand moet als eerste worden gecodeerd, anders wordt alles wat erna komt dubbel gecodeerd.
Decoderen
Decoderen zet benoemde en numerieke entiteiten terug naar tekens met de parser van de browser in plaats van een opzoektabel, zodat de volledige set correct wordt verwerkt.
Precies wat er wordt gecodeerd
Coderen vervangt vijf tekens: & wordt &, < wordt <, > wordt >, " wordt " en ' wordt '. Dat is genoeg om tekst veilig weer te geven in HTML en in aanhalingstekens in attributen. Letters met accenten en emoji blijven ongewijzigd, omdat UTF-8-pagina's ze rechtstreeks weergeven.
Decoderen
Decoderen begrijpt elke benoemde entiteit die HTML kent, zoals é, — en , plus numerieke entiteiten in decimaal of hex (é, é), omdat de HTML-parser van je eigen browser wordt gebruikt.
HTML-entiteiten: veelgestelde vragen
Maakt dit mijn site veilig tegen XSS?
Uitvoer escapen is een noodzakelijk onderdeel, maar veiligheid hangt af van escapen in de juiste context. Gebruik de escapefunctie van je framework als je er een hebt.
Welke tekens worden gecodeerd?
Ampersand, kleiner-dan, groter-dan, dubbele aanhalingsteken en apostrof: de tekens die een browser anders als opmaak zou lezen.
Wordt mijn tekst geüpload?
Nee. Het coderen gebeurt op de pagina.