¿Responder a mi inyección html?

1

Estoy practicando inyección de HTML en el sitio web de mis amigos (él sabe que estoy practicando). Así que encontré una vulnerabilidad si escribo <!----> en el cuadro de búsqueda, el nombre de usuario o la contraseña del sitio web lo ignora. y practiqué algunas etiquetas en el cuadro de búsqueda como <script>, <styles>, <link> e ignoré el sitio web (o no sé qué hace con ellas).

Así que escribí esto en el cuadro de búsqueda <script src=[myip]/tmp.js></script> y cuando hice esto como consulta dio el resultado Error: Please enter a query to search. y en ese archivo tmp.js había un simple alert('hey'); pero el sitio web no apareció hey .

Así que probé otras inyecciones de diferentes sitios web y obtuve estas como salida (todo en el cuadro de búsqueda)

INPUT:    <INPUT TYPE="IMAGE" SRC="javascript:alert('XSS');">
OUTPUT:   Results for "<input type="image" src="denied:javascript:alert('XSS');">"

2)

INPUT:   "<xml ID=I><X><C><![CDATA[<IMG SRC=""javas]]><![CDATA[cript:alert('XSS');"">]]>"
OUTPUT:  Results for """"

3)

INPUT:   "<xml SRC=""xsstest.xml"" ID=I></xml><SPAN DATASRC=#I DATAFLD=C DATAFORMATAS=HTML></SPAN>"
OUTPUT:   Results for ""<span></span>""

Pregunta: ¿el sitio web es vulnerable? ¿Puedo inyectar javascript o puedo ingresar al backend de alguna manera? ¿O debería inyectar algo más? (el sitio web usa PHP como backend)

    
pregunta user5954246 21.02.2017 - 08:45
fuente

1 respuesta

1
  

Results for ""<span></span>""

Si ve esto en la página renderizada, la página no es vulnerable a XSS, porque los caracteres < y > se escapan correctamente. La fuente se vería así:

  

Results for ""&lt;span&gt;&lt;/span&gt;""

Como puede ver, sus etiquetas HTML no terminan como etiquetas HTML en la fuente, por lo que no es posible inyectar etiquetas en el HTML.

Ahora, parece que su sitio también realiza un poco de saneamiento en la entrada. Elimina algunas etiquetas y altera la URL javascript: . Este no es un método suficiente para protegerse contra XSS. Es bastante difícil escribir un filtro XSS correctamente, y la mayoría de las veces, estos filtros se pueden omitir utilizando una combinación de etiquetas y atributos.

La forma correcta de protegerse contra XSS es codificar HTML en la salida.

    
respondido por el Sjoerd 21.02.2017 - 09:27
fuente

Lea otras preguntas en las etiquetas