Es jQuery.val () suficiente para prevenir XSS

3

¿Está obteniendo el valor de textarea / input con la función jQuery .val() XSS-proof?

<html>
    <textarea id="t1"></textarea>
    <script> 
        var toBeDisplayed = $('#t1').val();
        $('#elem').html(toBeDisplayed);
    </script>
</html>
    
pregunta eversor 28.02.2014 - 13:56
fuente

2 respuestas

5

Como mencionó Gumbo en su comentario, no importa lo que lea, pero sí importa lo que muestre después del hecho. Para simplemente responder a su pregunta, no. jQuery's .val() no tiene ningún filtro que lo proteja de XSS. Quizás podría tomar el valor en var toBeDisplayed y luego realizar su propio filtrado antes de que se muestre nuevamente.

    
respondido por el Jason Higgins 28.02.2014 - 18:35
fuente
0

Por supuesto, siempre es más seguro realizar la desinfección en el lado del servidor antes de mostrar la entrada al usuario. Se puede hacer más rápida y fácilmente en el navegador, pero cualquier código que se ejecute en el navegador no debe considerarse de total confianza; Podría ser modificado o deshabilitado.

    
respondido por el Luke Sheppard 02.03.2014 - 19:38
fuente

Lea otras preguntas en las etiquetas