Lamento el retraso no son mis mejores días pero ya andamos de nuevo aquí.

Antes que nada, quiero aclarar que este post no incluye “tutoriales” de todo lo que hice (En todo caso y a pedido, haré un post aparte), y tampoco voy a mostrar información que revele alguna identidad o dato en concreto. En ningún momento guardé información que forme parte del phishing a los usuarios. Solamente se recolectaron sus IPs y de que dispositivo se estaban conectando.

¿Como comenzó todo?:

Como siempre está la curiosidad de por medio, decidí hacerme una cuenta hace ya unos días, me encontré con algo MUY INTERESANTE que había pasado desapercibido en su momento. Todas las funciones que se brindan al usuario para “customizar” las páginas era la gloria! Y muy inseguras.

Las primeras fueron las siguientes:

  • “Always serve blog over SSL” (Podía correr el blog en HTTP o HTTPS)

 

  • “Change unaffiliated links into Tumblr affiliate links” (Si yo agregaba URLs que no son de Tumblr, no iba a pasar nada)

 

  • “Edit Theme”

 

  • “Create a new blog” (Osea que podía tener varios blogs)

Entonces… Viendo esto, me puse en marcha a editar el tema, y lo que me encontré fue mucho mejor de lo que me esperaba, miles de opciones para editar TODO lo que contenía mi página; y por todo me refiero a TODO pero no vamos a mostrarlo, directamente pasemos a la parte jugosa… Lo que estaba abajo de todas esas opciones:

  • “Add a page” (Podía agregarle sub páginas a mi página, editando el codigo HTML al 100%)
  • “Advanced Options” (Partes jugosas que me dejan aún mas control)

    “Open links in new window” (Abrir links en ventanas nuevas)
    “Use default mobile theme” (Usar el tema predeterminado de tumblr en el celular/tablet)
    “Promote Tumblr!” (Promocionar tumblr con un iframe molesto)

    Desactivando estas tres, te permite usar el tema para escritorio de Tumblr cuando abran el link en el celular y que no salte ninguna publicidad.

 

Repasando todas las características que vimos antes, podemos decir que si nuestro “blog” lo corremos en HTTP podemos agregar links y afiliando los links a Tumblr, podemos agregar URLs propias sin que sean excluidas por el server… Podemos crear múltiples páginas con múltiples sub paginas y evitar que salga publicidad.
¿Seguridad? ¿Donde?
¿Que hacemos con todo esto?:

Viendo todo lo anterior, comencé mi blog, bajé un tema responsive (Listo para correr en celular) y empecé.
La primer idea que tuve fue:

  • BeEF – The Browser Exploitation Framework Project:
    Implementé en el código de mi página el “hook.js” por defecto, y comencé a pedirle a mis amigos que entren… Lo primero que noté fue la lentitud del script, por lo que tenía que haber algo muy atractivo dentro (y así obtener mas tiempo para recibir los datos). ¿Que hice? Un perfíl falso. Ahora, con un perfíl mas “atractivo” podía recibir datos del usuario en mi computadora… De igual manera, seguía siendo lento. Pero hubo algo que me llamó la atención, el “Pretty Theft”. Intenté ejecutarlo pero no había caso, era muy básico, poco creíble y además tenía que ejecutarlo de modo manual o editar los autorun del BeEF.

Esta vez, BeEF no pudo salvarme… Así que se me ocurrió una segunda, el laburo artesanal:

  • Phishing e Ingeniería Social:
    Al principio no me pareció una muy buena idea, ya que no tenía idea sobre los lenguajes web, pero, “sin experimentación no hay verdad” dijo Aristoteles. Lo primero que investigué fue sobre como montar un servidor web cayendo en las manos de XAMPP y LAMPP. Luego, para tener un DNS instalé NoIP (Que ya lo había usado para servidores de videojuegos) y pum… Configurando un poquito el modem con el tema de los puertos, editando la configuración de Apache, un par de libros y listo el pollo.

Comencé bajando el login mobile de Facebook, luego por el cartel de error del mismo y un link de autorización para iniciar sesión con una aplicación. El resultado fue el siguiente:

  • “Tumblr” solicitando información de Facebook:
  • Error al poner un correo “no válido” o “mal” la clave:
  • Autorización de Tumblr que reenvía a mi blog de Tumblr:

