Como usar o Nmap para verificação de vulnerabilidades?

Nmap, ou mapeador de rede, é um kit de ferramentas para testes de funcionalidade e penetração em uma rede, incluindo varredura de portas e detecção de vulnerabilidades.

Mecanismo de script do Nmap (NSE) Script é um dos recursos mais populares e poderosos do Nmap. Esses scripts de varredura de vulnerabilidade do Nmap são usados ​​por testadores de penetração e hackers para examinar vulnerabilidades conhecidas comuns.

Vulnerabilidades e exposições comuns (CVE) é um banco de dados de problemas de segurança de dados divulgados publicamente. Serve como modelo de referência para a detecção de vulnerabilidades e ameaças relacionadas à segurança dos sistemas de informação.

Neste artigo, veremos como usar o Nmap para verificação de vulnerabilidades.

Vamos começar!

Instalação do Nmap

O Nmap está pré-instalado em quase todas as distribuições Linux. Caso esteja faltando, você precisa instalá-lo manualmente. Ele pode ser facilmente instalado com o seguinte comando.

apt-get install nmap

E você também pode instalá-lo clonando o oficial repositório git.

git clone https://github.com/nmap/nmap.git

Em seguida, navegue até esse diretório e instale os requisitos usando os comandos abaixo.

./configure
make
make install

A versão mais recente deste software, bem como instaladores binários para Windows, macOS e Linux (RPM), estão disponíveis aqui.

Verificação de vulnerabilidades com Nmap

Nmap-vulners, vulscan e vuln são os scripts de detecção de CVE mais comuns e populares no mecanismo de pesquisa do Nmap. Esses scripts permitem descobrir informações importantes sobre falhas de segurança do sistema.

Vulneradores do Nmap

Um dos scanners de vulnerabilidade mais conhecidos é Vulneradores do Nmap. Vejamos como configurar essa ferramenta e como executar uma varredura CVE básica. O mecanismo de script Nmap pesquisa respostas HTTP para identificar CPEs para o script fornecido.

  Tire fotos e faça backup delas para três serviços diferentes automaticamente

Instalação

Para instalar o script Nmap-vulners, navegue até o diretório de scripts do Nmap usando o comando a seguir.

cd /usr/share/nmap/scripts/

A próxima etapa é clonar o repositório git.

git clone https://github.com/vulnersCom/nmap-vulners.git

Após clonar o repositório git, você não precisará fazer mais nada para a configuração. A ferramenta será instalada automaticamente.

E se você quiser ver os scripts NSE presentes no banco de dados Nmap-vulners, use o comando ls. Ele exibirá todos os scripts de extensão .nse no terminal.

Uso

É fácil usar scripts NSE. Simplesmente passe o argumento -script para nosso comando Nmap para instruir qual script NSE usar.

nmap -sV --script vulners [--script-args mincvss=<arg_val>] <target>

Não se esqueça de passar o argumento “-sV” ao usar scripts NSE. Nmap-vulners não poderão acessar o banco de dados de exploits Vulners se não receber nenhuma informação de versão do Nmap. Portanto, o parâmetro -sV é necessário o tempo todo.

Comando de exemplo

A sintaxe é bastante direta. Basta chamar o script com a opção “–script” e especificar o mecanismo e o alvo dos vulners para iniciar a varredura.

nmap -sV --script nmap-vulners/ <target>

Se você deseja varrer alguma porta específica, basta adicionar a opção “-p” ao final do comando e passar o número da porta que deseja varrer.

nmap -sV --script nmap-vulners/ <target> -p80,223

Nmap – vulnerabilidade

Os scripts NSE são classificados de acordo com um conjunto de categorias predeterminadas às quais cada script pertence. Autenticação, transmissão, força bruta, intrusivo, malware, seguro, versão e vuln são algumas das categorias. Você pode encontrar todos os tipos de categorias de scripts NSE e suas fases aqui.

Os scripts que estão na categoria “vuln” procuram vulnerabilidades conhecidas específicas e apenas relatam se alguma for identificada no sistema de destino.

nmap -sV --script vuln <target>

Nmap-vulscan

Vulcano é um script NSE que auxilia o Nmap na detecção de vulnerabilidades em alvos baseados em serviços e detecções de versão. vulscan é como um módulo para o Nmap que o transforma em um scanner de vulnerabilidade. A opção Nmap -sV permite a detecção de versão por serviço, que é usada para identificar possíveis explorações para as vulnerabilidades detectadas no sistema.

  8 Melhor software de gerenciamento de logs para solução de problemas mais rápida

