O GLOBO - Informática Etc. - Carlos Alberto Teixeira
Artigo: 420 - Escrito em: 1999-09-08 - Publicado em: 1999-09-13


Seu Windows tem uma backdoor, sabia?


Uma porta secreta pode dar aos gorilas acesso à sua máquina

Na semana passada explodiu mais um pequeno escândalo microsoftiano que foi magistralmente levantado pelo nosso colega Duncan Campbell, da TechWeb, numa investigação de primeira categoria. Segundo ele, a Microsoft inseriu secretamente no corpo do Windows duas chaves de acesso. A primeira seria usada pela Microsoft para agitar à vontade no Windows do usuário e a segunda permitiria ao NSA (National Security Agency) do governo americano penetrar no sistema de qualquer usuário usando Windows. Estas chaves se chamam "KEY" e "NSAKEY" e estão em todas as versões desde o Windows 95 OSR2. O Windows 2000 teria ainda uma terceira chave similar.

Qualquer programador experiente já inseriu em seus códigos alguma portinhola escondida, usualmente chamada "backdoor", que lhe permitisse atuar no funcionamento de seu programa de forma secreta, mesmo quando este já estivesse rodando em regime de produção. No caso do Windows, em que o controle ao código fonte dentro da Microsoft é altamente compartimentalizado, estas chaves parecem ter sido inseridas sem o conhecimento de diversos gerentes e responsáveis, mas certamente algum figurão lá dentro deu a ordem.

Outro objetivo destas chaves agora descobertas no Windows poderia ser a de permitir a instalação de módulos certificados pela Microsoft ou pela NSA na máquina dos usuários, sem que estes tivessem conhecimento disso. Esta segunda finalidade, no final das contas, acaba constituindo por si só uma séria falha de segurança no sistema Windows como um todo, uma vez que um indivíduo mal intencionado poderia elaborar um programa que falsificasse a chave da NSA e entregasse um módulo de software que seria aceito como autorizado e se instalaria silenciosamente na máquina do incauto cliente da Pequena Mole. A leitora tem que me prometer que não vai fazer bobagem com isto, mas um exemplo de como substituir a chave NSAKEY por uma chave de teste, mantendo intacto o Microsoft Cryptographic API (MS-CAPI) ou CryptoAPI, pode ser encontrado em <www.cryptonym.com/hottopics/msft-nsa/ReplaceNsaKey.zip>. Trata-se de um programeto escrito por Andrew Fernandes <[email protected]>, cientista-chefe da Cryptonym Corporation, de Ontario, Canadá. O programa explora uma falha que ele encontrou na forma com que foi implementada uma função do API chamada "crypto_verify". Trata-se de um programa demo, feito para rodar em Windows NT4, mas que, segundo o Andrew, roda também em Windows 2000, incluindo o build 2072 (RC1).

As investigações foram feitas em cima do trabalho de Nicko van Someren, da NCipher, e do Adi Shamir, o "S" de RSA, o padrão criptográfico. Andrew estava procurando por falhas no CryptoAPI, que é o bloco fundamental de segurança criptográfica no Windows. Qualquer falha neste módulo abriria as portas do sistema para ataques eletrônicos. Quando começou a estudar o Service Pack 5 do Windows NT4, percebeu que algum programador distraído havia se esquecido de remover as informações simbólicas de debug que identificavam o valor semântico das variáveis. Foi então surgiram os nomes das belezocas: KEY e NSAKEY.

A revelação desta lamentável backdoor foi feita pelo Andrew Fernandes em sua concorrida palestra na Crypto'99 Conference, em 15 de agosto passado, em Santa Barbara, Califórnia. A proeza não foi conseguida com engenharia reversa, mas sim usando ferramentas da própria Microsoft, num lance de sorte, enquanto Andrew estava debugando um programa próprio seu. Os representantes da Microsoft presentes ao evento tiveram que engolir em seco.

A história é longa e cheia de detalhes interessantíssimos. Vale a pena ler a coisa toda em inglês. O comunicado do Andrew está em <www.cryptonym.com/hottopics/msft-nsa.html> e a matéria do Duncan em <www.techweb.com/wire/story/TWB19990903S0014>. A Microsoft foi pega de surpresa e negou tudo da forma mais descarada possível, alegando desculpas estapafúrdias, como por exemplo alegar que a segunda chave (a NSA) teria sido criada para o caso de se perder a primeira devido a desastres naturais. A negação fajuta e os desmentidos podem ser lidos em <www.techweb.com/wire/story/TWB19990906S0003>.

Para gerentes não-americanos na área de IT (Information Technology) que estejam usando Windows NT para operar centros de processamento de dados de (supostamente) alta segurança, a descoberta é aterrorizante. O governo americano está fazendo o maior jogo duro com a exportação de criptografia forte e ao mesmo tempo conseguiu que se instalasse um flagrante backdoor criptográfico no sistema operacional mais vendido e pirateado do mundo.

E como se já não bastasse isso tudo, uma outra backdoor foi encontrada dias depois no Windows 2000 Beta 3, esta nada tendo a ver com chaves criptográficas, mas sim com um baita buraco deixado no software. Um código simples em HTML poderia acionar o cliente "telnet" de um sistema rodando o Beta 3 e descobrir a identificação de "autlogin" da máquina, uma conta sem password com privilégios de administrador que é criada silenciosamente pelo Windows 2000 na máquina do usuário. De posse dessa identificação, o invasor poderia fazer a festa na máquina da vítima. Segundo a ZDnet, a Microsoft declara que já sabia desse furo dias antes de liberar o Beta 3 e garante que estará reparando a falha na próxima versão do sistema operacional.


[ Voltar ]