Mecanismos de protección de datos en videojuegos

Preview:

Citation preview

Universidad de Granada

Mecanismos de protección de datos en videojuegos

Alumno:Benito Palacios Sánchez

Tutor:Dr. D. Pedro García Teodoro

Dpto. Teoría de la Señal, Telemática yComunicaciones

15 de julio de 2015

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

ObjetivoAnalizar, estudiar y documentar algoritmos de protección dedatos implementados en videojuegos.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 2 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Índice de contenidos1 Introducción2 Traducciones no o�ciales

MetodologíaSaga Pokémon

3 Contenido con derechos de autorLibros electrónicosBandas sonoras

4 Servicios en líneaMultijugadorContenidos descargables

5 Recomendaciones6 Conclusiones

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 3 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Índice de contenidos1 Introducción2 Traducciones no o�ciales

MetodologíaSaga Pokémon

3 Contenido con derechos de autorLibros electrónicosBandas sonoras

4 Servicios en líneaMultijugadorContenidos descargables

5 Recomendaciones6 Conclusiones

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 4 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Motivación

Los videojuegos son unaclave de nuestra culturaactual.

Su industria es la segundacon más ganancias.

Preocupación porprotección anti-copias,derechos de autor,trampas. Figura: Estadísticas sobre jugadores

en EE. UU. Fuente: http://www.esrb.org(2010).

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 5 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Motivación

Los videojuegos son unaclave de nuestra culturaactual.

Su industria es la segundacon más ganancias.

Preocupación porprotección anti-copias,derechos de autor,trampas.

Figura: Estadísticas sobre laindustria de videojuegos en EE. UU.Fuente: http://www.esrb.org (2009).

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 5 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Motivación

Los videojuegos son unaclave de nuestra culturaactual.

Su industria es la segundacon más ganancias.

Preocupación porprotección anti-copias,derechos de autor,trampas.

Figura: Estadísticas sobre laindustria de videojuegos en EE. UU.Fuente: http://www.esrb.org (2009).

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 5 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

ROM Hacking

Ingeniería inversaLa ingeniería inversa es el proceso de analizar un sistemapara identi�car sus componentes y relaciones y, crear unarepresentación del sistema en otro formato o a un nivel másalto de abstracción.

ROM HackingIngeniería inversa sobre videojuegos. El nombre vienerealizar modi�caciones (hacks) sobre juegos que suelendistribuirse en memorias de solo lectura (Read Only Memory).

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 6 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

ROM Hacking

Ingeniería inversaLa ingeniería inversa es el proceso de analizar un sistemapara identi�car sus componentes y relaciones y, crear unarepresentación del sistema en otro formato o a un nivel másalto de abstracción.

ROM HackingIngeniería inversa sobre videojuegos. El nombre vienerealizar modi�caciones (hacks) sobre juegos que suelendistribuirse en memorias de solo lectura (Read Only Memory).

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 6 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Índice de contenidos1 Introducción2 Traducciones no o�ciales

MetodologíaSaga Pokémon

3 Contenido con derechos de autorLibros electrónicosBandas sonoras

4 Servicios en líneaMultijugadorContenidos descargables

5 Recomendaciones6 Conclusiones

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 7 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Traducciones no o�ciales y Pokémon

Franquicia de The PokémonCompany fundada en 1995.Juegos desarrollados por GameFreak.

Segunda franquicia más exitosaa nivel mundial.

Nº seguidores + retrasos enlanzamientos⇒ traducción noo�cial.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 8 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Traducciones no o�ciales y Pokémon

Franquicia de The PokémonCompany fundada en 1995.Juegos desarrollados por GameFreak.

Segunda franquicia más exitosaa nivel mundial.

Nº seguidores + retrasos enlanzamientos⇒ traducción noo�cial.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 8 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Traducciones no o�ciales y Pokémon

Franquicia de The PokémonCompany fundada en 1995.Juegos desarrollados por GameFreak.

Segunda franquicia más exitosaa nivel mundial.

Nº seguidores + retrasos enlanzamientos⇒ traducción noo�cial.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 8 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Traducciones no o�ciales y Pokémon

Franquicia de The PokémonCompany fundada en 1995.Juegos desarrollados por GameFreak.

Segunda franquicia más exitosaa nivel mundial.

Nº seguidores + retrasos enlanzamientos⇒ traducción noo�cial.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 8 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Metodología

Ficheros en Nintendo DS

Sistema de �cheros en NDS.Archivo binario con textos.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 9 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Metodología

Ficheros en Nintendo DS

Sistema de �cheros en NDS.Archivo binario con textos.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 9 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Metodología

Ficheros en Nintendo DS

Sistema de �cheros en NDS.Archivo binario con textos.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 9 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Metodología

Depuración de juegosEmulador No$gba para NDS.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 10 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Metodología

Depuración de juegosEmulador No$gba para NDS.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 10 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Metodología

Búsqueda de textos con codi�cación no estándar

RelativeSearch.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 11 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Metodología

Búsqueda de textos con codi�cación no estándar

RelativeSearch.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 11 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Metodología

Puntos de interrupción en códigoPunto de interrupción.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 12 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Metodología

Puntos de interrupción en códigoBucle de descifrado.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 12 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Metodología

Puntos de interrupción en códigoInicialización de clave.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 12 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Saga Pokémon

Cifrado XOR en Pokémon Perla y Diamante

Textos: codi�cados y cifradosushort clave = 0x91BD3 * (num + 1);for (int i=0; i<data.Length; i++){

data[i] = data[i] ^ clave;clave = (ushort )(clave + 0x493D);

}

