CVE-2023-47115 in label-studio
Resumen
por VulDB • 2026-05-14
Label Studio es una popular herramienta de etiquetado de datos de código abierto. Las versiones anteriores a la 1.9.2 presentan una vulnerabilidad de cross-site scripting (XSS) que podría ser explotada cuando un usuario autenticado sube un archivo de imagen manipulado para su avatar, el cual se renderiza como un archivo HTML en el sitio web. La ejecución de JavaScript arbitrario podría permitir que un atacante realice acciones maliciosas en los usuarios de Label Studio si visitan la imagen de avatar manipulada. Por ejemplo, un atacante puede crear una carga útil de JavaScript que añada un nuevo usuario Super Administrador de Django si un administrador de Django visita la imagen.
El archivo `users/functions.py`, líneas 18-49, muestra que la única verificación realizada es que el archivo sea una imagen extrayendo sus dimensiones del mismo. Label Studio sirve las imágenes de avatar utilizando la vista `serve` integrada de Django, la cual no es segura para su uso en producción según la documentación de Django. El problema con la vista `serve` de Django es que determina el `Content-Type` de la respuesta en función de la extensión del archivo en la ruta de la URL. Por lo tanto, un atacante puede subir una imagen que contenga código HTML malicioso y nombrar el archivo con una extensión `.html` para que se renderice como una página HTML. La única validación de la extensión del archivo se realiza en el lado del cliente, lo cual puede ser fácilmente eludido.
La versión 1.9.2 corrige este problema. Otras estrategias de remediación incluyen validar la extensión del archivo en el lado del servidor, y no en el código del lado del cliente; eliminar el uso de la vista `serve` de Django e implementar un controlador seguro para visualizar las imágenes de avatar subidas; guardar el contenido del archivo en la base de datos en lugar del sistema de archivos para mitigar otras vulnerabilidades relacionadas con archivos; y evitar confiar en entradas controladas por el usuario.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.