Una aplicación web toma la entrada del usuario y muestra los datos, sin ningún tipo de escape o codificación, en etiquetas div o p. Entonces, si proporciono <script>alert(1)</script>
como entrada, la fuente se vería así:
<div>
<p><script>alert(1)</script></p>
</div>
A partir de esto, asumo que la aplicación web es vulnerable y que el script se ejecutará. Ese suele ser el caso, pero he visto algunas situaciones (no puedo proporcionar ningún ejemplo en este momento, desafortunadamente) donde no es así. La carga útil no se ejecuta aunque se refleje en la página.
¿Qué explicaciones podría haber para este comportamiento? ¿Hay alguna otra forma de prevención XSS que impida que se ejecuten los scripts no escapados?