Hack juego online 📱


DarkZenitsu

Miembro activo
Hola a todos.
Me interesa aprender sobre seguridad y funcionamiento interno de juegos móviles desde un punto de vista educativo y ético.

Quisiera entender cómo se protegen las partidas online, cómo funcionan los sistemas anti-cheat y qué diferencias hay entre datos locales y servidores.

Así como variar valores dentro de este.

Si alguien puede recomendarme recursos, herramientas o guías para aprender ingeniería inversa y análisis de apps de forma legal, se lo agradecería mucho.

Gracias de antemano.

Saludos
 

Citro

Miembro muy activo
Noder
yo he hecho alguna auditoría forense a apks pero tema anti-cheat cliente-servidor ni idea

te dejo un buen resumen para empezar en el tema

metele caña y ya nos dices que tal lo llevas mas adelante
 

dillcen

Miembro muy activo
Así muy por encima, un juego que guarda todos sus datos en local, puede ser el caso de Pou, que por ejemplo tienes 10.000 monedas, ese numero esa cantidad, se guarda en los archivos del juego en algun lugar, si eres lo suficientemente espabilado, puedes llegar a cambiarlo y de ahi crear cheats con herramientas como cheat engine, luegeo estan los juegos cliente servidor, para que me entiendas esos juegos cada vez que completas una acción hace una petición al servidor, por ejemplo, PokeMMO es un juego cliente servidor, todos los datos del juego se guardan en un servidor externo el cual tu no puedes acceder, lo que hace es por ejemplo tienes 50 pokéballs, si tu gastas una, le hace una peticion al servidor como informandole de que se ha gastado una, entonces el servidor actualiza tu cantidad a 49 pokéballs, al ser servidores externos, tu no puedes modificarlos, por ejemplo si tu intentas modificar la cantidad de pokeballs y te pones x99, puede aparecerte que tienes x99 pokeballs , pero a la hora de usar una, el juego hara la peticion al server y checkeará las que tienes realmente que son 50, y se te restaran de la cantidad real y se te volvera a cambiar el numero de pokeball al real, basicamente intentar "hackear" videojuegos que tienen una base de datos cliente servidor es completamente inutil, solo se modificaria graficamente pero los valores internos seguirian completamente intactos.
 
  • Like
Reacciones : DarkZenitsu y sedyo

sedyo

Miembro muy activo
Noder
El sistema anticheat se encarga de verificar que la integridad de los archivos del juego no haya sido comprometida.
Algunos anticheat registran todo tu hardware en busca de DMA o modificadores de memoria RAM, si llegaran a banearte lo que hacen es meter en lista negra los seriales del hardware que usas (PCB, CPU, RAM etc...).
en resumen, prácticamente es un rootkit monitoreándote en tiempo real.

El ejemplo que pone @dillcen para el caso cliente-servidor es bueno, solo añadir que este tipo de cheat no serian posibles sin conocer una vulnerabilidad que explote el acceso/modificar la DB donde se encuentran esos datos (estos datos se pueden modificar en local o desde memoria, pero aunque se refleje el cambio en la pantalla de tu juego, este no seria un dato real).
 
  • Like
Reacciones : DarkZenitsu