Imágenes: cifrado del bloque de datosuint clave = data[data.Length - 1];for (int i=data.Length - 1; i>=0; i--){

data[i] = data[i] ^ clave;clave = (uint)(clave * 0x41C64E6D + 0x6073);

}

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 13 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Saga Pokémon

Cifrado XOR en Pokémon Perla y Diamante

Textos: codi�cados y cifradosushort clave = 0x91BD3 * (num + 1);for (int i=0; i<data.Length; i++){

data[i] = data[i] ^ clave;clave = (ushort )(clave + 0x493D);

}

Imágenes: cifrado del bloque de datosuint clave = data[data.Length - 1];for (int i=data.Length - 1; i>=0; i--){

data[i] = data[i] ^ clave;clave = (uint)(clave * 0x41C64E6D + 0x6073);

}

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 13 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Saga Pokémon

Cifrado XOR en Pokémon Perla y Diamante

Textos: codi�cados y cifradosushort clave = 0x91BD3 * (num + 1);for (int i=0; i<data.Length; i++){

data[i] = data[i] ^ clave;clave = (ushort )(clave + 0x493D);

}

Imágenes: cifrado del bloque de datosuint clave = data[data.Length - 1];for (int i=data.Length - 1; i>=0; i--){

data[i] = data[i] ^ clave;clave = (uint)(clave * 0x41C64E6D + 0x6073);

}

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 13 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Saga Pokémon

Cifrado XOR en Pokémon Perla y Diamante

Textos: codi�cados y cifradosushort clave = 0x91BD3 * (num + 1);for (int i=0; i<data.Length; i++){

data[i] = data[i] ^ clave;clave = (ushort )(clave + 0x493D);

}

Imágenes: cifrado del bloque de datosuint clave = data[data.Length - 1];for (int i=data.Length - 1; i>=0; i--){

data[i] = data[i] ^ clave;clave = (uint)(clave * 0x41C64E6D + 0x6073);

}

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 13 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Saga Pokémon

Cifrado XOR en Pokémon Perla y Diamante

Textos: codi�cados y cifradosushort clave = 0x91BD3 * (num + 1);for (int i=0; i<data.Length; i++){

data[i] = data[i] ^ clave;clave = (ushort )(clave + 0x493D);

}

Imágenes: cifrado del bloque de datosuint clave = data[data.Length - 1];for (int i=data.Length - 1; i>=0; i--){

data[i] = data[i] ^ clave;clave = (uint)(clave * 0x41C64E6D + 0x6073);

}

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 13 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Saga Pokémon

Archivos ofuscados en Pokémon Blanco y NegroArchivos ofuscados:

Sin nombre ni clasi�cación.Textos:

Codi�cación UTF-16.Cifrado XOR, moviendo 3 bits de la clave.

ushort clave = (num + 3) * 0x2983;for (int i=0; i<data.Length; i++){

data[i] = data[i] ^ clave;ushort temp = clave & 0x1FFF;clave = (temp <<3) | (clave >>13)

}

Imágenes:Cambio de formato.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 14 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Saga Pokémon

Archivos ofuscados en Pokémon Blanco y NegroArchivos ofuscados:

Sin nombre ni clasi�cación.Textos:

Codi�cación UTF-16.Cifrado XOR, moviendo 3 bits de la clave.

ushort clave = (num + 3) * 0x2983;for (int i=0; i<data.Length; i++){

data[i] = data[i] ^ clave;ushort temp = clave & 0x1FFF;clave = (temp <<3) | (clave >>13)

}

Imágenes:Cambio de formato.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 14 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Saga Pokémon

Archivos ofuscados en Pokémon Blanco y NegroArchivos ofuscados:

Sin nombre ni clasi�cación.Textos:

Codi�cación UTF-16.Cifrado XOR, moviendo 3 bits de la clave.

ushort clave = (num + 3) * 0x2983;for (int i=0; i<data.Length; i++){

data[i] = data[i] ^ clave;ushort temp = clave & 0x1FFF;clave = (temp <<3) | (clave >>13)

}

Imágenes:Cambio de formato.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 14 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Saga Pokémon

Archivos ofuscados en Pokémon Blanco y NegroArchivos ofuscados:

Sin nombre ni clasi�cación.Textos:

Codi�cación UTF-16.Cifrado XOR, moviendo 3 bits de la clave.

ushort clave = (num + 3) * 0x2983;for (int i=0; i<data.Length; i++){

data[i] = data[i] ^ clave;ushort temp = clave & 0x1FFF;clave = (temp <<3) | (clave >>13)

}

Imágenes:Cambio de formato.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 14 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Saga Pokémon

Archivos ofuscados en Pokémon Blanco y NegroArchivos ofuscados:

Sin nombre ni clasi�cación.Textos:

Codi�cación UTF-16.Cifrado XOR, moviendo 3 bits de la clave.

ushort clave = (num + 3) * 0x2983;for (int i=0; i<data.Length; i++){

data[i] = data[i] ^ clave;ushort temp = clave & 0x1FFF;clave = (temp <<3) | (clave >>13)

}

Imágenes:Cambio de formato.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 14 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Saga Pokémon

Archivos ofuscados en Pokémon Blanco y NegroArchivos ofuscados:

Sin nombre ni clasi�cación.Textos:

Codi�cación UTF-16.Cifrado XOR, moviendo 3 bits de la clave.

ushort clave = (num + 3) * 0x2983;for (int i=0; i<data.Length; i++){

data[i] = data[i] ^ clave;ushort temp = clave & 0x1FFF;clave = (temp <<3) | (clave >>13)

}

