Memória intermédia não verificada no Universal Plug and Play pode colocar em risco o Windows XP

Traduções de Artigos Traduções de Artigos
Artigo: 315000 - Ver produtos para os quais este artigo se aplica.
Este artigo foi publicado anteriormente em PT315000
Expandir tudo | Reduzir tudo

Nesta página

Sintomas

Os computadores podem utilizar o serviço UPnP (Universal Plug and Play) para identificar e utilizar dispositivos baseados em rede. O Microsoft Windows Millennium Edition (Me) e o Windows XP incluem serviços UPnP, mas o Microsoft Windows 98 e o Microsoft Windows 98 Segunda Edição não. No entanto, é possível instalar o serviço UPnP num computador baseado no Windows 98 ou no Windows 98 Segunda Edição instalando o cliente de Partilha de ligação à Internet (ICS, Internet Connection Sharing) incluído no Windows XP.

Este artigo descreve duas vulnerabilidades que afectam a implementação do UPnP em vários produtos. Apesar de as vulnerabilidades não estarem relacionadas, ambas envolvem a forma como os computadores com capacidade UPnP processam a detecção de novos dispositivos na rede.

A primeira vulnerabilidade está relacionada com uma sobrecarga da memória intermédia. Existe uma memória intermédia não verificada num dos componentes do Windows XP que processa as directivas NOTIFY (mensagens que anunciam a disponibilidade de dispositivos com capacidades UPnP na rede). Com o envio de uma directiva NOTIFY criada de forma particularmente incorrecta, seria possível a um atacante provocar a execução de código no contexto do serviço UPnP, que é executado com privilégios de sistema no Windows XP. No Windows 98 e no Windows Me, não existem contextos de segurança e todo o código é executado como parte do sistema operativo. Isto permitiria ao atacante obter o controlo total sobre o computador.

A segunda vulnerabilidade ocorre porque o serviço UPnP não limita suficientemente os passos que o serviço percorre para obter informações sobre como utilizar um dispositivo recentemente identificado. Na directiva NOTIFY enviada por um novo dispositivo UPnP existem informações que indicam aos computadores interessados onde podem obter a respectiva descrição de dispositivo, que lista os serviços que o dispositivo oferece e fornece instruções sobre a respectiva utilização. Por predefinição, a descrição do dispositivo poderá estar localizada num servidor de terceiros e não no próprio dispositivo. No entanto, as implementações de UPnP não regulam correctamente a execução desta operação, o que dá origem a dois cenários diferentes de denial-of-service.

No primeiro cenário de denial-of-service, o atacante poderia enviar uma directiva NOTIFY a um computador com capacidades UPnP, especificando que a descrição do dispositivo deve ser transferida a partir de uma determinada porta num determinado servidor. Se o servidor tiver sido configurado para reenviar simplesmente os pedidos de transferência ao serviço UPnP (como, por exemplo, tendo o serviço de eco em execução na porta para a qual o computador foi direccionado), o computador poderia ser forçado a entrar num ciclo de transferência infinito que poderia consumir alguma ou toda a disponibilidade do sistema. Um atacante poderia criar e enviar esta directiva directamente para o computador a atingir, utilizando o respectivo endereço IP. Em alternativa, o atacante poderia enviar esta directiva para um domínio de difusão e multicast e atacar todos os computadores baseados no Windows XP desse domínio de difusão ou multicast, consumindo alguma ou toda a disponibilidade desses sistemas.

No segundo cenário de denial-of-service, um atacante poderia especificar um servidor de terceiros como o anfitrião para a descrição do dispositivo na directiva NOTIFY. Se um número suficiente de computadores respondesse à directiva, poderia provocar um tráfego intenso de pedidos inválidos no servidor de terceiros, num ataque denial-of-service distribuído. Tal como o primeiro cenário de denial-of-service, um atacante poderia enviar as directivas directamente para o utilizador, ou para um domínio de difusão ou multicast.

