Cómo usar nmap en detalle

Nmap detallado

Nmap (Network Mapper) es una herramienta de auditoría de seguridad y detección de redes de código abierto. Está diseñada para escanear rápidamente redes grandes, incluida la detección y descubrimiento de hosts, puertos abiertos, sistema operativo y huellas dactilares de servicios de aplicaciones, WAF Identificar y vulnerabilidades de seguridad comunes.
Características de Nmap:

 - 主机探测:探测网络上的主机,如列出响应TCP和ICMP请求、开放特别端口的主机
 - 端口扫描:探测目标主机所开放的端口
 - 版本检测:探测目标主机的网络服务,版本其服务名称及版本号
 - 系统检测:探测目标主机的操作系统及网络设备的硬件特征
 - 支持探测脚本的编写:使用Nmap的脚本引擎(NSE)和lua编程语言

Empezando con Nmap

  • Escanear parámetros
    Ejecute Nmap directamente en la línea de comando o vea el documento de ayuda Nmap --help mostrará el uso y las funciones de Nmap

-iL: 从文件中导入目标主机或者目标网段
-iR: 随机选择目标主机
--exclude: 后面跟的主机或网段将不在扫描范围内
--excludefile: 导入文件中的主机或网段将不在扫描范围中

与主机发现方法相关的参数如下:

-sL: List Scan (列表扫描),仅列举指定目标的IP,不进行主机发现
-Sn: Ping Scan,只进行主机发现,不进行端口扫描
-Pn: 将所有指定的主机视作已开启,跳过主机发现的过程
PS/PA/PU/PY [portlist]: 使用TCP SYN/ACK或SCTP INIT/ECHO方式来发现
PE/PP/PM: 使用ICMP echo、timestamp、 netmask请求包发现主机
-PO [protocollist]: 使用IP协议包探测对方主机是否开启
-n/-R: -n表示不进行DNS解析-R表示总是进行DNS解析
--dns-servers<serv1[,serv2],...>: 指定DNS服务器
--system-dns: 指定使用系统的DNS服务器
--traceroute:追踪每个路由节点

与常见的端口扫描方法相关的参数如下:

-sS/sT/sA/sW/sM: 指定使用TCP SYN/Connect () /ACK/Window/Maimon scans的方式对目标主机进行扫描
-sU: 指定使用UDP扫描的方式确定目标主机的UDP端口状况
-sN/sF/sX: 指定使用TCP Null/FIN/Xmas scans秘密扫描的方式协助探测
对方的TCP端口状态
--scanflags<flags>: 定制TCP包的flags
-s|<zombie host [: probeport] >: 指定使用ldle scan的方式扫描目标
主机(前提是需要找到合适的zombie host)
-sY/sZ: 使用SCTP INIT/COOKIE-ECHO扫描SCTP协议端口的开放情况
-sO: 使用IP protocol扫描确定目标机支持的协议类型
-b<FTP relay host>: 使用FTP bounce scan扫描方式

跟端口参数与扫描顺序的设置相关的参数如下:

-p<port ranges>: 扫描指定的端口
-F: Fast mode (快速模式),仅扫描TOP 100的端口
-r: 不进行端口随机打乱的操作(如无该参数,Nmap会将要扫描的端口以
随机顺序的方式进行扫描,让Nmap的扫描不易被对方防火墙检测到)
--top-ports <number>: 扫描开放概率最高的number个端口(Nmap的作者曾做过大规模的互联网扫描,以此统计网络上各种端口可能开放的概率,并排列出最有可能开放端口的列表,具体可以参见nmap-services文件,默认情况下,Nmap会扫描最有可能的1000个TCP端口)
--port-ratio <ratio>: 扫描指定频率以上的端口。与上述--top-ports类似,这里以概率作为参数,概率大于--port-ratio的端口才被扫描,显然参数必须在0~1之间,想了解具体的概率范围可以查看nmap-services文件

与版本侦测相关的参数如下所示:

-sV: 指定让Nmap进行版本侦测
--version-intensity<level>: 指定版本侦测的强度(0~9),默认为7,数值越高,探测出的服务越准确,但是运行时间会比较长
--version-light: 指定使用轻量级侦测方式(intensity2) 
--version-all: 尝试使用所有的probes进行侦测(intensity 9)
--version-trace: 显示出详细的版本侦测过程信息