Imágenes:Cambio de formato.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 14 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Saga Pokémon

Archivos ofuscados en Pokémon Blanco y NegroArchivos ofuscados:

Sin nombre ni clasi�cación.Textos:

Codi�cación UTF-16.Cifrado XOR, moviendo 3 bits de la clave.

ushort clave = (num + 3) * 0x2983;for (int i=0; i<data.Length; i++){

data[i] = data[i] ^ clave;ushort temp = clave & 0x1FFF;clave = (temp <<3) | (clave >>13)

}

Imágenes:Cambio de formato.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 14 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Saga Pokémon

Archivos ofuscados en Pokémon Blanco y NegroArchivos ofuscados:

Sin nombre ni clasi�cación.Textos:

Codi�cación UTF-16.Cifrado XOR, moviendo 3 bits de la clave.

ushort clave = (num + 3) * 0x2983;for (int i=0; i<data.Length; i++){

data[i] = data[i] ^ clave;ushort temp = clave & 0x1FFF;clave = (temp <<3) | (clave >>13)

}

Imágenes:Cambio de formato.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 14 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Mecanismos en otros juegos

Algoritmos de protección encontrados en otros juegos:Pokémon HeartGold y SoulSilver: Igual que PokémonPerla y Diamante.

Pokémon Conquest: Cifra y codi�ca textos. Imágenes conformatos no estándar.

Ninokuni - El Mago de las Tinieblas: Cifra estadísticas depersonajes y monstruos. Añade algoritmos de integridaden el archivo de guardado.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 15 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Mecanismos en otros juegos

Algoritmos de protección encontrados en otros juegos:Pokémon HeartGold y SoulSilver: Igual que PokémonPerla y Diamante.

Pokémon Conquest: Cifra y codi�ca textos. Imágenes conformatos no estándar.

Ninokuni - El Mago de las Tinieblas: Cifra estadísticas depersonajes y monstruos. Añade algoritmos de integridaden el archivo de guardado.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 15 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Mecanismos en otros juegos

Algoritmos de protección encontrados en otros juegos:Pokémon HeartGold y SoulSilver: Igual que PokémonPerla y Diamante.

Pokémon Conquest: Cifra y codi�ca textos. Imágenes conformatos no estándar.

Ninokuni - El Mago de las Tinieblas: Cifra estadísticas depersonajes y monstruos. Añade algoritmos de integridaden el archivo de guardado.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 15 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Índice de contenidos1 Introducción2 Traducciones no o�ciales

MetodologíaSaga Pokémon

3 Contenido con derechos de autorLibros electrónicosBandas sonoras

4 Servicios en líneaMultijugadorContenidos descargables

5 Recomendaciones6 Conclusiones

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 16 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Libros electrónicos

Ninokuni: La ira de la Bruja Blanca

Versión para PS3 con ligeroscambios. Llegó a América y Europa.

Libro digitalizado en alta calidad.

No hay algoritmos de protección,pero su formato no es estándar.

El resto de �cheros (texto, audio,etc) sí están cifrados.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 17 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Libros electrónicos

Ninokuni: La ira de la Bruja Blanca

Versión para PS3 con ligeroscambios. Llegó a América y Europa.

Libro digitalizado en alta calidad.

No hay algoritmos de protección,pero su formato no es estándar.

El resto de �cheros (texto, audio,etc) sí están cifrados.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 17 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Libros electrónicos

Ninokuni: La ira de la Bruja Blanca

Versión para PS3 con ligeroscambios. Llegó a América y Europa.

Libro digitalizado en alta calidad.

No hay algoritmos de protección,pero su formato no es estándar.

El resto de �cheros (texto, audio,etc) sí están cifrados.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 17 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Libros electrónicos

Ninokuni: La ira de la Bruja Blanca

Versión para PS3 con ligeroscambios. Llegó a América y Europa.

Libro digitalizado en alta calidad.

No hay algoritmos de protección,pero su formato no es estándar.

El resto de �cheros (texto, audio,etc) sí están cifrados.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 17 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Bandas sonoras

Guitar Hero: On TourFicheros comprimidos con formatopropietario. 3

El algoritmo ocupa 1.900instrucciones máquina. 3

No hay compresión en lassiguientes ediciones. 5

Formato canciones: Vorbis OGG. 5

Figura: Mensajes de error en el código. 5

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 18 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Bandas sonoras

Guitar Hero: On TourFicheros comprimidos con formatopropietario. 3

El algoritmo ocupa 1.900instrucciones máquina. 3

No hay compresión en lassiguientes ediciones. 5

Formato canciones: Vorbis OGG. 5

Figura: Mensajes de error en el código. 5

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 18 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Bandas sonoras

Guitar Hero: On TourFicheros comprimidos con formatopropietario. 3

El algoritmo ocupa 1.900instrucciones máquina. 3

No hay compresión en lassiguientes ediciones. 5

Formato canciones: Vorbis OGG. 5

Figura: Mensajes de error en el código. 5

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 18 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Bandas sonoras

Guitar Hero: On TourFicheros comprimidos con formatopropietario. 3

El algoritmo ocupa 1.900instrucciones máquina. 3

No hay compresión en lassiguientes ediciones. 5

Formato canciones: Vorbis OGG. 5

Figura: Mensajes de error en el código. 5

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 18 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Bandas sonoras

Duet

Juego para plataformas móviles (Android,iOS).

La banda sonora se vende en iTunes por3.99€.

Se encuentra desprotegida en la carpetadel juego en formato estándar.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 19 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Bandas sonoras

Duet

