Bueno como anda muy de moda todo lo que es
XSS, y la cantidad de
sites vulnerables a ellos, voy a mostrar uno de sus tantos usos de engaño.
Primero que es
Pishing, es la forma de engañar a la
víctima haciéndole creer que esta en un
site de confianza cuando en realidad esta en uno maligno, con el fin de poder robar los datos (nombre, usuario, contraseña, numero de tarjeta de
crédito, etc.).
Hay una diferencia con respecto al
pishing común a lo que es el
Pishing a través de
XSS. Ejemplo: supongamos que somos cliente de un
bancoX, y su pagina de ingreso es http://bancoX.com/login.php, el atacante
podría incentivar a la
víctima mediante alguna forma de la
ingeniería social que ingrese a su sitio maligno hecho por el,
haciéndole creer que esta en el original, donde el sitio maligno es http://sitiomaligno/bancoX/login.php.
Entonces una de las formas de verificar siempre si estamos ante un
pishing es mirar la
dirección de nuestro
browser y asegurarnos que estamos donde
quisieramos entrar.
El
Pishing con XSS, es mucho mas eficiente, ya que el atacante aprovecha la confianza que tiene el cliente con ese dominio, y mediante la
inyección de HTML podemos engañar a la persona pidiendo sus datos, y el usuario
podrá mirar la
dirección de su
browser, y
efectiva mente estará posicionado en el
site correcto de su confianza.
Para un mejor entendimiento voy a mostrar con un
site real, que es el Sitio de
Luis A. Cuadrado. Esta empresa es por lejos la mas prestigioso de ventas de
insumos de
informática en Corrientes Capital y Resistencia Chaco, pero pareciera que no le importa mucho la seguridad de sus clientes.
Lo que me llamo la
atención fue este enlace,
http://www.luiscuadrado.com/login.php, y fue cuando me
decidí hacer este articulo.

Siendo usuario del mismo podemos comprar productos y donde los mismos pueden ser enviados al domicilio.
VERIFICANDO LA FALLABien la falla radica en una variable, $
products_id, que lo que hace es tomar un numero hacer una consulta a su base de datos, y luego trae la
información de el producto correspondiente. Ahora si al pasar el numero $
products_id=1249,
además de toda la
info de dicho articulo con id=1249, el valor se imprime en pantalla sin pasar por
algún filtro, :).
Primer Ejemplo:
http://www.luiscuadrado.com/product_info.php?products_id=1249%20%3Cscript%3Ealert%28123%29%3C/script%3Eopps!!
XSS!!.
Ahora veamos algo mas lindo, y mas detallado lo que hice fue crear un
script en
php con un formulario pidiendo
Email y Clave, y que los datos se guarden en un archivo de texto, la
inyección es mediante un
iframe.
Segundo Ejemplo:
http://www.luiscuadrado.com/product_info.php?products_id=1249%20%3Ciframe%20src=http://www.google.com%20height=%22300%22%20width=%22800%22%3E%3C/iframe%3E
Google en la pagina de cuadrado!
je..
Ahora
ahí va algo mucho mejor, que
vendría hacer lo que
estábamos hablando insertar un formulario pidiendo
Email y password..
Vean el formulario de
logueo,
tranquilamente se puede engañar a la gente pidiendo sus claves para luego obtener el ingreso al sistema. (en este momento no esta el
link ya voy a subir los
php que cree a un
server amigo, para que
uds lo vean desde su
browser). Los datos quedan guardados en un archivo
txt.

El
escenario esta preparado, lo
único que
quedaría es usar la
imaginacion para engañar a sus clientes. Y
quizás tener algunos
insumos de
informatica mas!!
xDPrevencion:
Todas las variables mostradas por pantalla
deberían ser pasadas por filtro, para no tener este tipo de problema,
obviamente que todo depende de la calidad del programador, ya que no solo nos enfrentamos con
XSS, sino
también CRSF o
XSRF, donde el que sale perjudicado es el usuario final.
Recomiendo usar agregados como
Noscript para el
firefox, y siempre estar atento los posibles
mail,
sms, mensajes por
msn, que nos
envien a un sitio donde somos usuarios y pidan nuestros datos por alguna
razon X, estar seguro que donde estamos es quien dice ser.!
Mas Documentación
http://itfreekzone.blogspot.com/2009/12/cruzando-informacion-cross-site.html
http://itfreekzone.blogspot.com/2009/12/rompiendo-lo-grande-xss-avanzado.html
Saludos!!