Puertos de escaneo de NMAP para detectar servicios y vulnerabilidades

Puertos de escaneo de NMAP para detectar servicios y vulnerabilidades

Este tutorial explica cómo usar NMAP para encontrar servidores y vulnerabilidades detrás de los puertos.

NMAP es una de las herramientas de redes más útiles que le permite mapear redes, descubrir hosts, escanear puertos, diagnosticar problemas de red, detectar y explotar vulnerabilidades, y más.

Este tutorial se centra en la versión de servicios y las técnicas de detección de vulnerabilidades. Los lectores que no están familiarizados con NMAP pueden preferir comenzar leyendo nuestro tutorial de conceptos básicos de NMAP.

Todas las instrucciones en este documento contienen capturas de pantalla, lo que facilita a todos los lectores comprender cómo se implementan en el terminal.

Escanear puertos para detectar servicios con NMAP

La primera sección de este tutorial explica cómo detectar los servicios y su versión de software escuchando en puertos abiertos.

Como se muestra en la primera captura de pantalla, una exploración NMAP regular devolverá los puertos abiertos entre los 1,000 más utilizados. Por defecto, NMAP escanea los 1,000 puertos más populares.

Los puertos están asociados con protocolos de servicio relacionados. En la siguiente salida, NMAP encuentra puertos abiertos 21, 514 y 3128.

nmap 192.168.0.103

El usuario sabe que los puertos 21, 514 y 3128 están abiertos. Por ejemplo, él sabe que hay un servidor FTP en el puerto 21. Pero el usuario quiere aprender el software FTP y todos los demás servicios.

Para detectar software y versiones, el -SV (Versión) se puede pasar la bandera, como se muestra en la captura de pantalla a continuación. Donde puedes ver, VSFTPD 3.0.3 y Proxy de calamar 4.13 se detectan.

nmap -sv 192.168.0.103

El -A FLAG también devuelve las versiones de servicio junto con la información del sistema operativo.

En el siguiente ejemplo, el -A La bandera reveló que el objetivo es un sistema operativo Linux, probablemente 2.6.18 o 2.6.22:

sudo nmap -A nic.Arkansas

La siguiente sección de este tutorial describe las técnicas de NSE (motor de secuencias de comandos NMAP). Este ejemplo práctico muestra cuál -guion La bandera se implementa para incorporar el script de agarre de banner en el escaneo.

El banner Grab script analiza las respuestas del servicio para realizar su versión de software.

En el siguiente ejemplo, el bandera El script se ejecuta en el puerto de orientación de escaneo 21, revelando que el servidor FTP es Profesor.

nmap -p 21 -script = banner 66.97.40.223

Para finalizar esta sección y continuar con los tipos de escaneo de vulnerabilidad, el ejemplo práctico a continuación muestra el -O (Sistema operativo) Implementación del indicador para adivinar el sistema operativo de destino.

En este caso, NMAP es un 93% seguro de que el objetivo tiene Linux con Kernel 4.4.

sudo nmap -o 66.97.40.223

Estas son las técnicas NMAP más conocidas para el servicio y la detección de la versión del sistema operativo.

Detección de vulnerabilidades con NSE (motor de secuencias de comandos NMAP)

Esta sección describe algunas técnicas para detectar vulnerabilidades a través de escaneos NMAP, con la ayuda de la NSE (motor de secuencias de comandos NMAP), explicado en nuestro tutorial de NSE.

El motor de secuencias de comandos NMAP es un conjunto de scripts que los usuarios pueden incluir en sus escaneos, diseñados principalmente para detectar y explotar vulnerabilidades. Los usuarios también pueden escribir sus scripts para fines personalizados.

El primer paso para los scripts de NSE es actualizar la base de datos, asegurándose de que NMAP esté actualizado con las últimas vulnerabilidades y técnicas.

Para actualizar NSE, ejecute el siguiente comando:

sudo nmap--script-actualizadob

Después de actualizar la base de datos, el usuario puede ejecutar varios scripts para encontrar vulnerabilidades. Los scripts se clasifican por categorías que puede ver en https: // nmap.org/nsedoc/categorías/.

En el siguiente ejemplo, el -guion la bandera llama a los scripts desde el vuln categoría, escaneo para alrededor de 150 vulnerabilidades populares.

sudo nmap --script vuln 66.97.40.223 -V

Como puede ver en la siguiente captura de pantalla, NMAP informa que algunas vulnerabilidades se descartan, mientras que otras son probables:

El http-csrf El script permite a los usuarios escanear los sitios web para encontrar vulnerabilidades CSRF (solicitud de solicitud de secuencias de comandos cruzadas).

sudo nmap --script http-csrf linuxhint.com -v

Como puede ver a continuación, si es verbosidad (-V) se instruye, NMAP imprime el resultado de todos los cheques que realiza en el sitio web.

Los usuarios pueden implementar comodines para completar los nombres de scripts. En el siguiente ejemplo, el usuario agrega todos los scripts relacionados con HTTP o todos los scripts cuyo nombre comienza con "http", independientemente de cómo continúa.

sudo nmap --script "http*" Linuxhint.com -v

El motor de secuencias de comandos NMAP puede dirigirse a redes enteras para detectar computadoras infectadas con malware. Esta es una gran técnica para que los administradores aborden posibles intrusiones de malware.