Juego para plataformas móviles (Android,iOS).

La banda sonora se vende en iTunes por3.99€.

Se encuentra desprotegida en la carpetadel juego en formato estándar.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 19 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Bandas sonoras

Duet

Juego para plataformas móviles (Android,iOS).

La banda sonora se vende en iTunes por3.99€.

Se encuentra desprotegida en la carpetadel juego en formato estándar.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 19 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Mecanismos en otros juegos

Información en otros juegos estudiados:100 Classic Book Collection: Sin protección en e-books. 5

Elite Beat Agents: Sin protección en canciones. 5

Guitar Rock: Sin protección en canciones. 5

Música de juegos de Level-5: Codi�cación propietaria. 3

Vídeos de Ninokuni para PS3: Codi�cación MPEG. 5

Vídeos en NDS: Codi�cación propietaria desconocida. 3

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 20 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Mecanismos en otros juegos

Información en otros juegos estudiados:100 Classic Book Collection: Sin protección en e-books. 5

Elite Beat Agents: Sin protección en canciones. 5

Guitar Rock: Sin protección en canciones. 5

Música de juegos de Level-5: Codi�cación propietaria. 3

Vídeos de Ninokuni para PS3: Codi�cación MPEG. 5

Vídeos en NDS: Codi�cación propietaria desconocida. 3

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 20 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Mecanismos en otros juegos

Información en otros juegos estudiados:100 Classic Book Collection: Sin protección en e-books. 5

Elite Beat Agents: Sin protección en canciones. 5

Guitar Rock: Sin protección en canciones. 5

Música de juegos de Level-5: Codi�cación propietaria. 3

Vídeos de Ninokuni para PS3: Codi�cación MPEG. 5

Vídeos en NDS: Codi�cación propietaria desconocida. 3

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 20 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Mecanismos en otros juegos

Información en otros juegos estudiados:100 Classic Book Collection: Sin protección en e-books. 5

Elite Beat Agents: Sin protección en canciones. 5

Guitar Rock: Sin protección en canciones. 5

Música de juegos de Level-5: Codi�cación propietaria. 3

Vídeos de Ninokuni para PS3: Codi�cación MPEG. 5

Vídeos en NDS: Codi�cación propietaria desconocida. 3

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 20 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Mecanismos en otros juegos

Información en otros juegos estudiados:100 Classic Book Collection: Sin protección en e-books. 5

Elite Beat Agents: Sin protección en canciones. 5

Guitar Rock: Sin protección en canciones. 5

Música de juegos de Level-5: Codi�cación propietaria. 3

Vídeos de Ninokuni para PS3: Codi�cación MPEG. 5

Vídeos en NDS: Codi�cación propietaria desconocida. 3

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 20 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Mecanismos en otros juegos

Información en otros juegos estudiados:100 Classic Book Collection: Sin protección en e-books. 5

Elite Beat Agents: Sin protección en canciones. 5

Guitar Rock: Sin protección en canciones. 5

Música de juegos de Level-5: Codi�cación propietaria. 3

Vídeos de Ninokuni para PS3: Codi�cación MPEG. 5

Vídeos en NDS: Codi�cación propietaria desconocida. 3

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 20 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Índice de contenidos1 Introducción2 Traducciones no o�ciales

MetodologíaSaga Pokémon

3 Contenido con derechos de autorLibros electrónicosBandas sonoras

4 Servicios en líneaMultijugadorContenidos descargables

5 Recomendaciones6 Conclusiones

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 21 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Multijugador

Captura de paquetes

Estrategiaman-in-the-middle

Figura:Man-in-the-middle

Modi�cación DeSmuME.Paquetes PCAP.

void create_packet ();void save_packet(u8* packet ,u32 len);void save_adhocPacket(u8* packet ,

u32 len , void* addr , bool isSent );

Exportar paquetes.HandleDebugEvent_Execute() endebug.cpp.

Figura: RC4Finder.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 22 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Multijugador

Captura de paquetes

Estrategiaman-in-the-middle

Figura:Man-in-the-middle

Modi�cación DeSmuME.Paquetes PCAP.

void create_packet ();void save_packet(u8* packet ,u32 len);void save_adhocPacket(u8* packet ,

u32 len , void* addr , bool isSent );

Exportar paquetes.HandleDebugEvent_Execute() endebug.cpp.

Figura: RC4Finder.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 22 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Multijugador

Captura de paquetes

Estrategiaman-in-the-middle

Figura:Man-in-the-middle

Modi�cación DeSmuME.Paquetes PCAP.

void create_packet ();void save_packet(u8* packet ,u32 len);void save_adhocPacket(u8* packet ,

u32 len , void* addr , bool isSent );

Exportar paquetes.HandleDebugEvent_Execute() endebug.cpp.

Figura: RC4Finder.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 22 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Multijugador

Captura de paquetes

Estrategiaman-in-the-middle

Figura:Man-in-the-middle

Modi�cación DeSmuME.Paquetes PCAP.

void create_packet ();void save_packet(u8* packet ,u32 len);void save_adhocPacket(u8* packet ,

u32 len , void* addr , bool isSent );

Exportar paquetes.HandleDebugEvent_Execute() endebug.cpp.

Figura: RC4Finder.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 22 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Multijugador

Captura de paquetes

Estrategiaman-in-the-middle

Figura:Man-in-the-middle

Modi�cación DeSmuME.Paquetes PCAP.

void create_packet ();void save_packet(u8* packet ,u32 len);void save_adhocPacket(u8* packet ,

u32 len , void* addr , bool isSent );

