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!
últimas postagens
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.
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.
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.
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.