Los investigadores han revelado una vulnerabilidad de lectura fuera de los límites en el lenguaje de programación Squirrel que los atacantes pueden abusar para romper las restricciones de la zona de pruebas y ejecutar código arbitrario dentro de un SquirrelVM, dando así a un actor malintencionado acceso completo a la máquina subyacente.
Rastreado como CVE-2021-41556 , el problema ocurre cuando una biblioteca de juegos denominada Squirrel Engine se usa para ejecutar código que no es de confianza y afecta las ramas de versión estable 3.xy 2.x de Squirrel. La vulnerabilidad se reveló responsablemente el 10 de agosto de 2021.
Squirrel es un lenguaje de programación de código abierto orientado a objetos que se utiliza para la creación de scripts de videojuegos y también en dispositivos IoT y plataformas de procesamiento de transacciones distribuidas como Enduro / X.
«En un escenario del mundo real, un atacante podría incrustar un script Squirrel malicioso en un mapa de la comunidad y distribuirlo a través del Steam Workshop de confianza», dijeron los investigadores Simon Scannell y Niklas Breitfeld en un informe compartido con The Hacker News. «Cuando el propietario de un servidor descarga e instala este mapa malicioso en su servidor, se ejecuta el script Squirrel, escapa de su VM y toma el control de la máquina del servidor».
La falla de seguridad identificada se refiere a un «acceso fuera de los límites a través de la confusión del índice» al definir clases de ardilla que podrían explotarse para secuestrar el flujo de control de un programa y obtener el control total de la máquina virtual de ardilla.
Si bien el problema se ha abordado como parte de una confirmación de código enviada el 16 de septiembre, vale la pena señalar que los cambios no se han incluido en una nueva versión estable, con la última versión oficial (v3.1) lanzada el 27 de marzo de 2016. Se recomienda encarecidamente a los mantenedores que dependen de Squirrel en sus proyectos que apliquen las últimas correcciones reconstruyéndolo a partir del código fuente para protegerse contra cualquier ataque.