Este tutorial explica como usar o NMAP para encontrar servidores e vulnerabilidades atrás das portas.
O NMAP é uma das ferramentas de rede mais úteis que permitem mapear redes, descobrir hosts, digitalizar portas, diagnosticar problemas de rede, detectar e explorar vulnerabilidades e muito mais.
Este tutorial se concentra na versão de serviços e nas técnicas de detecção de vulnerabilidades. Os leitores não familiarizados com o NMAP podem preferir começar lendo nosso tutorial do NMAP Basics.
Todas as instruções deste documento contêm capturas de tela, facilitando para todos os leitores entenderem como eles são implementados no terminal.
Digitalizar portas para detectar serviços com NMAP
A primeira seção deste tutorial explica como detectar serviços e sua versão de software ouvindo em portas abertas.
Conforme mostrado na primeira captura de tela, uma varredura nmap regular retornará as portas abertas entre as 1.000 mais usadas. Por padrão, o NMAP digitaliza as 1.000 portas mais populares.
As portas estão associadas a protocolos de serviço relacionados. Na saída a seguir, o NMAP encontra portas abertas 21, 514 e 3128.
NMAP 192.168.0.103O usuário sabe que as portas 21, 514 e 3128 estão abertas. Por exemplo, ele sabe que existe um servidor FTP na porta 21. Mas o usuário deseja aprender o software FTP e todos os outros serviços.
Para detectar software e versões, o -Sv (Versão) o sinalizador pode ser passado, conforme mostrado na captura de tela abaixo. Onde você pode ver, Vsftpd 3.0.3 e Procurador de lula 4.13 são detectados.
NMAP -SV 192.168.0.103O -A Flag também retorna versões de serviço juntamente com as informações do sistema operacional.
No exemplo seguinte, o -A Flag revelou que o alvo é um sistema operacional Linux, provavelmente 2.6.18 ou 2.6.22:
sudo nmap -uma nic.arA próxima seção deste tutorial descreve técnicas de NSE (mecanismo de script nmap). Este exemplo prático mostra qual -roteiro A bandeira é implementada para incorporar o script de captura de banner na varredura.
O Script Banner Grab Script Analyzes Service Responde para realizar sua versão de software.
No exemplo seguinte, o bandeira O script é executado na porta 21 de direcionamento de varredura, revelando o servidor FTP é Proftpd.
NMAP -P 21 -Script = Banner 66.97.40.223Para encerrar esta seção e continuar com os tipos de varredura de vulnerabilidade, o exemplo prático abaixo mostra o -O (Sistema operacional) Implementação de sinalizador para adivinhar o sistema operacional alvo.
Nesse caso, o NMAP tem 93% de certeza de que o alvo tem Linux com o kernel 4.4.
sudo nmap -o 66.97.40.223Essas são as técnicas NMAP mais conhecidas para detecção de versão e versão do OS.
Detectar vulnerabilidades com NSE (motor de script nmap)
Esta seção descreve algumas técnicas para detectar vulnerabilidades por meio de varreduras NMAP, com o auxílio do NSE (NMAP Script Engine), explicado em nosso tutorial NSE.
O mecanismo de script nmap é um conjunto de scripts que os usuários podem incluir em suas varreduras, projetadas principalmente para detectar e explorar vulnerabilidades. Os usuários também podem escrever seus scripts para fins personalizados.
O primeiro passo para os scripts NSE é atualizar o banco de dados, certificando -se de que o NMAP esteja atualizado com as últimas vulnerabilidades e técnicas.
Para atualizar o NSE, execute o seguinte comando:
sudo nmap--script-upDatedBDepois de atualizar o banco de dados, o usuário pode executar vários scripts para encontrar vulnerabilidades. Os scripts são classificados por categorias que você pode ver em https: // nmap.org/nsedoc/categorias/.
No exemplo seguinte, o -roteiro Flag chama os scripts do vuln categoria, digitalização para cerca de 150 vulnerabilidades populares.
sudo nmap -script vuln 66.97.40.223 -VComo você pode ver na captura de tela a seguir, o NMAP relata algumas vulnerabilidades são descartadas, enquanto outros são prováveis:
O HTTP-CSRF O script permite que os usuários digitalizem sites para encontrar vulnerabilidades CSRF (Scripts Scripts Solicy).
sudo nmap-script http-csrf linuxhint.com -vComo você pode ver abaixo, se a verbosidade (-v) é instruído, o NMAP imprime o resultado de todas as verificações que faz no site.
Os usuários podem implementar curingas para preencher os nomes de scripts. No exemplo a seguir, o usuário adiciona todos os scripts relacionados ao HTTP ou todos os scripts cujo nome começa com "http", independentemente de como ele continua.
sudo nmap - -script "http*" linuxhint.com -vO mecanismo de script nmap pode segmentar redes inteiras para detectar computadores infectados com malware. Esta é uma ótima técnica para os administradores abordarem possíveis intrusões de malware.
Scripts de malware disponíveis podem ser encontrados em https: // nmap.org/nsedoc/categorias/malware.html.
Detectar vulnerabilidades com NMAP e Vulscan
O VulScan é um conjunto adicional de scripts para NSE, que não está incluído no NMAP por padrão.
Os vulcans são profundamente explicados no tutorial do NMAP Vulscan, mas esta seção oferece uma breve revisão, instalação e instruções básicas.
Vulscan é um script de mecanismo de script nmap para ajudar em tarefas de detecção de vulnerabilidades,
Para obtê -lo, clonar vulscan usando o git comando, como mostrado abaixo:
clone git https: // github.com/scipag/vulscanCrie um link suave para o diretório NSE Scripts, executando o seguinte comando:
sudo ln -s 'pwd'/scipag_vulscan/usr/share/nmap/scripts/vulscanAgora, o vulscan está disponível para ser chamado pelo -roteiro sinalizador para executar verificações adicionais de vulnerabilidade.
A sintaxe é a seguinte:
nmap -sv - -script = vulscan/vulscan.NSENo exemplo seguinte, o vulscan é lançado contra Linuxhint.com.
Quando o VulScan detecta um provável orifício de segurança, ele executa todos os scripts relacionados.
nmap -sv - -script = vulscan/vulscan.NSE Linuxhint.comO VulScan é um excelente complemento para os usuários do NMAP, especialmente aqueles usados no mecanismo de script nmap. É altamente recomendável que você continue lendo nosso tutorial do Vulscan mencionado na introdução desta seção.
Vulners
Use o seguinte comando para clonar NMAP-Vulners no seu diretório de scripts NSE:
clone sudo git https: // github.com/vulnercom/nmap-vulners.git/usr/share/nmap/scripts/vulnersExecute o NMAP com vulners usando a seguinte sintaxe:
sudo nmap -script vulners/vulners.NSESobre o NSE (mecanismo de script nmap)
O NSE (mecanismo de script nmap) está entre os recursos NMAP mais necessários.
É uma coleção de scripts para automatizar e personalizar tarefas de digitalização. Os scripts podem ser executados antes, durante ou após a varredura.
Enquanto o NMAP oferece categorias de scripts diversas, os usuários também podem escrever seus próprios scripts na linguagem Lua.
Além disso, os scripts NSE podem ser usados para exploração de vulnerabilidades para detecção de serviço e vulnerabilidade ou mesmo para ataques de força bruta.
Os scripts são divididos nas seguintes categorias: Auth, transmissão, padrão, descoberta, Dos, explorar, malware, intrusivo, Fuzzer, externo, seguro, versão, e vuln, A categoria usada no primeiro exemplo de uso na seção NSE.
Os dispositivos virtuais metasploitáveis são um excelente recurso para testar recursos NSE. Os scripts também podem ser incluídos em varreduras maciças direcionadas a várias redes.
Os scripts do NSE são categorizados de acordo com critérios específicos com base no momento da execução do script, o objetivo do script e a funcionalidade.
A primeira classificação com base no tempo de execução inclui quatro tipos de scripts:
A segunda classificação é baseada na segurança e nos propósitos do roteiro.
Objetivo e segurança definem a categoria de script. As categorias foram listadas anteriormente neste documento.
Conclusão
NMAP é extremamente poderoso e flexível. Em outros tutoriais sobre a varredura do NMAP, a descoberta do host não foi revelada. O conteúdo anterior mostra qualquer usuário, independentemente do nível de conhecimento, pode ser introduzido em segurança de TI e executar tarefas importantes, como varreduras de vulnerabilidade. Todas as instruções acima são válidas para todas as distribuições Linux e provavelmente para a ferramenta de linha de comando do Windows também.
O NMAP é o mais antigo scanner de porto vivo, desenvolvido inicialmente pela Fyodor Vaskovich em 1997 para descobrir serviços e mapa redes. Escrito inicialmente em C foi reescrito para C ++ e altamente melhorado pela comunidade de código aberto em seu segundo lançamento de 1998. Continua adicionando recursos e melhorias hoje.
É provavelmente o mecanismo de varredura mais usado para diagnosticar e segurança, o mercado oferece muitas alternativas, mas os recursos do NMAP e os esforços por trás de sua comunidade ainda não são iguais.
Obrigado por ler este tutorial do NMAP explicando como digitalizar portas para encontrar serviços e vulnerabilidades. Continue nos seguindo para mais Linux e conteúdo profissional de segurança de TI.