在了解以上参数及其含义后,再来看用法会更好理解,扫描命令格式: Nmap+扫描参数+目标地址或网段,比如一次完整的Nmap扫描命令如下:nmap-T4-A-v ip其中-A表示使用进攻性(Aggressive) 方式扫描;-T4表示指定扫描过程使用的时序(Timing);共有6个级别(0~5),级别越高,扫描速度越快,但也容易被防火墙或IDS检测并屏蔽掉,在网络通信状况良好的情况下推荐使用T4;-v表示显示冗余(verbosity)信息,在扫描过程中显示扫描的细节,有助于让用户了解当前的扫描状态

Método común

Nmap tiene muchos parámetros, pero generalmente no tantos. Los siguientes son los comandos más comunes durante las pruebas de penetración

  • Escanear una única dirección de destino
    Agregue la dirección de destino directamente después de Nmap para escanear
root@kali:~# nmap 192.168.1.100
Starting Nmap 7.70 ( https://nmap.org ) at 2020-08-28 10:29 CST
Nmap scan report for 192.168.1.100
Host is up (0.0016s latency).
Not shown: 996 closed ports
PORT     STATE SERVICE
135/tcp  open  msrpc
139/tcp  open  netbios-ssn
445/tcp  open  microsoft-ds
1025/tcp open  NFS-or-IIS
MAC Address: 00:0C:29:FE:8D:2D (VMware)

Nmap done: 1 IP address (1 host up) scanned in 3.48 seconds
  • Escaneo de múltiples direcciones de destino
    Si las direcciones de destino no están en el mismo segmento de red, o en el mismo segmento de red, pero no son continuas y pequeñas en número, puede usar el siguiente método para escanear:
root@kali:~# nmap 192.168.1.100 182.61.200.6
Starting Nmap 7.70 ( https://nmap.org ) at 2020-08-28 10:33 CST
Nmap scan report for 192.168.1.100
Host is up (0.00059s latency).
Not shown: 996 closed ports
PORT     STATE SERVICE
135/tcp  open  msrpc
139/tcp  open  netbios-ssn
445/tcp  open  microsoft-ds
1025/tcp open  NFS-or-IIS
MAC Address: 00:0C:29:FE:8D:2D (VMware)

Nmap scan report for 182.61.200.6
Host is up (0.039s latency).
Not shown: 998 filtered ports
PORT    STATE SERVICE
80/tcp  open  http
443/tcp open  https

Nmap done: 2 IP addresses (2 hosts up) scanned in 9.10 seconds
  • Escanear direcciones de destino en un rango
    Puede especificar escanear un segmento de red continuo y usar conexión en el medio. Por ejemplo, el siguiente comando significa que el rango de escaneo es 192.168.0.100-192.168.0.110
nmap 192.168.1.100-110
  • Escanee un segmento de red donde se encuentra la dirección de destino.
    Tome el segmento C como ejemplo. Si el destino es un segmento de red, puede escanear agregando una máscara de subred. El siguiente comando significa que el rango de escaneo es 192.168.1.1-192.168.1.255
nmap 192.168.1.100/24
  • Escanee todas las direcciones de destino en la lista de hosts 1.txt
nmap -iL 1.txt
  • Escanee todas las direcciones de destino excepto una determinada dirección de destino
nmap 192.168.1.100/24 -exclude 192.168.1.1
  • Buscar direcciones de destino distintas de la dirección de destino en un archivo
nmap 192.168.1.100/24 -excludefile 1.txt
  • Escanear el puerto 22, 445, 8080 de una dirección de destino
nmap 192.168.1.100 -p 22,445,8080
  • Rastrear ruta a la dirección de destino
nmap --traceroute 192.168.1.100
  • Escanee el estado en línea del segmento C donde se encuentra la dirección de destino
nmap -sP 192.168.1.100/24
  • Reconocimiento de huellas dactilares del sistema operativo de la dirección de destino
nmap -O 192.168.1.100
  • Detección de la versión del servicio proporcionada por la dirección de destino
nmap -sV 192.168.1.100
  • Detectar el estado del firewall
nmap -sF -T4 192.168.1.100

Reconocimiento estatal

La salida de nmap es la lista de exploración, incluido el número de puerto, el nombre del servicio, la versión del servicio y el protocolo
Inserte la descripción de la imagen aquí

Nmap avanzado

Los scripts de Nmap se dividen principalmente en las siguientes categorías:


Auth:负责处理鉴权证书(绕过鉴权)的脚本
Broadcast:在局域网内探查更多服务的开启情况,如DHCP/DNS/SQLServer等
Brute:针对常见的应用提供暴力破解方式,如HTTP/SMTP等
Default:使用-sC-A选择扫描时默认的脚本,提供基本的脚本扫描能力
Discovery:对网络进行更多信息的收集,如SMB枚举、SNMP查询等
Dos:用于进行拒绝服务攻击
Exploit:利用已知的漏洞入侵系统
External:利用第三方的数据库或资源,如Whois解析
Fuzzer:模糊测试脚本,发送异常的包到目标机,探测出潜在漏洞
Intrusive:入侵性的脚本,此类脚本可能引发对方的IDS/IPS的记录或屏蔽
Malware:探测目标是否感染了病毒、开启后门等信息
Safe:此类与Intrusive相反,属于安全性脚本
Version:负责增强服务与版本扫描功能的脚本
Vuln:负责检查目标是否有常见漏洞,如MS08-067

Los
usuarios de secuencias de comandos comunes también pueden configurar --script = category para escanear según sus necesidades


-sC/--script=default: 使用默认的脚本进行扫描
--script=<Lua scripts>: 使用某个脚本进行扫描
--script-args=key1=value1,key2=value.....: 该参数用于传递脚本里的参数,key1是参数名,该参数对应value1这个值;如有更多的参数,使用逗号连接
--script-args-file=filename: 使用文件为脚本提供参数
--script-trace: 如果设置该参数,则显示脚本执行过程中发送与接收的数据
--script-updatedb: 在Nmap的scripts目录里有一个script.db文件,该文件保存了当前Nmap可用的脚本,类似于一个小型数据库, 如果我们开启Nmap并调用了此参数,则Nmap会自行扫描scripts目录中的扩展脚本,进行数据库更新
--script-help: 调用该参数后,Nmap会输出该脚本对应的脚本使用参数,以及详细的介绍信息

  1. Escaneo de autenticación
    Use --script = auth para detectar contraseñas débiles de la aplicación en el host de destino o en el segmento de red donde se encuentra el host de destino
 nmap --script=auth 192.168.1.100
  1. Ataque de craqueo de fuerza bruta
    Nmap tiene la función de craqueo de fuerza bruta, que puede realizar adivinaciones de fuerza bruta de contraseña simple en bases de datos, SMB, SNMP, etc.
nmap --script=brute 192.168.1.100
  1. Escaneo en busca de vulnerabilidades comunes
    Nmap tiene la función de escaneo de vulnerabilidades, que puede verificar si el host de destino o el segmento de red tiene vulnerabilidades comunes
 nmap --script=vuln 192.168.1.100
  1. Análisis de servicios de aplicaciones
    Nmap tiene scripts de análisis para muchos servicios de aplicaciones comunes, como el servicio VNC, el servicio MySQL, el servicio Telnet, el servicio Rsync, etc. Aquí tomamos el servicio VNC como ejemplo:
nmap --script=realvnc-auth-bypass 192.168.1.100
  1. Detecta la apertura de más servicios en la LAN
nmap -n -p 445 --script=broadcast 192.168.1.100
  1. Análisis de Whois
    Utilice bases de datos o recursos de terceros para consultar la información de la dirección de destino
nmap -script external baidu.com

Obtenga el sistema operativo del host de destino Los parámetros Pn y -p0 significan que no se utiliza ping y se asume que todos los sistemas host están activos, lo que puede penetrar el firewall y evitar ser descubierto por el firewall.

nmap -O -Pn/p0 miaosj.cn

Supongo que te gusta

Origin blog.csdn.net/p_utao/article/details/108273615
Recomendado
Clasificación