Introducción
Nmap es una poderosa herramienta para descubrir información sobre máquinas en una red o en Internet. Le permite sondear una máquina con paquetes para detectar todo, desde servicios en ejecución y puertos abiertos hasta el sistema operativo y las versiones de software.
Al igual que otras herramientas de seguridad, Nmap no debe utilizarse de forma indebida. Solo escanee redes y máquinas que sean de su propiedad o que tenga permiso para investigar. Probar otras máquinas podría verse como un ataque y ser ilegal.
Dicho esto, Nmap puede contribuir en gran medida a proteger su propia red. También puede ayudarlo a asegurarse de que sus servidores estén configurados correctamente y no tengan puertos abiertos o no seguros. También informará si su firewall está filtrando correctamente los puertos que no deberían ser accesibles externamente.
Nmap está instalado de forma predeterminada en Kali Linux, por lo que puede abrirlo y comenzar.
Escaneos básicos
Nmap tiene valores predeterminados bastante inteligentes, por lo que puede simplemente abrir Nmap y ejecutar un escaneo sin especificar nada más que el objetivo. Entonces, ¿por qué no probarlo en una computadora en su red? Escanear la computadora que ejecuta Kali no le dará mucho, por lo que es mejor elegir otra computadora que posea. Si ya sabes la IP de uno, genial. Si no, Nmap tiene una herramienta para obtener las direcciones IP de las computadoras en su red.
Abra una terminal, si aún no lo ha hecho, y ejecute el siguiente comando de Linux.
# nmap -sn 192.168.1.0/24
Si su red doméstica no usa el 192.168.1.X
Estructura IP, sustituya en la suya. La secuencia termina con 0/24
para decirle a Nmap que escanee toda la subred.
Lo que verá cuando finalice Nmap es una lista de todos los dispositivos accesibles. Cada dispositivo tendrá un nombre (si corresponde), una dirección IP y una dirección MAC con un fabricante. Al usar los nombres y los fabricantes de hardware, debería poder saber qué es cada dispositivo en su red. Elija una computadora de su propiedad y escanéela.
# nmap 192.168.1.15
Simplemente puede escribir la IP de esa computadora. Nmap tardará unos segundos en sondear la computadora con paquetes e informar.
El informe será ordenado, pero contendrá una lista de puertos con su estado y a qué servicio corresponden. También mostrará la información de la dirección MAC y su IP nuevamente.
Banderas útiles
Aunque los valores predeterminados brindan información útil y puede saber qué puertos están abiertos, sería bueno obtener más datos. Nmap tiene toneladas de banderas que puede configurar para especificar cómo le gustaría que se ejecute. Hay demasiados para cubrir en esta guía básica, pero siempre puede consultar la página de manual detallada de Nmap para obtener más información.
-sS
El -sS
flag es el indicador de escaneo predeterminado para Nmap. Simplemente especifica la forma en que escaneará Nmap. Aunque es el valor predeterminado, probablemente sea una buena idea especificarlo de todos modos.
-T
El tiempo puede ser importante. El momento del análisis no solo determina cuánto tiempo llevará el análisis, sino que también puede ser fundamental para activar o no los cortafuegos y otras protecciones en un sistema de destino.
Si bien Nmap ofrece un control de tiempo más detallado, también proporciona un conjunto de seis esquemas de tiempo preconstruidos con -T
bandera. Estos intervalos varían de 0 a 5, siendo 0 el más lento y menos invasivo y 5 el más rápido y evidente. -T3
es el indicador de tiempo predeterminado, pero muchos usuarios prefieren -T4
para acelerar el escaneo.
-iL
Puede usar Nmap para escanear múltiples objetivos a la vez. Hacerlo se puede hacer fácilmente en línea cuando ejecuta Nmap.
# nmap -sS -T4 192.168.1.4 192.168.1.35 192.168.1.102
Para una pequeña cantidad de objetivos esto funciona, pero puede volverse engorroso rápidamente y no es tan fácil de repetir. El -iL
flag importa una lista de objetivos para que los use Nmap. De esta manera, puede guardar objetivos y repetir escaneos en una fecha posterior.
Antes de ejecutar Nmap, abra el editor de texto de su elección e ingrese un par de direcciones IP en su red.
$ vim ~/Documents/targets.txt 192.168.1.4 192.168.1.10 192.168.1.35 192.168.1.102 192.168.1.128
Guarde ese archivo y ejecute Nmap con -iL
bandera.
# nmap -sS -T4 -iL /home/user/Documents/targets.txt
Nmap leerá la lista y realizará un escaneo en cada entrada.
-F
De forma predeterminada, Nmap escaneará los 1000 puertos más utilizados en una máquina de destino. Esto, por supuesto, lleva tiempo. Si sabe que solo necesita o solo desea escanear los puertos más comunes para reducir el tiempo de ejecución de Nmap, puede usar -F
bandera. El -F
flag le dice a Nmap que solo escanee los 100 puertos más utilizados en lugar de los 1000 habituales.
# nmap -sS -T4 -F 192.168.1.105
-O
Si desea obtener información sobre el sistema operativo que se ejecuta en la máquina de destino, puede agregar el -O
marca para indicarle a Nmap que busque también información del sistema operativo. Nmap no es muy preciso en lo que respecta a la información del sistema operativo, pero por lo general se acerca mucho.
# nmap -sS -T4 -O 192.168.1.105
–abrir
Si solo está buscando qué puertos están abiertos en una máquina específica, puede decirle a Nmap que solo busque puertos abiertos con --open
bandera.
# nmap -sS -T4 --open 192.168.1.105
-sV
A veces, es útil saber qué software y qué versiones de ese software está ejecutando una máquina. Esto es especialmente bueno para investigar sus propios servidores. También le da una idea de qué información del servidor pueden ver otros. -sV
de Nmap le permite obtener la información más detallada posible sobre los servicios que se ejecutan en una máquina.
# nmap -sS -sV -T4 192.168.1.105
-p
Ocasionalmente, es posible que solo desee escanear puertos seleccionados con Nmap. El -p
flag le permite especificar puertos específicos para que Nmap los escanee. Nmap solo escaneará esos puertos especificados en la máquina de destino.
# nmap -sS -T4 -p 25,80,443 192.168.1.105
Nmap solo escaneará los puertos 25, 80 y 443 en la computadora en 192.168.1.105
.
Si no conoce el número de puerto de un servicio común, puede usar el nombre del servicio en su lugar, y Nmap sabrá buscar el puerto correcto.
# nmap -sS -T4 -p http,https,imap 192.168.1.105
-p-
Hay muchos más puertos en una computadora que los 1000 que Nmap escanea por defecto. Como resultado, algunos pueden perderse en un escaneo básico. Si está absolutamente preocupado por la seguridad de su sistema, vale la pena hacer un escaneo completo de cada puerto. Para hacer esto, use el -p-
bandera.
# nmap -sS -p- 192.168.1.105
Esto tomará un largo tiempo, por lo que no debe hacerse a la ligera.
-A
A estas alturas, ha adquirido muchas banderas para usar. Usarlos todos juntos puede ser muy incómodo. Nmap tiene el -A
solo por esta razón. Es una especie de bandera de "fregadero de cocina" que le dice a Nmap que reúna agresivamente tanta información como pueda.
# nmap -A 192.168.1.105
Salida de registro
Seguro que podría almacenar los resultados de Nmap. Bien tu puedes. Nmap tiene otra bandera que le permite almacenar la salida en una variedad de formatos diferentes. Esto es excelente para escaneos largos como los que tienen -p-
bandera. Para usar las capacidades de registro de Nmap, pase -oN
o -oX
junto con el nombre del archivo. -oN
registra la salida normal. -oX
registra la salida como XML. De forma predeterminada, Nmap sobrescribirá los registros existentes con los nuevos, así que tenga cuidado de no sobrescribir nada que no desee.
# nmap -sS -p- -oN Documents/full-scan.txt 192.168.7.105
Puede encontrar el registro completo en el archivo de texto cuando se completa Nmap.
Si quieres algo ridículo, prueba el -oS
bandera en su lugar.
Pensamientos finales
Finalmente, eso es todo. En realidad, eso ni siquiera está cerca, pero sin duda es suficiente para un curso intensivo rápido. Puede jugar con diferentes banderas y diferentes combinaciones de banderas para ajustar Nmap y obtener el resultado exacto que desea. Solo asegúrese de hacer esto solo en sus propias máquinas y redes, y tendrá una experiencia interesante que puede salvar sus datos.