Exportar paquetes.HandleDebugEvent_Execute() endebug.cpp.

Figura: RC4Finder.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 22 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Multijugador

Captura de paquetes

Estrategiaman-in-the-middle

Figura:Man-in-the-middle

Modi�cación DeSmuME.Paquetes PCAP.

void create_packet ();void save_packet(u8* packet ,u32 len);void save_adhocPacket(u8* packet ,

u32 len , void* addr , bool isSent );

Exportar paquetes.HandleDebugEvent_Execute() endebug.cpp.

Figura: RC4Finder.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 22 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Multijugador

Servidores para Nintendo DS

Nintendo DS ConnTest NAS DLC Server

GET

200 OK

[login] userid, gamecd, passwd, makercd

[200 OK] challenge, token

[SVCLOC] userid, gamecd, passwd, makercd

[200 OK] servicetoken, svchost

[count] gamecd, passwd, token

[200 OK] 0

[list] gamecd, passwd, token, offset, num

[200 OK] tweet111209.bin 2416

[content], gamecd, passwd, token, contents

[200 OK] datos

Vulnerabilidades:Puerto 80 del NASabierto.

Contraseña nousada.

Autenticaciónsimple.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 23 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Multijugador

Servidores para Nintendo DS

Nintendo DS ConnTest NAS DLC Server

GET

200 OK

[login] userid, gamecd, passwd, makercd

[200 OK] challenge, token

[SVCLOC] userid, gamecd, passwd, makercd

[200 OK] servicetoken, svchost

[count] gamecd, passwd, token

[200 OK] 0

[list] gamecd, passwd, token, offset, num

[200 OK] tweet111209.bin 2416

[content], gamecd, passwd, token, contents

[200 OK] datos

Vulnerabilidades:Puerto 80 del NASabierto.

Contraseña nousada.

Autenticaciónsimple.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 23 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Multijugador

Servidores para Nintendo DS

Nintendo DS ConnTest NAS DLC Server

GET

200 OK

[login] userid, gamecd, passwd, makercd

[200 OK] challenge, token

[SVCLOC] userid, gamecd, passwd, makercd

[200 OK] servicetoken, svchost

[count] gamecd, passwd, token

[200 OK] 0

[list] gamecd, passwd, token, offset, num

[200 OK] tweet111209.bin 2416

[content], gamecd, passwd, token, contents

[200 OK] datos

Vulnerabilidades:Puerto 80 del NASabierto.

Contraseña nousada.

Autenticaciónsimple.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 23 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Multijugador

Servidores para Nintendo DS

Nintendo DS ConnTest NAS DLC Server

GET

200 OK

[login] userid, gamecd, passwd, makercd

[200 OK] challenge, token

[SVCLOC] userid, gamecd, passwd, makercd

[200 OK] servicetoken, svchost

[count] gamecd, passwd, token

[200 OK] 0

[list] gamecd, passwd, token, offset, num

[200 OK] tweet111209.bin 2416

[content], gamecd, passwd, token, contents

[200 OK] datos

Vulnerabilidades:Puerto 80 del NASabierto.

Contraseña nousada.

Autenticaciónsimple.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 23 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Multijugador

Servidores para Nintendo DS

Nintendo DS ConnTest NAS DLC Server

GET

200 OK

[login] userid, gamecd, passwd, makercd

[200 OK] challenge, token

[SVCLOC] userid, gamecd, passwd, makercd

[200 OK] servicetoken, svchost

[count] gamecd, passwd, token

[200 OK] 0

[list] gamecd, passwd, token, offset, num

[200 OK] tweet111209.bin 2416

[content], gamecd, passwd, token, contents

[200 OK] datos

Vulnerabilidades:Puerto 80 del NASabierto.

Contraseña nousada.

Autenticaciónsimple.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 23 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Multijugador

Servidores para Nintendo DS

Nintendo DS ConnTest NAS DLC Server

GET

200 OK

[login] userid, gamecd, passwd, makercd

[200 OK] challenge, token

[SVCLOC] userid, gamecd, passwd, makercd

[200 OK] servicetoken, svchost

[count] gamecd, passwd, token

[200 OK] 0

[list] gamecd, passwd, token, offset, num

[200 OK] tweet111209.bin 2416

[content], gamecd, passwd, token, contents

[200 OK] datos

Vulnerabilidades:Puerto 80 del NASabierto.

Contraseña nousada.

Autenticaciónsimple.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 23 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Multijugador

Preguntados

Trivial para plataformas móviles.

Vulnerabilidades:

Comunicación HTTP. Solución enviada antes depreguntar.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 24 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Multijugador

Preguntados

Trivial para plataformas móviles.

Vulnerabilidades:

Comunicación HTTP. Solución enviada antes depreguntar.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 24 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Multijugador

Preguntados

Trivial para plataformas móviles.

Vulnerabilidades:

Comunicación HTTP. Solución enviada antes depreguntar.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 24 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Multijugador

Preguntados

Trivial para plataformas móviles.

Vulnerabilidades:

Comunicación HTTP. Solución enviada antes depreguntar.

Figura: Preguntas, respuesta y solución de una partida

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 24 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Multijugador

Preguntados

Trivial para plataformas móviles.

Vulnerabilidades:

Comunicación HTTP. Solución enviada antes depreguntar.

Figura: Preguntas, respuesta y solución de una partida

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 24 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Multijugador

Preguntados

Trivial para plataformas móviles.

Vulnerabilidades:

Comunicación HTTP. Solución enviada antes depreguntar.

Figura: Preguntas, respuesta y solución de una partida

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 24 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Contenidos descargables

