常用功能:
-探测主机存活
- 扫描端口
- 探测主机操作系统信息
- 检测漏洞
nmap 常用的几个参数
nmap -v ip 显示详细的扫描过程 nmap -p ip 扫描指定端口 nmap -A ip 全面扫描操作系统 nmap -sP ip 进行ping扫描主机存活 nmap -Pn/-P0 ip 禁ping扫描 nmap -sS ip 进行tcp syn扫描 也叫半开放扫描 nmap -sT ip 进行tcp连接扫描 (准确性高)
端口状态信息
> open :端口开启
> closed :端口关闭
> filtered :端口被过滤,因为报文被防火墙拦截
> Unfiltered :不确定端口是否开放 没有被过滤
> open|filtered(closed|filtered) :不能确定端口是否开放(关闭)或者被过滤
nmap中文说明文档
TARGET SPECIFICATION 目标说明
-iL 从主机地址列表文件中导入扫描地址
-iR 随机选择目标进行扫描,unm hosts 表示数目,设置为0则无休止扫描
--exclude 排除某个主机地址
--excludefile 排除主机列表文件中的地址
*************************************************************
HOST DISCOVERY 主机发现
-sL 列表扫描,仅将指定的目标IP列举出来,不进行主机发现
-sn 和-sP一样,只利用ping扫描进行主机发现,不扫描目标主机的端口
-Pn 将所有指定的主机视为已开启状态,跳过主机发现过程
-PS TCP SYN ping ,发送一个设置了SYN标志位的TCP报文,默认端口为80,也可指定端口
-PA TCP ACK ping,发送一个设置了ACK标志位的TCP报文,默认端口为80,也可指定带你看
-PU UDP ping ,发送一个空的UDP报文到指定端口,可穿透只过滤TCp的防火墙
-P0 使用IP协议ping
-PR 使用ARP ping
-n/-R -n不用域名解析,加速扫描,-R为目标IP做为反向解析域名,扫描较慢一些
-dns-servers 自定义域名解析服务器地址
-traceroute 目标主机路由追踪
*************************************************************
SCAN TECHNIQUER 端口扫描
nmap 将目标端口分为6种状态:
open(开放的)
closed(关闭的)
filtered (被过滤的)
unfiltered (未被过滤的)可访问但不确定开发情况
open|filtered (开放或者被过滤)无法确定端口是否开放的还是被过滤的
closed|filtered (关闭或者被过滤)无法确定端口是否关闭还是被过滤的
nmap产生的结果基于目标机器的响应报文的,而这些主机肯能是不可信任的。会产生迷惑或者误导nmap的报文
-sS TCP SYN 扫描,不进行ping 半开放扫描,速度快隐蔽性好(不完成TCP连接),能够明确区分端口状态
-sT TCP 连接扫描,容易产生记录,效率低
-sA TCP ACK扫描,只设置ACK标志位,区别被过滤与未被过滤的
-sU UDP 服务扫描,例如DNS/DHCP等,效率低
-sN;-sF;-sX TCP Null,Fin,Xmas扫描,从RFC挖掘的微妙方法来区分开放关闭端口
-sl 利用僵尸主机上已知IP分段ID序列生成算法来探测目标上开放端口的信息,极端隐蔽
-sO IP协议扫描,可以确定目标主机支持哪些IP协议,例如TCP/ICMP等
************************************************************************
PORT SPECIFICATION AND SCAN ORDER 端口说明和扫描顺序-p 指定扫描的端口,可以是单个端口,也可以是端口范围,可以指定UDP或TCP协议扫描特定端口
-p<name> 指定扫描的协议,例如-p http 即可扫描http协议的端口状态
--exclude-ports 排除指定端口不扫描
-F 极速模式,仅扫描100个常用端口
************************************************************************
SERVICE/VERSION DETECTION 服务与版本探测。
Nmap-services 包含大量服务的数据库,Nmap通过查询该数据库可以报告哪些端口可能对应于扫描服务,但不一定正确
-sV 进行服务版本探测
--version-intensity<level> 设置版本扫描强度,范围为0-9,默认是7,强度越高,时间越长,服务越可能被正确识别
************************************************************************
SCRIPT SCAN 脚本扫描
允许用户自己编写的脚本来执行自动化的操作或者扩展nmap的功能,使用Lua脚本语言。
-sC 使用默认类别的脚本进行扫描
--script=<Lua scripts> 使用某个或某类脚本进行扫描,支持统配符描述
************************************************************************
OS DETECTION 操作系统探测
用TCP/IP协议栈fingerprinting进行探测,Nmap发送一系列TCP和UDP报文到远程主机,检查响应的每一个比特。测试后Nmap吧结果和数据库中超过1500个已知的fingerprints比较,如匹配则输出结果
-O 启用操作系统探测
-A 同时启用操作系统探测和服务版本探测
--osscan-limit 针对指定的目标进行操作系统检测
--osscan-guess 当nmap无法确定所检测的操作系统时,会尽可能地提供相近的匹配
************************************************************************
TIMING AND PERFORMANCE 时间和性能
Nmap开发的最高优先级是性能,但实际应用中很多因素会添加扫描时间,比如特定的扫描选项,防火墙配置以及版本扫描等
-T<0-5> 设置模板级数,在0-5中选择。T0、T1用于IDS规避,T2降低了扫描速度以使用更少的带宽和资源。默认为T3,未作任何优化。T4假设具有合适及可靠的网络从而加速扫描。T5假设具有特别快的网络或者愿为速度牺牲准确性
-host-timeout<time> 放弃低速目标主机,时间单位为毫秒
扫描漏洞
nmap --script=vuln ip
3、提供暴力破解的方式,可对数据库、smb、snmp等进行简单密码的暴力猜解
nmap --script=brute 192.168.88.131
4、利用FTP指定脚本对目标特定FTP协议进行密码爆破
nmap --script=ftp-brute.nse 192.168.88.131
5、利用第三方的数据库或资源,例如进行whoise解析
nmap --script=external 192.168.88.131
标签:nmap,扫描,端口,TCP,namp,--,主机 From: https://www.cnblogs.com/hbdgw/p/17499485.html