Factores atenuantes

Gerais

Os procedimentos padrão de firewall (especificamente, o bloqueio das portas 1900 e 5000) poderiam ser utilizadas para proteger redes empresariais de ataques baseados na Internet.

Windows 98 e Windows 98 Segunda Edição

  • Não existe suporte UPnP incorporado para estes sistemas operativos. Os computadores baseados no Windows 98 ou no Windows 98 Segunda Edição apenas seriam afectados se o cliente ICS do Windows XP tivesse sido instalado no computador.
  • Os computadores baseados no Windows 98 ou no Windows 98 Segunda Edição que tenham instalado o cliente ICS a partir de um computador baseado no Windows XP que já tenha este patch aplicado não são vulneráveis.

Windows Me

O Windows Me fornece suporte UPnP incorporado, embora, por predefinição, este não esteja instalado ou em execução. No entanto, alguns OEM configuram os computadores de forma a que o serviço UPnP esteja instalado e em execução.

Windows XP

O Firewall de ligação à Internet (ICF, Internet Connection Firewall), executado por predefinição, deveria impedir a capacidade de um atacante executar com êxito um ataque direccionado. No entanto, uma vez que o ICF não bloqueia tráfego de difusão ou multicast de entrada, não protegeria contra esses ataques.

Resolução

Para resolver este problema, obtenha o Service Pack mais recente do Windows XP. Para obter informações adicionais, clique no número de artigo que se segue para visualizar o artigo na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base):
322389 Como obter o Service Pack mais recente do Windows XP
Os seguintes ficheiros estão disponíveis para transferência a partir do centro de transferências da Microsoft:
Inglês (E.U.):
Reduzir esta imagemExpandir esta imagem
Transferir
Transferir o Q315000_WXP_SP1_x86_enu.exe agora

Árabe:
Reduzir esta imagemExpandir esta imagem
Transferir
Transferir o Q315000_WXP_SP1_x86_ara.exe agora

Chinês (simplificado):
Reduzir esta imagemExpandir esta imagem
Transferir
Transferir o Q315000_WXP_SP1_x86_chs.exe agora

Chinês (tradicional):
Reduzir esta imagemExpandir esta imagem
Transferir
Transferir o Q315000_WXP_SP1_x86_cht.exe agora

Checo:
Reduzir esta imagemExpandir esta imagem
Transferir
Transferir o Q315000_WXP_SP1_x86_csy.exe agora

Dinamarquês:
Reduzir esta imagemExpandir esta imagem
Transferir
Transferir o Q315000_WXP_SP1_x86_dan.exe agora

Neerlandês:
Reduzir esta imagemExpandir esta imagem
Transferir
Transferir o Q315000_WXP_SP1_x86_nld.exe agora

Finlandês:
Reduzir esta imagemExpandir esta imagem
Transferir
Transferir o Q315000_WXP_SP1_x86_fin.exe agora

Francês:
Reduzir esta imagemExpandir esta imagem
Transferir
Transferir o Q315000_WXP_SP1_x86_fra.exe agora

Alemão:
Reduzir esta imagemExpandir esta imagem
Transferir
Transferir o Q315000_WXP_SP1_x86_deu.exe agora

Grego:
Reduzir esta imagemExpandir esta imagem
Transferir
Transferir o Q315000_WXP_SP1_x86_ell.exe agora

Hebraico:
Reduzir esta imagemExpandir esta imagem
Transferir
Transferir o Q315000_WXP_SP1_x86_heb.exe agora

Húngaro:
Reduzir esta imagemExpandir esta imagem
Transferir
Transferir o Q315000_WXP_SP1_x86_hun.exe agora

Italiano:
Reduzir esta imagemExpandir esta imagem
Transferir
Transferir o Q315000_WXP_SP1_x86_ita.exe agora