Duet

Niveles extras por 0,99€.BD con preferencias sinproteger.

Ya incluidos perodesactivados.Se puede activar a mano.

Figura: Filas con estado de los contenidos extras

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 25 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Contenidos descargables

Duet

Niveles extras por 0,99€.BD con preferencias sinproteger.

Ya incluidos perodesactivados.Se puede activar a mano.

Figura: Filas con estado de los contenidos extras

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 25 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Contenidos descargables

Duet

Niveles extras por 0,99€.BD con preferencias sinproteger.

Ya incluidos perodesactivados.Se puede activar a mano.

Figura: Filas con estado de los contenidos extras

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 25 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Contenidos descargables

Duet

Niveles extras por 0,99€.BD con preferencias sinproteger.

Ya incluidos perodesactivados.Se puede activar a mano.

Figura: Filas con estado de los contenidos extras

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 25 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Contenidos descargables

Duet

Niveles extras por 0,99€.BD con preferencias sinproteger.

Ya incluidos perodesactivados.Se puede activar a mano.

Figura: Filas con estado de los contenidos extras

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 25 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Contenidos descargables

Download Play

Compartir demos con comunicación inalámbrica ad-hoc.

Problema:Envío de código de una consola a otra.El código principales se �rman con RSA.

Solución de Nintendo:Comprobar integridad con HMAC.Solo si con Download Play.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 26 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Contenidos descargables

Download Play

Compartir demos con comunicación inalámbrica ad-hoc.

Problema:Envío de código de una consola a otra.El código principales se �rman con RSA.

Solución de Nintendo:Comprobar integridad con HMAC.Solo si con Download Play.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 26 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Contenidos descargables

Download Play

Compartir demos con comunicación inalámbrica ad-hoc.

Problema:Envío de código de una consola a otra.El código principales se �rman con RSA.

Solución de Nintendo:Comprobar integridad con HMAC.Solo si con Download Play.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 26 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Contenidos descargables

Download Play

Compartir demos con comunicación inalámbrica ad-hoc.

Problema:Envío de código de una consola a otra.El código principales se �rman con RSA.

Solución de Nintendo:Comprobar integridad con HMAC.Solo si con Download Play.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 26 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Contenidos descargables

Download Play

Compartir demos con comunicación inalámbrica ad-hoc.

Problema:Envío de código de una consola a otra.El código principales se �rman con RSA.

Solución de Nintendo:Comprobar integridad con HMAC.Solo si con Download Play.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 26 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Contenidos descargables

Download Play

Compartir demos con comunicación inalámbrica ad-hoc.

Problema:Envío de código de una consola a otra.El código principales se �rman con RSA.

Solución de Nintendo:Comprobar integridad con HMAC.Solo si con Download Play.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 26 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Contenidos descargables

Download Play

Compartir demos con comunicación inalámbrica ad-hoc.

Problema:Envío de código de una consola a otra.El código principales se �rman con RSA.

Solución de Nintendo:Comprobar integridad con HMAC.Solo si con Download Play.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 26 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Índice de contenidos1 Introducción2 Traducciones no o�ciales

MetodologíaSaga Pokémon

3 Contenido con derechos de autorLibros electrónicosBandas sonoras

4 Servicios en líneaMultijugadorContenidos descargables

5 Recomendaciones6 Conclusiones

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 27 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Seguridad en �cheros

Empaquetar �cheros.Implementaciones largas (1.900 líneas).Compresión diferente en cada cabecera.

Ofuscar nombre de �cheros y directorios.

Cifrado XOR.No usar claves estáticas.

Codi�cación de caracteres no estándar.Desordenar caracteres.Cifrado del archivo de tipografía.

Nuevos formatos frente a cifrado.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 28 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Seguridad en �cheros

Empaquetar �cheros.Implementaciones largas (1.900 líneas).Compresión diferente en cada cabecera.

Ofuscar nombre de �cheros y directorios.

Cifrado XOR.No usar claves estáticas.

Codi�cación de caracteres no estándar.Desordenar caracteres.Cifrado del archivo de tipografía.

Nuevos formatos frente a cifrado.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 28 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Seguridad en �cheros

Empaquetar �cheros.Implementaciones largas (1.900 líneas).Compresión diferente en cada cabecera.

Ofuscar nombre de �cheros y directorios.

Cifrado XOR.No usar claves estáticas.

Codi�cación de caracteres no estándar.Desordenar caracteres.Cifrado del archivo de tipografía.

Nuevos formatos frente a cifrado.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 28 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Seguridad en �cheros

Empaquetar �cheros.Implementaciones largas (1.900 líneas).Compresión diferente en cada cabecera.

Ofuscar nombre de �cheros y directorios.

Cifrado XOR.No usar claves estáticas.

Codi�cación de caracteres no estándar.Desordenar caracteres.Cifrado del archivo de tipografía.

Nuevos formatos frente a cifrado.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 28 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Seguridad en �cheros

Empaquetar �cheros.Implementaciones largas (1.900 líneas).Compresión diferente en cada cabecera.

Ofuscar nombre de �cheros y directorios.

Cifrado XOR.No usar claves estáticas.

Codi�cación de caracteres no estándar.Desordenar caracteres.Cifrado del archivo de tipografía.

Nuevos formatos frente a cifrado.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 28 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Seguridad en �cheros

Empaquetar �cheros.Implementaciones largas (1.900 líneas).Compresión diferente en cada cabecera.

Ofuscar nombre de �cheros y directorios.

Cifrado XOR.No usar claves estáticas.

Codi�cación de caracteres no estándar.Desordenar caracteres.Cifrado del archivo de tipografía.

