Utilizando Nmap Scripting Engine (NSE)

Utilizando Nmap Scripting Engine (NSE)

O NSE (Nmap Scripting Engine) permite que o usuário execute scripts através do NMAP. Há diversos scripts prontos do próprio NMAP. Veja a lista de scripts:
https://nmap.org/nsedoc/scripts/

Antes de tudo, certifique-se de que o nmap está instalado e atualizado em sua máquina:

apt update; apt install nmap

Ao passo que seu nmap está instalado e atualizado, você pode procurar um script em sua  máquina no caminho /usr/share/nmap/scripts/.

Nesse sentido, também podemos utilizar o locate e grep para localizar algum script da seguinte forma:

locate *nse | grep ms17
Localizando nmap scripts

Desta forma, foi encontrado o script “smb-vuln-ms17-010”, que verifica se o alvo está vulnerável ao MS17-010 (a vulnerabilidade explorada pelo Ransonware Wannacry).
Agora que sabemos o nome do script, podemos executar o comando da seguinte forma:

nmap -p445 --script smb-vuln-ms17-010 <IP ALVO>

Utilizaremos como exemplo uma máquina virtual vulnerável ao MS17-010. Veja o resultado:

Utilizando nmap script para o ms17-010

Como resultado, o host 192.168.171.129 encontra-se vulnerável ao MS17-010 e pode ser explorado.

Entretanto, em alguns casos, será necessário adicionar alguns argumentos ao script utilizado através do parâmetro -script-args. Iremos exemplificar o uso através do script ssh-brute, que realiza um ataque de brute force no serviço SSH do alvo.

nmap --script ssh-brute --script-args userdb=/home/kali/userlist.txt,passdb=/home/kali/passlist.txt,ssh-brute.timeout=2s -p 22 <IP ALVO>
Nmap script ssh-brute

No comando acima foi utilizada uma lista personalizada de usuários e senhas em nosso brute force. Como resultado, foram obtidas as credenciais de um usuário. Os argumentos utilizados no script foram:

  • Utilização do arquivo /home/kali/userlist.txt como base de Usuários (userdb=/home/kali/userlist.txt)
  • Utilização do arquivo /home/kali/passlist.txt como base de senhas (passdb=/home/kali/passlist.txt)
  • Configurado o Timeout da conexão para 2 segundos (ssh-brute.timeout=2s)

Em outras palavras, o script foi editado para que alguns parâmetros da execução fossem alterados.

Por fim, agradecemos a leitura e esperamos que este post tenha te ajudado de alguma maneira! Caso tenha alguma dúvida, entre em contato conosco pelo Telegram , Facebook ou Instagram ! Veja mais posts no IronLinux !