Japonês:
Reduzir esta imagemExpandir esta imagem
Transferir
Transferir o Q315000_WXP_SP1_x86_jpn.exe agora

Coreano:
Reduzir esta imagemExpandir esta imagem
Transferir
Transferir o Q315000_WXP_SP1_x86_kor.exe agora

Norueguês:
Reduzir esta imagemExpandir esta imagem
Transferir
Transferir o Q315000_WXP_SP1_x86_nor.exe agora

Polaco:
Reduzir esta imagemExpandir esta imagem
Transferir
Transferir o Q315000_WXP_SP1_x86_plk.exe agora

Português:
Reduzir esta imagemExpandir esta imagem
Transferir
Transferir o Q315000_WXP_SP1_x86_ptg.exe agora

Português (Brasil):
Reduzir esta imagemExpandir esta imagem
Transferir
Transferir o Q315000_WXP_SP1_x86_ptb.exe agora

Russo:
Reduzir esta imagemExpandir esta imagem
Transferir
Transferir o Q315000_WXP_SP1_x86_rus.exe agora

Espanhol:
Reduzir esta imagemExpandir esta imagem
Transferir
Transferir o Q315000_WXP_SP1_x86_esn.exe agora

Sueco:
Reduzir esta imagemExpandir esta imagem
Transferir
Transferir o Q315000_WXP_SP1_x86_sve.exe agora

Turco:
Reduzir esta imagemExpandir esta imagem
Transferir
Transferir o Q315000_WXP_SP1_x86_trk.exe agora
Data de edição: 20 de Dezembro de 2001

Para obter informações adicionais sobre como transferir ficheiros de suporte da Microsoft, clique no número de artigo que se segue para visualizar o artigo na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base):
119591 Como obter ficheiros de suporte da Microsoft a partir de serviços online
A Microsoft procedeu à detecção de vírus neste ficheiro. A Microsoft utilizou o software de detecção de vírus mais actual, disponível na data de publicação do ficheiro. O ficheiro está armazenado em servidores com segurança melhorada, que ajudam a impedir quaisquer alterações não autorizadas ao ficheiro. A versão inglesa desta correcção deverá ter os seguintes atributos de ficheiro ou posteriores:
   Data         Hora   Versão       Tamanho  Ficheiro
   ------------------------------------------------------
   18-Dec-2001  15:12  6.0.2448.0   324,608  Netsetup.exe
   17-Dec-2001  18:02  5.1.2600.23   26,624  Ssdpapi.dll
   17-Dec-2001  18:02  5.1.2600.23   41,472  Ssdpsrv.dll
   17-Dec-2001  18:02  5.1.2600.23  119,808  Upnp.dll
   06-Dec-2001  10:58  5.1.2600.22  245,248  Update.exe
   18-Dec-2001  15:53                32,573  Update.inf
   18-Dec-2001  17:27                   294  Update.ver
				

Ponto Da Situação

A Microsoft confirmou que este problema pode provocar um certo grau de vulnerabilidade na segurança do Windows XP. Este problema foi corrigido pela primeira vez no Windows XP Service Pack 1.

Mais Informação

Para obter informações adicionais sobre como corrigir este problema, clique nos números de artigo existentes abaixo para visualizar os artigos na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base):
314757 A memória intermédia não verificada de Universal Plug and Play pode colocar em risco o Windows Me
314941 A memória intermédia não verificada de Universal Plug and Play pode colocar em risco o Windows 98
Para obter mais informações sobre estas vulnerabilidades, visite o seguinte Web site da Microsoft:
http://www.microsoft.com/technet/security/bulletin/MS01-059.mspx

Propriedades

Artigo: 315000 - Última revisão: 13 de abril de 2006 - Revisão: 4.1
A informação contida neste artigo aplica-se a:
  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Professional Edition
Palavras-chave: 
kbqfe kbhotfixserver kbbug kbenv kbfix kbnetwork kbsecurity kbwinxpsp1fix KB315000

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com