Nuevos formatos frente a cifrado.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 28 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Seguridad en �cheros

Empaquetar �cheros.Implementaciones largas (1.900 líneas).Compresión diferente en cada cabecera.

Ofuscar nombre de �cheros y directorios.

Cifrado XOR.No usar claves estáticas.

Codi�cación de caracteres no estándar.Desordenar caracteres.Cifrado del archivo de tipografía.

Nuevos formatos frente a cifrado.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 28 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Seguridad en �cheros

Empaquetar �cheros.Implementaciones largas (1.900 líneas).Compresión diferente en cada cabecera.

Ofuscar nombre de �cheros y directorios.

Cifrado XOR.No usar claves estáticas.

Codi�cación de caracteres no estándar.Desordenar caracteres.Cifrado del archivo de tipografía.

Nuevos formatos frente a cifrado.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 28 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Seguridad en �cheros

Empaquetar �cheros.Implementaciones largas (1.900 líneas).Compresión diferente en cada cabecera.

Ofuscar nombre de �cheros y directorios.

Cifrado XOR.No usar claves estáticas.

Codi�cación de caracteres no estándar.Desordenar caracteres.Cifrado del archivo de tipografía.

Nuevos formatos frente a cifrado.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 28 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Seguridad en �cheros

Empaquetar �cheros.Implementaciones largas (1.900 líneas).Compresión diferente en cada cabecera.

Ofuscar nombre de �cheros y directorios.

Cifrado XOR.No usar claves estáticas.

Codi�cación de caracteres no estándar.Desordenar caracteres.Cifrado del archivo de tipografía.

Nuevos formatos frente a cifrado.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 28 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Seguridad en comunicaciones

HTTPS vs HTTP.Cerrar puertos de servidores.Diseño del protocolo.

Autenticación con contraseña vs reto.Comprobar la contraseña.

Cifrado y comprobación de integridad en descargas.Proteger activación de contenido descargado.

Transmisión segura de código entre dispositivos.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 29 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Seguridad en comunicaciones

HTTPS vs HTTP.Cerrar puertos de servidores.Diseño del protocolo.

Autenticación con contraseña vs reto.Comprobar la contraseña.

Cifrado y comprobación de integridad en descargas.Proteger activación de contenido descargado.

Transmisión segura de código entre dispositivos.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 29 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Seguridad en comunicaciones

HTTPS vs HTTP.Cerrar puertos de servidores.Diseño del protocolo.

Autenticación con contraseña vs reto.Comprobar la contraseña.

Cifrado y comprobación de integridad en descargas.Proteger activación de contenido descargado.

Transmisión segura de código entre dispositivos.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 29 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Seguridad en comunicaciones

HTTPS vs HTTP.Cerrar puertos de servidores.Diseño del protocolo.

Autenticación con contraseña vs reto.Comprobar la contraseña.

Cifrado y comprobación de integridad en descargas.Proteger activación de contenido descargado.

Transmisión segura de código entre dispositivos.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 29 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Seguridad en comunicaciones

HTTPS vs HTTP.Cerrar puertos de servidores.Diseño del protocolo.

Autenticación con contraseña vs reto.Comprobar la contraseña.

Cifrado y comprobación de integridad en descargas.Proteger activación de contenido descargado.

Transmisión segura de código entre dispositivos.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 29 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Seguridad en comunicaciones

HTTPS vs HTTP.Cerrar puertos de servidores.Diseño del protocolo.

Autenticación con contraseña vs reto.Comprobar la contraseña.

Cifrado y comprobación de integridad en descargas.Proteger activación de contenido descargado.

Transmisión segura de código entre dispositivos.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 29 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Seguridad en comunicaciones

HTTPS vs HTTP.Cerrar puertos de servidores.Diseño del protocolo.

Autenticación con contraseña vs reto.Comprobar la contraseña.

Cifrado y comprobación de integridad en descargas.Proteger activación de contenido descargado.

Transmisión segura de código entre dispositivos.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 29 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Seguridad en comunicaciones

HTTPS vs HTTP.Cerrar puertos de servidores.Diseño del protocolo.

Autenticación con contraseña vs reto.Comprobar la contraseña.

Cifrado y comprobación de integridad en descargas.Proteger activación de contenido descargado.

Transmisión segura de código entre dispositivos.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 29 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Índice de contenidos1 Introducción2 Traducciones no o�ciales

MetodologíaSaga Pokémon

3 Contenido con derechos de autorLibros electrónicosBandas sonoras

4 Servicios en líneaMultijugadorContenidos descargables

5 Recomendaciones6 Conclusiones

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 30 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

ConclusionesObjetivos alcanzados:

Identi�car problemas no tratados en la literatura.

Desarrollar software.

Aprender conceptos de bajo nivel en software y hardwareincluyendo el lenguaje ensamblador ARM.

Diseñar metodologías de ingeniería inversa y captura depaquetes.

Analizar 21 juegos.

Aprender LATEX.Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 31 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

ConclusionesObjetivos alcanzados:

Identi�car problemas no tratados en la literatura.

Desarrollar software.

Aprender conceptos de bajo nivel en software y hardwareincluyendo el lenguaje ensamblador ARM.

Diseñar metodologías de ingeniería inversa y captura depaquetes.

Analizar 21 juegos.

Aprender LATEX.Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 31 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

ConclusionesObjetivos alcanzados:

Identi�car problemas no tratados en la literatura.

Desarrollar software.

Aprender conceptos de bajo nivel en software y hardwareincluyendo el lenguaje ensamblador ARM.