Los scripts de malware disponibles se pueden encontrar en https: // nmap.org/nsedoc/categorías/malware.html.

Detectar vulnerabilidades con NMAP y Vulscan

VulScan es un conjunto adicional de scripts para NSE, que no se incluye en NMAP de forma predeterminada.

Vulscans se explica profundamente en el tutorial NMAP VulScan, pero esta sección ofrece una breve revisión, instalación e instrucciones básicas.

VulScan es un script de motor de secuencia de comandos NMAP para ayudar en tareas de detección de vulnerabilidades,

Para obtenerlo, clone Vulscan usando el git Comando, como se muestra a continuación:

Git clon https: // github.com/scipag/vulscan

Cree un enlace suave al directorio NSE Scripts ejecutando el siguiente comando:

sudo ln -s 'pwd'/scipag_vulscan/usr/share/nmap/scripts/vulscan

Ahora, Vulscan está disponible para ser llamado por el -guion bandera para ejecutar controles de vulnerabilidad adicionales.

La sintaxis es la siguiente:

nmap -sv --script = vulscan/vulscan.NSE

En el siguiente ejemplo, VulScan se lanza contra Linuxhint.comunicarse.

Cuando VulScan detecta un hoyo de seguridad probable, ejecuta todos los scripts relacionados.

nmap -sv --script = vulscan/vulscan.NSE Linuxhint.comunicarse

VulScan es una excelente adición para los usuarios de NMAP, especialmente aquellos utilizados para el motor de secuencias de comandos NMAP. Le recomendamos encarecidamente que continúe leyendo nuestro tutorial VulScan mencionado en la introducción de esta sección.

Vulneros

Use el siguiente comando para clonar nmap-vulners en su directorio de scripts nse:

sudo git clon https: // github.com/vulnerscom/nmap-vulners.git/usr/share/nmap/scripts/vulners

Ejecutar NMAP con Vulners usando la siguiente sintaxis:

sudo nmap --script vulners/vulners.NSE

Sobre el NSE (motor de secuencias de comandos NMAP)

El NSE (motor de secuencias de comandos NMAP) se encuentra entre las características de NMAP más requeridas.

Es una colección de scripts para automatizar y personalizar las tareas de escaneo. Los scripts se pueden ejecutar antes, durante o después del escaneo.

Mientras que NMAP ofrece diversas categorías de script, los usuarios también pueden escribir sus propios scripts en el idioma Lua.

Además, los scripts NSE se pueden utilizar para la explotación de vulnerabilidad a la detección de servicios y vulnerabilidades o incluso para ataques de fuerza bruta.

Los guiones se dividen en las siguientes categorías: auténtico, transmisión, por defecto, descubrimiento, dos, explotar, malware, intruso, fuzzador, externo, seguro, versión, y vuln, La categoría utilizada en el primer ejemplo de uso en la sección NSE.

Los dispositivos virtuales metasplotables son un excelente recurso para probar las capacidades NSE. Los scripts también se pueden incluir en escaneos masivos dirigidos a múltiples redes.

Los scripts del NSE se clasifican de acuerdo con criterios específicos basados ​​en el momento de la ejecución del script, el propósito del script y la funcionalidad.

La primera clasificación basada en el tiempo de ejecución incluye cuatro tipos de scripts:

  • Scripts de prerule: Estos se ejecutan antes de cualquier fase de escaneo NMAP, por ejemplo, scripts utilizados para generar nuevos objetivos.
  • Scripts de host: Los scripts de host se ejecutan en el proceso de escaneo.
  • Scripts de servicio: Estos scripts se ejecutan después de escanear cada lote de objetivos, como los scripts de host.
  • Scripts de postrule: Los scripts postrule se ejecutan después del proceso de escaneo; Estos scripts pueden explotar las vulnerabilidades descubiertas en el proceso de escaneo.

La segunda clasificación se basa en la seguridad y los propósitos del script.

El propósito y la seguridad definen la categoría de script. Las categorías se enumeraron previamente en este documento.

Conclusión

Nmap es extremadamente potente y flexible. En otros tutoriales en NMAP Port Scan, el descubrimiento del host no fue revelado. El contenido anterior muestra a cualquier usuario, independientemente del nivel de conocimiento, puede introducirse a la seguridad de TI y ejecutar tareas importantes, como escaneos de vulnerabilidad. Todas las instrucciones anteriores son válidas para todas las distribuciones de Linux y probablemente para la herramienta de línea de comandos de Windows también.

NMAP es el escáner de puerto vivo más antiguo, desarrollado inicialmente por Fyodor Vaskovich en 1997 para descubrir servicios y redes de mapas. Escrito inicialmente en C se reescribió a C ++ y mejoró la comunidad de código abierto en su segundo lanzamiento de 1998. Continúa agregando características y mejoras hoy.

Probablemente sea el motor de escaneo más utilizado para diagnóstico y fines de seguridad, el mercado ofrece muchas alternativas, pero las características de NMAP y los esfuerzos detrás de su comunidad aún no se equivocan.

Gracias por leer este tutorial de NMAP explicando cómo escanear puertos para encontrar servicios y vulnerabilidades. Sigue siguiéndonos para obtener más contenido profesional de Linux y TI de seguridad.