
Esta vulnerabilidad es el desbordamiento de búfer basado en montón en la función thread_call en Squirrel 3.2 y versiones anteriores. Está causada por la falta de la llamada a la función sq_reservestack. Esta vulnerabilidad conduce a una denegación de servicio (DoS) del cliente y podría conducir a la evasión del sandbox y a la ejecución de código arbitrario.
Para explotar la vulnerabilidad, alguien debe ejecutar bytecode de Squirrel manipulado o un archivo fuente. Esto se puede lograr de múltiples maneras. Por ejemplo, un servidor envía el mapa del juego al cliente y uno ejecuta el script malicioso de Squirrel. Otra forma de ser atacado es instalar un mod malicioso del juego en tu servidor.
Existe un commit de corrección para esta vulnerabilidad. Para aplicar la corrección, debes recompilar el proyecto desde las fuentes a partir de este commit.
Hay muchos juegos que usan Squirrel como lenguaje de scripting principal. Los desarrolladores de estos juegos deben aplicar la corrección lo antes posible.
No proporcionaremos el PoC antes de 90 días a partir de la fecha en que se publicó la corrección. Quizás lo proporcionaremos más tarde.