Las compañías detrás de los videojuegos suelen estar en la carrera contra los productores tanto de cracks como de cheats. Por ejemplo, en enero de 2023 Activision ganó una demanda contra EngineOwning, un conocido proveedor de cheats para juegos como Call of Duty. El tribunal ordenó a EngineOwning pagar una compensación millonaria por daños, sentando un precedente.
ESET, compañía líder en detección proactiva de amenazas, analiza algunos casos en los que se distribuían códigos maliciosos y el riesgo que representan.
Cuando se habla de cracks, se trata de programas que alteran archivos específicos de un juego o del software que se desea crackear. Estos archivos suelen ser ejecutables (.exe en Windows) o librerías dinámicas (.dll en Windows, .so en Linux). Son las piezas del software que contienen las instrucciones que el sistema operativo ejecuta para hacer funcionar el juego.
Un crack podría modificar el archivo ejecutable principal del juego y eliminar la verificación de la licencia al modificar secciones del código que comprueban si se ingresa una clave válida o si el juego se ejecuta en un entorno de prueba. El crack reescribe estas secciones del código para que siempre devuelvan un resultado positivo, incluso si no se ha comprado el juego o no se ha ingresado la clave correcta.
Los cheats, pueden modificar archivos de configuración que contienen datos del juego (como tablas de estadísticas), o incluso introducir nuevos archivos en el sistema del juego. Un cheat podría modificar un archivo que controla las estadísticas de los personajes para otorgar al jugador salud infinita o munición ilimitada.
Otra técnica, es la inyección de código en la memoria. Cuando un juego se está ejecutando, partes del código del juego y los datos relacionados (como la posición del jugador, la salud, etc.) residen en la memoria. Los cheats que inyectan código en la memoria modifican estos datos en tiempo real. Por ejemplo, puede buscar en la memoria del juego el valor que representa la cantidad de munición que tiene el jugador y, una vez localizado, sobrescribe este valor con un número mayor, dándole al jugador munición infinita.
Cuando un crack o un cheat modifica archivos ejecutables o librerías dinámicas, está alterando directamente el código que el software original usa para funcionar. Este comportamiento es muy similar a una técnica maliciosa, en donde ciertos tipos de malware modifican archivos ejecutables benignos para insertar su propio código. Cada vez que el archivo se ejecuta, acciones maliciosas lo hacen con este.
Además, los cracks y cheats suelen necesitar modificar verificaciones de seguridad puestas por el mismo juego para evitar alteraciones. Ya sea una firma digital o una protección de licencia, un software de protección podría interpretar ese “envenenamiento” como producto de una acción maliciosa.
“Entendiendo el funcionamiento de este tipo de archivos, un software de protección los detectaría como códigos maliciosos sin importar si realiza o no acciones dañinas. Tanto la modificación de archivos críticos como la inyección de código en la memoria son técnicas que pueden ser utilizadas tanto por software legítimo como por malware. Sin embargo, debido a su potencial para causar daño, estas técnicas suelen ser tratadas con sospecha por los programas antimalware.”, comenta Martina López, Investigadora de Seguridad Informática de ESET Latinoamérica.