CVE-2023-47115 in label-studio
Sumário
de VulDB • 19/06/2026
O Label Studio é uma ferramenta popular de rotulagem de dados de código aberto. As versões anteriores à 1.9.2 possuem uma vulnerabilidade de cross-site scripting (XSS) que pode ser explorada quando um usuário autenticado faz upload de um arquivo de imagem manipulado para seu avatar, que é renderizado como um arquivo HTML no site. A execução de JavaScript arbitrário pode resultar em um atacante realizando ações maliciosas contra os usuários do Label Studio se eles visitarem a imagem de avatar manipulada. Por exemplo, um atacante pode criar um payload de JavaScript que adiciona um novo usuário Super Administrador do Django se um administrador do Django visitar a imagem.
O arquivo `users/functions.py`, nas linhas 18-49, mostra que a única verificação realizada é a de que o arquivo é uma imagem, extraindo as dimensões do arquivo. O Label Studio serve imagens de avatar usando a visualização `serve` integrada do Django, que não é segura para uso em produção, de acordo com a documentação do Django. O problema com a visualização `serve` do Django é que ela determina o `Content-Type` da resposta com base na extensão do arquivo no caminho da URL. Portanto, um atacante pode fazer upload de uma imagem que contenha código HTML malicioso e nomear o arquivo com uma extensão `.html` para que seja renderizado como uma página HTML. A única validação da extensão do arquivo é realizada no lado do cliente, o que pode ser facilmente contornado.
A versão 1.9.2 corrige este problema. Outras estratégias de remediação incluem validar a extensão do arquivo no lado do servidor, e não no código do lado do cliente; remover o uso da visualização `serve` do Django e implementar um controlador seguro para visualizar imagens de avatar carregadas; salvar o conteúdo do arquivo no banco de dados, em vez de no sistema de arquivos, para mitigar outras vulnerabilidades relacionadas a arquivos; e evitar confiar em entradas controladas pelo usuário.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.