Atualmente, os seguintes bancos de dados pré-instalados estão disponíveis:

  • exploitdb.csv
  • osvdb.csv
  • securitytracker.csv
  • openvas.csv
  • scipvuldb.csv
  • xforce.csv
  • securityfocus.csv
  • cve.csv

Instalação

Para instalar o Vulscan, primeiro, vá para o diretório de scripts do Nmap usando o seguinte comando.

cd /usr/share/nmap/scripts/

A próxima etapa é clonar o repositório git e instalar todos os requisitos.

git clone https://github.com/scipag/vulscan.git

ln -s `pwd`/scipag_vulscan /usr/share/nmap/scripts/vulscan 

Vulscan faz uso de bancos de dados pré-configurados salvos localmente em nossa máquina. Para atualizar o banco de dados, vá para o diretório do atualizador. Digite o seguinte comando em um terminal para navegar até o diretório do atualizador.

cd vulscan/utilities/updater/

Em seguida, altere as permissões do arquivo a ser executado no sistema.

chmod +x updateFiles.sh

E, finalmente, atualize os bancos de dados de exploração com o comando abaixo.

 ./updateFiles.sh

Uso

Vamos usar o vulscan para fazer uma varredura de vulnerabilidade do Nmap. O script vulscan NSE pode ser usado da mesma forma que o nmap-vulners.

nmap -sV --script vulscan <target>

Por padrão, o Vulscan pesquisará todos os bancos de dados simultaneamente. Leva muito tempo para consultar informações usando todos os bancos de dados. Usando o parâmetro vulscandb, você pode passar apenas um banco de dados CVE por vez.

--script-args vulscandb=database_name

Comando de exemplo

nmap -sV --script vulscan --script-args vulscandb=exploit.csv <target> -p 80,233

Verificação de vulnerabilidade individual

As verificações de vulnerabilidades individuais também podem ser realizadas utilizando scripts específicos dentro de cada categoria. Aqui está uma lista de todos os 600+ Scripts NSE e 139 Bibliotecas NSE.

  O que “7nm” e “10nm” significam para CPUs e por que são importantes?

Exemplos

  • http-csrf: Vulnerabilidades CSRF (Cross-Site Request Forgery) são detectadas por este script.
nmap -sV --script http-csrf <target>
  • http-sherlock: pretende explorar a vulnerabilidade “shellshock” em aplicativos da web.
nmap -sV --script http-sherlock <target>
  • http-slowloris-attack: Sem lançar um ataque DoS, este script verifica um servidor web ou um sistema de destino para vulnerabilidade para executar o ataque Slowloris DoS.
nmap -sV --script http-slowloris-check <target>
  • http-vmware-path-vuln: VMWare ESX, ESXi e Server são todos testados para uma vulnerabilidade de passagem de caminho
nmap -sV --script http-vmware-path-vuln <target>
  • http-passwd: Tenta recuperar /etc/passwd ou boot.ini para ver se um servidor web é vulnerável à passagem de diretório.
nmap -sV --script http-passwd <target>
  • http-internal-ip-disclosure: Ao enviar uma solicitação HTTP/1.0 sem um cabeçalho Host, esta verificação determina se o servidor web vaza seu endereço IP interno.
nmap -sV --script http-internal-ip-disclosure <target>
  • http-vuln-cve2013-0156: Detecta servidores Ruby on Rails que são vulneráveis ​​a ataques de DOS e injeção de comandos.
nmap -sV --script http-vuln-cve2013-0156 <target-address>

E, finalmente, aqui está uma lista de todos os scripts NSE que estão sob o “vulnerabilidade” categoria.

Seu sistema é capaz de detectar varreduras do Nmap?

O reconhecimento é a primeira fase do hacking ético e dos testes de penetração. Os hackers usam a fase de reconhecimento para localizar falhas e brechas em um sistema para atacar. Portanto, os sistemas de defesa devem ser capazes de detectá-los.

Você receberá alertas se usar ferramentas de SIEM (Security Information and Event Management), firewalls e outras medidas defensivas. E aqui está uma lista das melhores ferramentas SIEM para proteger sua empresa e organização contra ataques cibernéticos. Essas ferramentas até ajudam no registro de varreduras do Nmap. As varreduras de vulnerabilidade valem a pena, pois a identificação precoce pode evitar danos futuros aos sistemas.

Conclusão

Espero que você tenha achado este artigo muito útil para aprender a usar o Nmap para varredura de vulnerabilidades.

Você também pode estar interessado em aprender a lista de Open Source Web Security Scanners para encontrar vulnerabilidades.