Hoy os vengo a contar un caso de
una aplicación en particular de Instragram, en la que muchos usuarios han
confiado, y le han dado los permisos necesarios para realizar las acciones
básicas como dar me gusta, empezar a seguir a un usuario, dejar de seguir a
otro, comentar etc...
Figura 1: Growth Hacking en
Instagram: Cómo robarle followers a las apps
|
Una mala gestión de la seguridad
en las apps de Instagram podría permitirte ser popular en Instagram sin ni si
quiera postear fotos sexy.
Growth Hacking en servicios
online
Las técnicas de Growth Hacking se
hicieron populares tiempo atrás desde que algunas personas como Mark
Zuckerberg, aprovecharon sus conocimientos de hacking para hacer popular sus
servicios. Esto lo hizo en sus inicios el creador de Facebook para conseguir
que sus portales tuvieran datos de los estudiantes a los que iba dirigido su servicio.
Desde entonces, hay muchos que han buscado cómo hacer popular servicios en la
red, como el caso de la empresa que vendía Likes de Facebook y que llegó a
cambiarse el nombre por el de Mark Zuckerberg, o los que se dedican a vender
followers en Twitter. Por supuesto, los equipos de seguridad de Twitter,
Facebook, etcétera, intentan detectar este tipo de prácticas y bloquearlas.
Figura 2: El
"empresario" que vendía likes que se cambió el nombre a Mark
Zuckerberg
|
Por supuesto, muchos de esos crecimientos no valen nada más
que para alimentar el ego o hacer un marketing, pero también sirven para
manipular índices de popularidad y salir en otras recomendaciones que puedan
atraer más followers reales. Todo cuenta cuando se quiere obtener la máxima
difusión de algo en todas las redes. En el caso de hoy, vamos a ver un ejemplo
en el que se puede ver cómo un fallo de seguridad en las apps de Instagram
pueden hacer que cualquiera se aproveche de ellas, y los usuarios que han dado
confianza a las apps acaben siguiendo a gente que no desean.
Un ejemplo de Growth Hacking en Instagram por culpa de una
app
El
desarrollador de esta app de Instagram en concreto, parece que se ha olvidado que un Access_Token entregado
desde una cuenta de Instagram es un código de acceso que se genera cuando un
usuario le da permiso a una aplicación para realizar determinadas acciones y
que si alguien ajeno a la aplicación consiguiera tal código, éste podría
realizar esas acciones a su gusto, tomando control sobre las acciones
permitidas por ese usuario.
Realizando unas investigaciones, se me cruzó la idea de que
haciendo un poco de Hacking con Buscadores, podría llegar a generar una
búsqueda con parte de la query que se utiliza cuando se quiere obtener ciertos
datos con un Access_Token desde una API. Como era de esperar, la búsqueda
arrojó bastantes resultados pero no solo eso… En los resultados obtenidos se
pueden ver Access_Tokens en texto plano, todos indexados por Google y todos
provenientes de un sitio en particular, algo bastante curioso.
Figura 3: Access_Tokens en los resultados de Google
|
Está claro que Instagr.in tiene problemas con la indexación
en los buscadores al igual que le pasó a Facebook. Ingresé en algunos de los
enlaces mostrados en los resultados de la búsqueda de Google - que como veis
hay millones, y echándole un ojo al código de fuente pude localizar en el
parámetro next_url de una de ellos un Access_Token. Lo curioso recargando la
pagina aparecía otro distinto al anterior. Es decir, era como si dinámicamente
se mostrase un Acces_Token distinto cada vez que se realiza una petición al
sitio.
Figura 4: Access_Token de Instagram en el código fuente en
el parámetro next_url
|
El único detalle es que no se obtiene el Access_Token del
perfil el cual se navega, sino más bien uno aleatorio, o al menos eso es lo que
parece. En cualquier caso, solo quedaba comprobar que estos códigos de
Access_Token fueran validos y que no hubieran expirado o sido cancelados aún.
Figura 5: Validación del Access_Token en el API de Instagram
para desarrolladores
|
Para ello me dirigí a la API para desarrolladores de
Instagram, e hice un GET con el Access_Token obtenido sobre alguna de las
acciones permitidas, devolviéndoseme como resultado un OK de parte de la API,
pudiendo así, si hubiese querido, realizar acciones con la cuenta de quien
fuera el usuario correspondiente a tal Access_Token. Esto es igual de malo, que
cuando las apps llevan los tokens de las cuentas hardcodeados.
Prueba de Concepto de Growth Hacking con Instagram
Conociendo esto, se podría hacer un script que pida el
código HTML de la pagina y una vez obtenido se la extraiga de ella el valor
mostrado de Access_Token y así ir almacenando códigos en una base de datos.
Luego, quien sabe, tal vez ofrecer un servicio de seguidores de Instagram,
lanzar un mensaje masivo, darle presencia a algún perfil, etcétera. He hecho un pequeño vídeo de prueba con este
script en el que se puede ver cómo una cuenta, sin ningún comentario, va
siguiente de Followers.
Con esto visto, se podría hacer un proceso para construir
una base de datos en la que se averigüe a quién pertenece cada Access_Token.
Basta con crear una cuenta en Instagram sin ningún follower, usar el
Access_Token para seguir a la cuenta y ver quién es el nuevo follower de esa
cuenta. Hecho esto, se podría tener bien segmentada la base de datos con las
propiedades de todas las cuentas que tal vez como tú, tus amigos o personas de
empresas, han confiado los permisos de su cuenta a este tipo de aplicaciones.
Ten cuidado con las aplicaciones que aceptas en Instagram o en cualquier otra
de tus identidades.