Las entidades de texto en HTML no pueden hacer nada interesante, y el contenido entre las etiquetas span se interpreta como texto. Para hacer algo interesante, deberá inyectar una nueva entidad (que se realiza utilizando <
y >
), o necesitará que su entrada se inyecte en una ubicación sin texto (como los parámetros de una entidad, o dentro de un bloque <script>
, o similar). Si su entrada no se refleja en ningún otro lugar, y <
y >
siempre están codificados, entonces no puede explotar la página a través de XSS.
Sin embargo, puede haber formas de engañar al servidor para que envíe <
y% co_de sin codificar sin que eso signifique. Una forma que he visto es enviar caracteres Unicode que no son >
pero que el servidor podría asignar a esos caracteres ASCII antes de reflejarlos en la salida. Considere caracteres como <>
, ˂˃
, ‹›
, ≤≥
, todos los cuales pueden asignarse a <>
por un servidor y luego no se codifican como <>
. No hay garantías, pero sucede.