26 enero 2009

[::Tutorial::] - Ataques XSS

http://talks.php.net/presentations/slides/php-under-attack/xss.png
Bueno pues voy ha hacer una pequeña introducción a los ataques XSS, el caso que voy a poner es el de una web que utilize cookies y tenga un buscador(el típico buscador que tiene una caja de texto y un botón).
decir que para una facil compresión de este mini-tutorial es mejor tener unos conocimientos básicos sobre html.

[~]Lo primero es hacer una pequeña introduccion sobre que es una cookie:
Citar
- Una cookie es un almacen de informacion que se guarda en el ordenador del usuario y en cualkier momento la pagina puede pedir la informacion, que contiene la cookie, al ordenador del usuario...


* Ahora que sabemos que es una cookie lo que vamos ha hacer es ver el nombre de la página donde se encuentra el buscador, en nuestro caso es buscador.php(xDD)
* Después vamos a ver si el buscador es vulnerable. Para ello podemos poner en el buscador, por ejemplo:
codigo:

~]Si salta una alarma al pulsar el boton, significa que ese buscador es vulnerable.
[~]Si no salta pues no jodemos y a buscar otro...

* Suponiendo que sea vulnerable, el siguiente paso es ver el nombre de la caja de texto y del botón.

Para esto, tenemos que ver el codigo fuente de dicha página y buscar algo como:
que será el textbox(caja de texto xD).
que será el boton.

* Ahora ya sabemos que el textbox se llama palabra y que el botón se llama buscar.

[~]Para almacenar las cookies, tenermos dos opciones -> almazenarlas en una base de datos(mysql) o almacenarlas en un archivo de texto(la mas facil).

* A continuacion vamos a crear una pagina en php, este archivo creará otro (archivo.txt) cuando algun usuario caiga en el ataque y escribira a continuacion los siguientes usuarios.

cookies.php
Código:


archivo.txt
Este archivo se creara automaticamente y será en el que se almacenen las cookies, osease, que para ver los resultados teneis que entrar en este archivo.

* Una vez hecho este paso solo tenemos que crear "LA URL MALIGNA"(como yo lo llamo) que será de la siguiente forma:

Código


* Voy a explicar cada parte de esta "URL MALIGNA".
[~]

http://www.vulnerable.com/buscador.php
Esta parte lo unico que hace es entrar en la pagina del buscador.

[~]?palabra=
Esta parte es para darle un valor a la variable palabra, es decir, si el textbox se llamara manolo esto quedaría de la siguiente forma: ?manolo=

Lo mas importante:
[~]
Esto es el valor que le damos a la variable palabra (que es el textbox). Este valor lo que hace esque redirecciona a la pagina http://www.atacante.com/cookie.php y le da el valor de la cookie(del usuario de la web) a la variables cookie de la pagina que creamos antes(cookies.php)
Suena un poco lioso pero es muy simple.

[~]&buscar=;
Esto lo que hace es simular que el boton (con el nombre -> buscar) este pulsado, sin esto no realizaria la acción.
Tambien decir que si el botón del buscador se llamara jose, eso tendriamos que reemplazarlo por &jose=;

* Ahora viene la parte mas importante, que es hacer que un usuario de esa web(que esté registrado) entre en ese enlace("LA URL MALIGNA").

Esto seguramente sea la parte mas complicada, porque cualkier persona con unos conocimientos muy basicos de programacion web sabría lo que hace esa "URL MALIGNA". Con lo cual vamos a proceder a "camuflar" un poco esa URL.
Para esto vamos a sustituir cada caracter por su correspondiente valor en hexagesimal poniendo el signo % delante de cada uno.

Aquí os dejo una buena tabla HEX:
http://www.ascii.cl/es/

Con lo cual iría quedando algo así:
Código:

esto equivaldría a:
Código:

y tendrias que continuar cambiando los caracteres a hexagesimal.

Como conseguir que un usuario de esa web entre en esa URL, jejeje, pues ¡¡¡puedes decirle que le toca un premio si entra!!!(xDD) o puedes entrar al foro de esa web(si lo tuviera) y poner la direccion con alguna buena escusa como: "Que le pasa a la web, cuando entro en esta URL me sale una tía en bolas";
Otra opción es ponerlo como una noticia (si tienes un sistemas de noticias) o como se te ocurra.

=============================================
Solo me queda decir que no solo son vulnerbles a un ataque XSS los buscadores, puede ser cualquier formulario que os encontreis por internet, desde un registro de usuario hasta un foro(lo digo por experiencia).
=============================================

CONCLUSION: Este ataque se basa en redireccionar a un usuario(sea como sea) hacia una pagina, tuya, en la que guardes su cookie.

Creo que como introduccion no esta mal, aunque por las bullas de ponerlo pronto a lomejor me he quedado sin decir algo, weno si me acuerdo lo pongo...


P.D:Por supuesto si algo esta mal o lo sabeis explicar mejor o esto es una *****, pues decirlo aqui...

http://espacioforos.miarroba.com/1433606/agradeser.gif
Agradecer no cuesta nada, Valora los aportes de los demas :P
y si te ha sido de utilidad comenta!!

3 comentarios:

Anónimo dijo...

la pagina es mas que sensacional, compartes cosas muy valiosas con los demas yo me inicio en todo esto me doy idea y con las valiosas lecciones q das aqui se q mejorare mis conocimientos, que al fin y al cabo son conocimientos ya uno decide como usarlos xD, gracias por todo lo q compartes segui adelante!

Anónimo dijo...

Mejor explicacion que esta no puede haber, muy bueno el aporte, me ah ayudado bastante a entender este tipo de vulnarabilidad.
Muchas gracias.

Anónimo dijo...

Gracias hermano por los manuales que pones aqui.. en serio .. me encanta este blog !

Se va a favoritoc :D

Publicar un comentario

Bienvenid@ a el juacker Tu Zona De Descargas y de tutoriales.
Decir Gracias y Dejar Un Comentario No Cuesta Nada
Gracias Por Comentar!!!!

Gracias por haber visitado el blog.

Licencia Ju4ck3r's Blog ® Copyleft 2009

Creative Commons License
Ju4ck3r's Blog by El-ju4ck3r is licensed under a Creative Commons Reconocimiento-No comercial-Compartir bajo la misma licencia 3.0 España.
Based on a work at WwW.El-JuAcKeR.CoM.aR.Permissions beyond the scope of this license may be available at Rocke_x1x@hotmail.com.
Copyleft 2009 | Blogger Template by Ju4ck3r | Design by Ju4ck3r No part of the content or the blog may be reproduced without prior written permission.