Una vez lista la edición de las páginas, comencé con el trabajo PHP, era hora de poner a punto la mecánica y crear algo que no sea “fácil” de detectar y me hagan todo el trabajo “sucio”, estas fueron:

  • Identificar.php (Para poder saber si lo que estaba entrando a mi página era una computadora o un celular/tablet)
    En caso de ser una computadora, redirigía directo al blog, en caso de ser un celular/tablet, chequea que haya puesto su facebook y si es así iba al blog, sinó, al login.
  • login_check.php (Si el correo termina en algún dominio existente y la clave es mayor a 5 dígitos, se registra que se loggeó con esa IP)
    También hice por si ingresaban un usuario, o un numero de celular… En el caso de no haber cumplido con las reglas que armé, rediríge a la pagina de error y nuevamente debe ingresar sus datos hasta que sean “correctos”.

Listo, ya tenía un “phishing” de Facebook corriendo en mi computadora, ahora había que implementarlo. ¿Como?
Simple, mi link de NoIP no es creible, nadie va a entrar a un dominio extraño! Pero Tumblr, me ofrece dominio gratis y customización completa. ¿Se acuerdan de la opción de crear mas blogs? Usamos un cascarón vacío con el mismo título y rellenamos con un iframe y nuestro link.

Ejemplo:http://XXXXXXXXXXXXXXXXXXXXXX/identificar.php” y listo, parasitamos del cascarón vacío que Tumblr nos dejó crear.


(Perdón por el onload=() del body, experimentando dejé ese fragmento colgado)

Esto nos permite que todos los movimientos se hagan dentro de la pagina y pasen desapercibidos, sin exponernos.

Una vez hecho esto, vi que la página de mi iframe mostraba de manera MUY evidente el link de NoIP:

Así que dije: ¿Y si uso las sub páginas? Gracias otra vez Tumblr.

  • /inicio:
  • /fotos:

Listo, problema solucionado, iframe dentro de iframe… ¿Que puede malir sal?. Ante cualquier inexperto, iba a pasar desapercibido.

Consumido por el aburrimiento, cree un “Easter Egg” en la página para explotar con XSS, solo para darme el gusto, pero hasta el momento, nadie lo encontró:

Luego, de esto y de pensar en los XSS, dije: “Pero si mi página es tan insegura y entran otros usuarios de tumblr a ver mi perfil, no podré “robarme” sus Cookies?”. La respuesta era… “Si”. Cree otro PHP llamado “CookieMonster“:

Y lo pegué en la página principal:

Total, por mas iframe dentro de iframe, el cookie se va a “robar” igual. Si estaba vacío, no se escribía nada, y si había, se borraba el mismo y se guardaba un “Si” junto a la IP.

Así que todo listo, si a los usuarios de PC no podía “robarles” el Facebook, por lo menos iba a ser el Cookie de sesión. Pero hay algo extraño… De todas las IPs que ingresaron, solo se registró mi Cookie y el de la cuenta de mi amiga… ¿Quienes o que eran las otras IPs?

Resultados:

Esta es una parte de la lista de los ingresantes a la página:

(Si, algunas IPs son de Shodan y otras son de Telecom Italia)

Y los “Cookies”:

(Mas que nada estaba interesado en poder capturar algún bot de páginas pornográficas, pero no… Hasta el momento ninguno me siguió en Tumblr, tendré que esperar varios días mas para saber que pasa).
Continuando con el tema, seguí investigando porqué esta gente no dejaba Cookies. ¿JavaScript desactivado? ¿VPN? ¿Maquinas Virtuales? TODAS… Analicé a unos cuantos con Nmap y esa fue la respuesta… Me encontré con IPs de Shodan y Telecom Italia escaneando mi página. Tuve que bloquear las IPs.

Luego, comencé aplicando pruebas en una app de “citas”. Fue un éxito, pasó desapercibido, aunque iOS toma las páginas http como inseguras, marcando los links en rojo y avisandolé al usuario que estar ahí no era buena idea… De igual manera, loggeaban… La curiosidad mató al gato:

Recuerden, JAMÁS PONER SUS DATOS EN PÁGINAS QUE NO SEAN DE CONFIANZA.