Blog

Hack the Game – Family Farm bajo HTTPS y usando AMF (Facebook)

Buenas a todos! En este nuevo post de la serie “Hack the Game” vamos a ver un juego que me habíais pedido algunos y que… Me ha traído por la calle de la amargura, logrando bastante poca cosa… Pero bueno, vamos a ver también el tipo de dato AMF que me lo estoy encontrando bastante en los juegos de este estilo.

El juego que vamos a ver aquí el “Family Farm”, que básicamente es ir haciéndonos una granja…

familyfarm_1

 

Una vez se inicia el juego vemos una imagen de nuestra granja y demás como vemos a continuación…

familyfarm_2

 

En este juego podremos ir construyendo cosas y tal, pero lo que a nosotros nos interesa es cosas como, como ganar mas dinero, ponernos el nivel que queramos, comprar cosas mas baratas y todo aquello que se nos pueda ocurrir para hacer el juego mas fácil. Ya aviso que tras estar probando (Todo lo que he podido por tiempo), únicamente he conseguido que inicie nuestra partida con los datos que queramos, pero al hacer esto no guarda los cambios que hagamos durante la partida, por lo que de poco nos vale, aparte de para “fardar” compartiendo logros que lógicamente no tenemos. Ademas de esto, lo que si nos dejaba es iniciar una cuenta con los datos que quisiéramos y mandarnos a otra cuenta regalos de un nivel muy superior al que podamos tener.

Pero bueno, vamos por partes. Lo primero que vemos cuando intentamos capturar las peticiones del juego es que va por HTTPS, por lo que habría que tener instalado el certificado del proxy Charles (En caso de utilizar este) y hacer que las peticiones sean interceptadas con “SSL Proxying” como vimos en el anterior post.

Una vez tenemos echo esto, ya podríamos empezar a interceptar las peticiones. Cuando empezamos a ver que peticiones realiza el juego al iniciarse nos damos cuenta de que hace peticiones a un mismo dominio, pero tanto por HTTP como por HTTPS como vemos a continuación…

familyfarm_3

 

Pues bien, por raro que parezca, las que nos van a interesar en este caso son aquellas que van por HTTP. Al principio realiza dos peticiones referentes a JSON y después realiza la siguiente…

familyfarm_4

 

Lo primero que debemos ver es que en “Content-type” nos aparece “x-amf”, lo cual nos esta indicando que los datos que esta enviando son de tipo AMF (Action Message Format), que básicamente es un formato binario que se utiliza para serialización en objetos ActionScript y XML.

En este caso, es realmente practico utilizar Charles, porque otros proxys como BurpSuite, únicamente nos mostrarían el contenido del paquete en binario, por lo que al intentar leerlo veríamos lo siguiente…

familyfarm_5

 

Pero en el caso de Charles nos muestra abajo una pestaña que pone “AMF”, donde nos mostrara todos los datos de una forma mucho mas amigable a la hora de entender y modificar cualquier dato.

familyfarm_6

 

Bueno en este caso, os estoy mostrando la tercera petición que se realiza desde el juego al dominio (Por HTTP), que sera la petición que realmente nos interese en lo que voy a explicar. Nosotros no debemos modificar la petición que realizamos, sino la respuesta que nos devolverá el servidor, que es la siguiente…

familyfarm_7

 

En caso de abrir “data” veremos una inmensa cantidad de información donde podemos indicar a nuestro juego que inicie como vosotros queráis, poniéndonos toooodo lo que se os ocurra, pero luego no he llegado a ver la forma de hacer que el servidor guarde todos esos datos… Por ahora ;)!

Podríamos por ejemplo, cambiarnos el dinero, los puntos, nivel y demás como vemos a continuación…

familyfarm_8

familyfarm_9

 

De esta forma, cuando se inicie el juego veremos algo como lo siguiente…

familyfarm_10

 

Como veis a sido posible modificar los datos, y podríamos hacerlo con cualquiera. Lo que si que podríamos hacer ahora seria entre otras cosas enviarnos regalos de niveles muy superiores a otra cuenta y demás… Pero aun no he conseguido que el servidor guarde modificaciones que hagamos, aunque no me doy por rendido! Así que a ver si con algo de suerte y tiempo en la siguiente os lo muestro!

Espero que os haya gustado,

Un saludo,

Eduardo – eduardo@highsec.es – @_Hykeos

Leave a Reply

*

    No Twitter Messages