Bug de injeção HTML no Counter-Strike 2 expõe endereços IP dos jogadores
12 de Dezembro de 2023

A Valve supostamente corrigiu um erro de injeção HTML no CS2 que estava sendo fortemente abusado hoje para injetar imagens nos jogos e obter outros endereços IP dos jogadores.

Embora inicialmente se pensasse ser um defeito mais severo de Cross Site Scripting (XSS), que permite que o código JavaScript seja executado em um cliente, o bug foi determinado apenas como sendo um erro de injeção HTML, permitindo a injeção de imagens.

O Counter-Strike 2 utiliza a Panorama UI da Valve, uma interface de usuário que incorpora fortemente CSS, HTML e JavaScript para o design de layout.

Como parte do design layout, os desenvolvedores podem configurar campos de entrada para aceitar HTML em vez de sanitizá-lo para uma string regular.

Se o campo permitisse HTML, qualquer texto inserido seria renderizado na saída como HTML.

Hoje, os usuários do Counter-Strike começaram a relatar que usuários estavam abusando de um erro de injeção HTML para inserir imagens no painel de votação de expulsão.

Enquanto o erro foi mais abusado para diversão inofensiva, outros o usaram para obter os endereços IP de outros jogadores na partida.

Isso foi feito usando a tag <img> para abrir um script remoto de logger IP que causava o endereço IP de cada jogador que viu a votação de expulsão ser registrado.

Esses endereços IP poderiam ser usados maliciosamente, como lançar ataques DDoS para forçar os jogadores a se desconectarem da partida.

Esta tarde, a Valve lançou uma pequena atualização de 7MB que supostamente corrige a vulnerabilidade e faz com que qualquer HTML inserido seja sanitizado para uma string regular.

Por exemplo, uma vez instalado o patch, em vez de HTML injetado ser renderizado pela interface do usuário, ele seria apenas exibido como uma string, como demonstrado abaixo.

BleepingComputer entrou em contato com a Valve para confirmar se esta atualização corrigiu a exploração, mas não recebeu resposta.

Em 2019, um bug semelhante, mas mais sério, foi encontrado na Panorama UI do Counter-Strike: Global Offensive que permitia que o HTML fosse injetado através do recurso de expulsão.

No entanto, nesse caso específico, também poderia ser usado para lançar JavaScript, tornando-o uma vulnerabilidade XSS muito mais crítica que poderia ser usada para executar comandos remotamente.

Publicidade

Curso gratuito de Python

O curso Python Básico da Solyd oferece uma rápida aproximação à linguagem Python com diversos projetos práticos. Indo do zero absoluto até a construção de suas primeiras ferramentas. Tenha também suporte e certificado gratuitos. Saiba mais...