A la hora de compilar nuestras aplicaciones para poder instalarlas en cualquier dispositivo Android o subirlas a la tienda de Google, según el programa que utilicemos para crearlas utilizaremos un compilador u otro, cada uno con sus propias funciones, características y dependencias. Debido a la poca importancia que dan las empresas a las librerías y dependencias de sus propios compiladores, es posible que nuestras aplicaciones se estén compilando utilizando versiones obsoletas de estas, poniendo en peligro a los usuarios que la descarguen y manchando nuestra ficha de la Google Play Store, tal como ha ocurrido a los desarrolladores de GameMaker.
GameMaker es una de las aplicaciones más sencillas y utilizadas para crear juegos 2D multiplataforma, especialmente para Android. Con un gran número de usuarios activos a diario, esta plataforma cuenta con miles de juegos publicados en las distintas tiendas de aplicaciones del mercado, como la Play Store, desde donde los programadores ponen sus títulos a disposición de los usuarios, tanto de forma gratuita como de pago. Sin embargo, todos los programadores que hayan creado y compilado una aplicación con esta plataforma se han encontrado con un problema de seguridad que, hasta el momento, no tiene solución.
En un correo enviado por Google a los desarrolladores que tienen en la tienda publicadas aplicaciones creadas y compiladas con GameMaker, la compañía advierte de que esas aplicaciones utilizan una versión vulnerable de la librería libpng, lo cual viola la política «Malicious Behavior» de los términos de uso y pide que los desarrolladores actualicen sus aplicaciones antes del próximo mes de septiembre o, de lo contrario, no podrán subir aplicaciones que utilicen versiones vulnerable de la librería libpng.
La vulnerabilidad en la librería libpng, conocida como CVE-2015-8540, puede permitir a un atacante acceder fuera de los límites de la memoria y ejecutar código malicioso, lo que supone un peligro para la integridad de Android y de los propios usuarios.
Por el momento Google asegura que las aplicaciones no van a ser eliminadas de la Play Store (aunque suponen un fallo de seguridad que no debería existir), pero asegura que, pasada la fecha límite de septiembre, todas las aplicaciones y actualizaciones que incluyan esta vulnerabilidad se bloquearán, incluso es posible que, de seguir siendo aplicaciones vulnerables, tarde o temprano la compañía las bloquee.
GameMaker aún no ha hecho declaraciones ni ha anunciado cuándo cambiará la librería libpng de su compilador
A diferencia de lo que ocurre, por ejemplo, con el compilador de Android Studio, que el usuario puede controlar mucho más las librerías y dependencias del mismo, con GameMaker esto no es así. A pesar de que todos los desarrolladores de GameMaker han sido avisados hace ya casi una semana, hasta la fecha los responsables del IDE no han hecho declaraciones al respecto y, aunque en su software de seguimiento de bugs está registrado, por el momento no se sabe cuándo actualizarán su aplicación para incluir las nuevas librerías en el compilador.
Una vez actualicen, es tarea de los propios desarrolladores volver a cargar el código y compilarlo, algo que, cualquiera que haya utilizado el IDE, sabe que traerá problemas, igual que cuando realizan el más mínimo cambio en la aplicación y algo que, si los responsables de la herramienta se hubieran preocupado de mantener sus dependencias y librerías, como libpng, actualizadas o hubieran creado un compilador mejor donde se utilizasen librerías dinámicas, se podría haber evitado.
Por el momento, lo único que podemos hacer los desarrolladores es esperar a que los responsables de GameMaker decidan actualizar su herramienta para volver a compilar, una a una, todas nuestras aplicaciones. Por otro lado, los usuarios que no quieran exponer su seguridad, deben evitar la descarga de estas aplicaciones, aunque es compilado diferenciarlas de las demás salvo que el propio desarrollador lo indique en la descripción.
¿Crees que los responsables de los compiladores de Android más utilizados deberían asegurarse de utilizar librerías y dependencias actualizadas?
Quizá te interese: