Cómo crashear servers de Minecraft

No hay comentarios.

Hoy ha salido a la luz una vulnerabilidad que le permite básicamente a cualquiera crashear un servidor de Minecraft.

La vulnerabiliad fue descubierta por primera vez hace casi dos años por el desarrollador Ammar Askar, quien contactó a Mojang en varias ocasiones para notificarles y darle seguimiento al estado de asunto. Para su sorpresa inicial, no recibió respuestas satisfactorias por parte de la compañía, y en un par de ocasiones hasta fue ignorado.

Finalmente, cansado de esperar por una solución, decidió publicar sus descubrimientos en su blog.

Esta vulnerabilidad es posible debido a que el cliente del juego puede intercambiar información con el servidor, por ejemplo, sobre lo que contiene una ranura en el inventario, mediante archivos de un formato llamado NBT. Es posible crear objetos personalizados que abrumen al servidor y le causen un error fatal.

Como demostración Askar creó un objeto personalizado al que llamó "rekt". Su base contiene 300 listas, cada lista contiene 10 listas de segundo orden, que a su vez contienen 10 listas de tercer orden, y así continúa hasta completar 5 iteraciones. Luego de recibir el archivo el servidor intenta procesarlo, lo que implica crear muchos objetos. 10^5 x 300, para ser específico. Eso es igual a 30 000 000 objetos, lo cual agota la memoria del servidor y requiere un enorme trabajo por parte del CPU.

Luego de la revelación de este error de software Mojang identificó el problema e intentó repararlo, pero aún no ha tenido éxito.

No hay comentarios. :

Publicar un comentario