¿Es posible XSS si inserto datos no confiables en un atributo de HTML citado y el código HTML codifica el "signo"?

0

Si inserto datos que no son de confianza en un atributo HTML como este:

<img src="http://www.mydomain/<%untrusted_data%>">

ysicodificoHTMLelsigno" en los datos que no son de confianza, ¿este código en particular está completamente protegido contra XSS? Sé que debo tener cuidado de no permitir que el usuario inserte toda la URL porque podrían insertar javascript:alert() .

    
pregunta pineappleman 13.08.2015 - 17:57
fuente

1 respuesta

3

Sí, si el atributo está entre comillas dobles y usted está codificando el carácter de comillas dobles, entonces no debería ser posible escapar del atributo citado.

Sin embargo, también codificaría el símbolo & porque se puede usar para iniciar un carácter codificado en sí mismo.

Los estados de especificaciones de HTML5 :

  

Se especifica un valor de atributo entre comillas dobles al proporcionar el   siguientes partes exactamente en el siguiente orden:

     
  • un nombre de atributo
  •   
  • cero o más caracteres de espacio
  •   
  • un solo "=" carácter   
  • cero o más caracteres de espacio
  •   
  • un solo "" "carácter
  •   
  • un atributo   valor
  •   
  • un "" "carácter
  •   

Además de los requisitos generales para   valores de atributo, un valor de atributo entre comillas dobles tiene lo siguiente   restricción:

     

no debe contener ningún "" "carácter literal

    
respondido por el SilverlightFox 13.08.2015 - 18:06
fuente

Lea otras preguntas en las etiquetas