nmap的使用方法

发布于 2020-03-20  567 次阅读


0x01 简介

Nmap,也就是Network Mapper,最早是Linux下的网络扫描和嗅探工具包。 nmap是一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端。确定哪些服务运行在哪些连接端,并且推断计算机运行哪个操作系统(这是亦称 fingerprinting)。它是网络管理员必用的软件之一,以及用以评估网络系统安全。 正如大多数被用于网络安全的工具,nmap 也是不少黑客及骇客(又称脚本小子)爱用的工具 。系统管理员可以利用nmap来探测工作环境中未经批准使用的服务器,但是黑客会利用nmap来搜集目标电脑的网络设定,从而计划攻击的方法。 ——百度百科

0x02 使用方法

#扫描单个目标
nmap 192.168.1.100
#扫描多个目标
nmao 192.168.1.100 192.168.1.111 192.168.2.8
nmap 192.168.1.100,111,115,127
nmap 192.168.1.100-200
#扫描一个网段
nmap 192.168.1.1/24
nmap 192.168.1.1/16
#-A 参数将大多数有用的扫描命令集成在一起使用
nmap -A 192.168.1.100
#-O 参数获取目标的系统版本
nmap -O 192.168.1.100
#-PN 跳过ping尝试,对目标进行深度扫描(-PN 和 -P0 是一样的)
nmap -PN 192.168.1.111
#-sn 探测存活主机
nmap -sn 192.168.1.1/24
#扫描指定端口
nmap -p 80,443,135,445 192.168.1.100
nmap -p 80-1000 192.168.1.100 #扫描80-1000之间的端口
nmap -p- 192.168.1.100 #扫描1-65535所有的端口
#使用ping扫描
nmap -sP 192.168.1.100
#使用TCP扫描
nmap -sT 192.168.1.100
#使用UDP扫描
nmap -sU 192.168.1.100
#使用SYN半开放扫描
nmap -sS 192.168.1.100
#使用ACK扫描
nmap -PA 192.168.1.120
#使用文本扫描
nmap -iL ip.txt

0x03 时间选项

#探测报文延迟时间(-T0 ~ -T5)数值越大越快,延迟时间可以提高扫描的精确度
nmap -T4 192.168.1.100
<--
-T0  偏执的:非常非常慢,用于IDS逃逸
-T1  猥琐的:相当慢,用于IDS逃逸
-T2  有礼貌的:降低速度以消耗更小的带宽,比默认慢十倍
-T3  普通的:默认,根据目标的反应自动调整时间模式
-T4  野蛮的:假定处在一个很好的网络环境,请求可能会淹没目标
-T5  疯狂的:非常野蛮,很可能会淹没目标端口或是漏掉一些开放端口
-->
#TTL(存活时间)是因特网协议(IP)报文分组中的一个值
nmap -ttl 100 192.168.1.100
#设置timeout时间
nmap --host-timeout 1m 192.168.1.100
#指针延迟,可以提高准确度
nmap --scan-delay 10s 192.168.1.100
#设置每秒最低50个数据包发送量,太高扫描结果可能不准确
nmap --min-rate 50 192.168.1.100
#设置每秒最大10个数据包发送量
nmap --max-rate 10 192.168.1.100

0x04 和防火墙的乐趣

#绕过防火墙
nmap -f 192.168.1.111
#使用ETH,这个命令会发送小于8字节的探针,而不是整个包
nmap eta ETH 192.168.1.100
#指定最大传输单位(字节),可以是8的任何倍数(16,32,64)
nmap --mtu 8 192.168.1.100
#使用诱饵选项,使用许多伪装的ip地址
nmap -D RND:10 192.168.1.100
#使用伪装ip地址进行扫描,支持伪装多个ip地址
nmap -D 10.10.1.111 192.168.1.100
#指定端口进行扫描
nmap --source-port 88 192.168.1.100
#根据特定的目标,在发送的数据包中加入一些随机的数据
nmap --data-length 25 192.168.1.100
#给目标发送一些不正确的检测信息
nmap --badsum 192.168.1.111

0x05 输出文件

#-oN 参数标准输出
nmap -oN scan.txt 192.168.1.1/24
#-oX 参数输出xml文件
nmap -oX scan.xml 192.168.1.1/24
#-oG 参数输出文件,适合用grep查看
nmap -oG scan.txt192.168.1.1/24
#-oA 参数输出以上所有格式文件
nmap -oA scan 192.168.1.1/24

0x06 使用脚本扫描

#扫描常规漏洞(根据nmap版本而定)
nmap --script=vuln 192.168.1.100
#扫描root空口令
nmap -p 3306 --script=mysql-empty-password.nse 192.168.1.100
#telnet暴力破解
nmap -p 23 --script telnet-brute --script-args userdb=[用户名字典路径],passdb=[密码字典路径] --script-args telnet-brute.timeout=8s 192.168.1.100
#检测robots.txt文件中的内容
nmap --script=http-robots.txt.nse www.baidu.com
#执行dos攻击
nmap --script http-slowloris --max-parallelism 1000 www.baidu.com
#劫持banner信息
nmap --script banner 192.168.1.100
#使用所有http开头的脚步进行扫描
nmap --script "http*" www.baidu.com
#默认的脚本扫描,主要是搜集各种应用服务的信息,收集到后,可再针对具体服务进行攻击
nmap --script default 192.168.1.100
nmap -sC 192.168.1.100  #简化写法
#升级数据库
nmap --script-updatedb
......

我不懂世界到底在热闹些什么