Pequeño ejemplo de XSS
Por: braulio | 24 Octubre 2006 | Ver comentarios |
XSS, es según la Wikipedia un tipo de vulnerabilidad surgida como consecuencia de errores de filtrado de las entradas del usuario en aplicaciones web.
Mostraré un ejemplo que creo que todos hemos hecho o seguimos haciendo hasta ahora:
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post"> </form>
Y ahora las preguntas: ¿Qué tiene de malo este código?, ¿Es vulnerable a ataques XSS? Espero sus respuestas.


kesar
25 de Octubre de 2006, 03:05:55 am
Como me gustan tus quizz :]
Al principio probaba intentando pasarle parámetros, pero luego me di cuenta que la / era la solución
alex
25 de Octubre de 2006, 07:06:40 pm
Muy bien kesar, complementando tu respuesta, para aprovechar ese fallo la url tendría un formato parecido a:
$_SERVER['PHP_SELF']en este caso tomaría el valor de:/index.php/"><script>alert('xss')</script><fque produciría lo siguiente:
<form action="/index.php/"><script>alert('xss')</script><f" method="post"> </form>Edu
26 de Octubre de 2006, 02:36:06 am
No entiendo muy bien, por qué en:
http://vulnerable.com/index.php/”>alert(’xss’)
alex
29 de Octubre de 2006, 08:01:23 pm
Edu, no entiendo muy bien tu pregunta, supongo que se quitaron algunas cosas por los filtros de wordpress, para futuros comentarios, si deseas poner código, mira lo siguiente.
LH
28 de Enero de 2007, 02:18:42 pm
En realidad no tiene nada de milicioso ese codigo quien lo creo? santaclos o un raton?? necesitas mas
Marc Palau
17 de Julio de 2007, 12:02:53 pm
Muy interesante, había leído sobre otro métodos pero este brilla por su facilidad.
LH, antes de hablar infórmate porque un fallo así de sencillo te puede llevar a robos de sesión y otros.
saludos!!
Valdex
31 de Enero de 2008, 02:33:22 pm
Muchas gracias, me sirvió mucho para solucionar un problema….
Luis Toscano
29 de Septiembre de 2008, 11:45:44 pm
es potencialmente peligrosa porq pasas un parametro al codigo ya q php_self jala la url actual del documento por lo q le puedes mandar cualquier dato y no seria lo correcto