Diseñar metodologías de ingeniería inversa y captura depaquetes.

Analizar 21 juegos.

Aprender LATEX.Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 31 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

ConclusionesObjetivos alcanzados:

Identi�car problemas no tratados en la literatura.

Desarrollar software.

Aprender conceptos de bajo nivel en software y hardwareincluyendo el lenguaje ensamblador ARM.

Diseñar metodologías de ingeniería inversa y captura depaquetes.

Analizar 21 juegos.

Aprender LATEX.Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 31 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

ConclusionesObjetivos alcanzados:

Identi�car problemas no tratados en la literatura.

Desarrollar software.

Aprender conceptos de bajo nivel en software y hardwareincluyendo el lenguaje ensamblador ARM.

Diseñar metodologías de ingeniería inversa y captura depaquetes.

Analizar 21 juegos.

Aprender LATEX.Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 31 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

ConclusionesObjetivos alcanzados:

Identi�car problemas no tratados en la literatura.

Desarrollar software.

Aprender conceptos de bajo nivel en software y hardwareincluyendo el lenguaje ensamblador ARM.

Diseñar metodologías de ingeniería inversa y captura depaquetes.

Analizar 21 juegos.

Aprender LATEX.Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 31 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Trabajo futuro

Estudios:Seguridad en videoconsolas y sus exploits.Algoritmos de integridad en archivos de guardado.Mecanismos anti-copia físicos y digitales.Protocolos de micropagos en videojuegos.Seguridad de aplicaciones de ordenador (Steam).

Desarrollos:Implementar mecanismos estudiados.Explorador de juegos avanzado.Depurador de código remoto.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 32 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Trabajo futuro

Estudios:Seguridad en videoconsolas y sus exploits.Algoritmos de integridad en archivos de guardado.Mecanismos anti-copia físicos y digitales.Protocolos de micropagos en videojuegos.Seguridad de aplicaciones de ordenador (Steam).

Desarrollos:Implementar mecanismos estudiados.Explorador de juegos avanzado.Depurador de código remoto.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 32 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Trabajo futuro

Estudios:Seguridad en videoconsolas y sus exploits.Algoritmos de integridad en archivos de guardado.Mecanismos anti-copia físicos y digitales.Protocolos de micropagos en videojuegos.Seguridad de aplicaciones de ordenador (Steam).

Desarrollos:Implementar mecanismos estudiados.Explorador de juegos avanzado.Depurador de código remoto.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 32 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Trabajo futuro

Estudios:Seguridad en videoconsolas y sus exploits.Algoritmos de integridad en archivos de guardado.Mecanismos anti-copia físicos y digitales.Protocolos de micropagos en videojuegos.Seguridad de aplicaciones de ordenador (Steam).

Desarrollos:Implementar mecanismos estudiados.Explorador de juegos avanzado.Depurador de código remoto.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 32 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Trabajo futuro

Estudios:Seguridad en videoconsolas y sus exploits.Algoritmos de integridad en archivos de guardado.Mecanismos anti-copia físicos y digitales.Protocolos de micropagos en videojuegos.Seguridad de aplicaciones de ordenador (Steam).

Desarrollos:Implementar mecanismos estudiados.Explorador de juegos avanzado.Depurador de código remoto.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 32 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Trabajo futuro

Estudios:Seguridad en videoconsolas y sus exploits.Algoritmos de integridad en archivos de guardado.Mecanismos anti-copia físicos y digitales.Protocolos de micropagos en videojuegos.Seguridad de aplicaciones de ordenador (Steam).

Desarrollos:Implementar mecanismos estudiados.Explorador de juegos avanzado.Depurador de código remoto.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 32 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Trabajo futuro

Estudios:Seguridad en videoconsolas y sus exploits.Algoritmos de integridad en archivos de guardado.Mecanismos anti-copia físicos y digitales.Protocolos de micropagos en videojuegos.Seguridad de aplicaciones de ordenador (Steam).

Desarrollos:Implementar mecanismos estudiados.Explorador de juegos avanzado.Depurador de código remoto.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 32 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Trabajo futuro

Estudios:Seguridad en videoconsolas y sus exploits.Algoritmos de integridad en archivos de guardado.Mecanismos anti-copia físicos y digitales.Protocolos de micropagos en videojuegos.Seguridad de aplicaciones de ordenador (Steam).

Desarrollos:Implementar mecanismos estudiados.Explorador de juegos avanzado.Depurador de código remoto.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 32 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Trabajo futuro

Estudios:Seguridad en videoconsolas y sus exploits.Algoritmos de integridad en archivos de guardado.Mecanismos anti-copia físicos y digitales.Protocolos de micropagos en videojuegos.Seguridad de aplicaciones de ordenador (Steam).

Desarrollos:Implementar mecanismos estudiados.Explorador de juegos avanzado.Depurador de código remoto.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 32 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Trabajo futuro

Estudios:Seguridad en videoconsolas y sus exploits.Algoritmos de integridad en archivos de guardado.Mecanismos anti-copia físicos y digitales.Protocolos de micropagos en videojuegos.Seguridad de aplicaciones de ordenador (Steam).

Desarrollos:Implementar mecanismos estudiados.Explorador de juegos avanzado.Depurador de código remoto.

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 32 / 33

Introducción Fan-traducciones Contenido con copyright Servicios en línea Recomendaciones Conclusiones

Gracias por su atención

Repositorio en GitHub: https://github.com/pleonex/AiroRom

Benito Palacios Sánchez (UGR) Mecanismos de protección de datos en videojuegos Julio de 2015 33 / 33

Recommended