Devido ao ataque da última sexta feira (12/5) com o ransomware Wanna Cry, muitas analistas estão verificando se seus servidores estão vulneráveis ou não, existem algumas formas de verificar isso rapidamente usando o Metasploit e o Nmap.
Pelo Metasploit é possível fazer duas verificações, validar se o servidor está vulnerável e validar se é possível exploitar o servidor.
Verificando se o servidor está vulnerável.
Módulo: CVE-2017-0144 – MS17-010 SMB RCE Detection [link]
É preciso inserir o servidor alvo em RHOSTS e inserir o domínio, senha de algum usuário, de preferência que seja Domain Admin e inserir o login do usuário em SMBDomain, SMBPass e SMBUser respectivamente. É possível também inserir um range de IP, basta colocar a máscara, por exemplo 192.168.0.1/24, nesse caso é bom que se coloque o THREADS maior que 1 para aumentar as quantidades de checagens e fazer o processo mais rapidamente.
Depois é só aplicar o comando “run ou exploit” e verificar se o servidor está vulnerável ou não.
O outro método é um exploit que vai tentar comprometer o servidor, tendo sucesso na tarefa o exploit vai abrir uma Shell no servidor.
Esse exploit foi criado com base nos documentos publicados da NSA e faz parte do framework Eternal Blue, atualize seu Metasploit com o comando msfupdate, se mesmo assim o exploit não aparecer, você pode fazer download dele pelo Git e coloca-lo na pasta de exploits do Metasploit.
cd /usr/share/metasploit-framework/modules/exploits/windows/smb/ wget https://raw.githubusercontent.com/RiskSense-Ops/MS17-010/master/exploits/eternalblue/ms17_010_eternalblue.rb -O ms17_010_eternalblue.rb
O comando acima vai fazer download do exploit que está no GIT e nomea-lo como “ms17_010_eternalblue.rb”. Link do GIT [link]
Por padrão, o payload já vai estar preenchido, caso não, basta inserir os dados do sistema que vai fazer o teste de segurança, no meu caso, o Kali. A única configuração que precisa ser feita é do RHOST que será o alvo a ser testado, esse exploit não precisa inserir Domain ou username. Para iniciar o teste digite o comando “run ou exploit”.
Se o servidor estíver comprometido o “cmd” do servidor alvo será aberto, invasão feita com sucesso.
O Nmap também disponibilizou um script que verifica se o servidor tem essa vulnerabilidade, a última versão com esse script pode ser baixada no site oficial ou você pode baixar apenas esse script no GIT [link].
cd /usr/share/nmap/scripts wget https://raw.githubusercontent.com/cldrn/nmap-nse-scripts/master/scripts/smb-vuln-ms17-010.nse -O smb-vuln-ms17-010.nse
O script será baixada com o nome de “smb-vuln-ms17-010”. Não é preciso inserir domínio e nem qualquer outra informação.
O comando para rodar o nmap é:
nmap -p445 --script=smb-vuln-ms17-010 <ALVO>
A saída acima é de um servidor vulnerável e a saída abaixo é de um servidor sem a vulnerabilidade.