Nmap使用手册学习记录

简单记录一下nmap的一些基本指令,别问,问就是命令太多了,英文文档翻得累,nmap的扫描功能和隐蔽性很强大的,很有必要多看看

目标说明

-iL	<inputname>	(从列表或文件输入)

-iR	<hostnum>		  (随机选择生成目标数量)

--exclude		<host1,host2>	(排除的主机网络)

主机发现

-sL		(列表扫描)

-sP		(Ping扫描,可以和除了-P0的任何发现方式结合)

-P0		(无Ping,所有主机视为在线,跳过主机发现)

-PS	<portlist>	(TCP SYN Ping)

-PA	<portlist>	(TCP ACK Ping,实际发送的还是SYN报文,而不是ACK报文。无状态防火墙,有状态非预期防火墙,即指定-PS又指定-PA,即SYS和ACK)

-PU	<portlist>	(UDP Ping,穿越TCP防火墙)

-PE;-PP;-PM	(ICMP Ping)

-PR	(ARP Ping ,基于ARP比基于IP更快更可靠,默认当目标主机在同一局域网上时,即使指定了ping的类型,也会使用ARP。不想要ARP,--send-ip)

-n	(永不进行反向域名解析)

-R	(所有目标反向域名解析)

--system-dns	(使用系统域名解析器,除非nmap的DNS有问题才这样,因为贼慢)

端口扫描

nmap的6个端口状态

1、open(开放的)

2、closed (关闭的)

3、filtered(被过滤的)

4、unfiltered(未被过滤的,ACK扫描才会分类这种状态,其他类型扫描确认)

5、open|filtered(开放或被过滤的)

6、closed|filtered(关闭或被过滤的)
-sS	(SYN,默认,TCP半连接不易发现,返回明确的端口状态)

-sT	(TCP)

-sU	(UDP)

-sN;-sF;-sX	(TCP Null,FIN,Xmas,除了探测标志位不同,行为上完全一致,可以躲过一些无状态防火墙,甚至比SYN更隐秘,缺点无法正确标记端口状态)

-sA	(ACK,无法判断端口状态,用于发现防火墙规则)

-sW	(TCP窗口,不准确)

-sM	(Maimon,和Null,FIN,Xmas完全一样,除了报文是FIN/ACK)

--scanflags	(定制的TCP扫描,设置标志位或者扫描类型)

-sl	<zombie host:probeport>	(TCP端口盲扫描,没有报文从你的真实ip地址发送到目标,极端隐蔽,不加端口默认80)

-sO	(IP协议扫描)

-b	<ftp host>	(FTP弹跳扫描,代理ftp连接,格式<username>:<password>@<server>:<port>,server是脆弱的FTP服务器名字ip)

端口说明

-p	<port range>	(只扫描指定端口)

-F	(快速扫描,大约1200常用端口)

-r	(顺序扫描,出于效率,默认随机扫描,按照常用端口前移)

服务和版本探测

-sV	(版本探测,-A 同时打开操作系统和版本探测)

--allports	(不为版本探测排除任何端口,默认下跳过9100端口,像一些简单打印机的打印数据)

--version-intensity	<intensity>	(设置版本扫描强度1-9,默认7)

--version-light	(version-intensity2 的别名,轻量级更快,识别服务弱一点)

--version-all	(尝试所有探测,version-intensity9 的别名,对每个端口的探测)

--version-trace	(跟踪版本扫描活动,打印详细的关于正在进行的扫描调试信息)

-sR	(RPC,-sV版本探测包含了它且更全面,所有-sR很少需要)

操作系统探测

-O	(启用操作系统检测,-A)

--osscan-limit	(对指定的目标操作系统检测,仅在使用-O-A操作系统检测起作用)

--osscan-guess;--fuzzy	(推测操作系统检测结果,无法确定时尽可能的匹配,默认匹配)

时间和性能

--min-hostgroup	<milliseconds>;--max-hostgroup	<milliseconds>	(调整并行扫描组的大小范围)

--min-parallelism	<milliseconds>;--max-parallelism	<milliseconds>	(调整探测报文的并行度,通常max设为1,min设为10)

--min-rtt-timeout	<milliseconds>;--max-rtt-timeout	<milliseconds>;--initial-rtt-timeout	<milliseconds>	(调整探测报文超时)

--host-timeout	<milliseconds>	(放弃低速目标主机)

--scan-delay	<milliseconds>;--max-scan-delay	<milliseconds>	(调整探测报文的时间间隔,躲避基于阈值的入侵检测和预防系统)

-T <Paranoid|Sneaky|Polite|Normal|Aggressive|Insane> (设置时间模板0-5,前两种用于IDS躲避,Polite降低扫描速度以使用更少的带宽和目标资源,默认Normal,Aggressive加速扫描,Insane更快的速度牺牲准确性)

防火墙/IDS躲避

-f	(分段报文);--mtu (使用指定的MTU,可自定义偏移大小,使用时不用-f,偏移量必须是8的倍数)

-D	<decoy1,decoy2,decoy3.....,me....>	(使用诱饵隐蔽扫描,第6个或更后位置使用me,端口扫描检测器不会报到这个真实ip,如果不使用nmap会将真实ip随机放一个位置)

-S	<IP_address> (源地址哄骗,常配合-e或-P0使用)

-e	<interface>	(使用指定的接口)
    
--source-port <portnumber>; -g <portnumber> (源端口哄骗,nmap从指定的端口发送数据)
    
--data-length <number> (发送报文时,附加随机数据)
    
--ttl <value> (设置IP time-to-live域)
    
--randomize-hosts (对目标主机的顺序随机排列)

--spoof-mac <mac address,prefix,or vendor name> (MAC地址哄骗)

输出

-oN	<filespec>	(标准输出直接写入指定文件)

-oX	<filespec>	(XML输出直接写入指定文件)

-oS	<filespec>	(交互式输出)

-oG	<filespec>	(Grep输出,不建议使用,XML 很强大)

-oA <basename>	(扫描结果以标准格式、XML、Grep一次性输出,分别存放在 <basename>.nmap,<basename>.xml和 <basename>.gnmap文件中)
    
-v	(详细输出)

-d [level]	(设置调试级别0-9,比-v更多的信息,主要是开发人员用这个)

--packet-trace (跟踪发送和接收的报文,打印发送和接收的报文摘要,用于调试)

--iflist (列举接口和路由,输出检测到的接口列表和系统路由,调试路由和设备描述失误)

--append-output (在输出文件中追加,因为默认被覆盖)

--resume <filename> (继续中断的扫描,-oN或-oG日志被保留时,nmap将新的结果追加文件,不支持XML)    

其他选项

-A	(激烈扫描模式,包括了操作系统 -O和版本扫描 -sV)

--interactive (在交互模式中启动,这个选项包含了一个!操作符,用于执行shell命令,可用于提权,这也是不安装Nmap setuid root的多个原因之一)

--send-eth (使用原以太网帧发送,原套接 字(IP层)是UNIX主机最有效的方式,而以太网帧最适合Windows操作 系统,因为Microsoft禁用了原套接字支持)

--send-ip (在原IP层发送,要求Nmap通过原IP套接字发送报文,而不是低层的以 太网帧)

实例

nmap -v scanme.nmap.org
扫描主机所有的保留TCP端口,-v 更多细节

nmap -sS -O scanme.nmap.org/24
秘密SYN扫描,探测操作系统版本,主机同C段机器

nmap -sV -p 22,53,110,143,4564 198.116.0-255.1-127
主机列举,TCP扫描,对象为B类188.116网段中255个8位子网。用于确定系统是否运行了sshd、DNS、imapd或4564端口

nmap -v -iR 1000 -P0 -p 80
随机1000台主机扫描web服务是否开启

nmap -P0 -p80 -oX logs/pb-port80scan.xml -oG logs/pb-port80scan.gnmap 216.163.128.20/20
扫描4096个IP地址,查找Web服务器(不ping),将结果以Grep和XML格式保存。

host -l company.com | cut -d -f 4 | nmap -v -iL 
进行DNS区域传输,以发现company.com中的主机,然后将IP地址提供给 Nmap。用于GNU/Linux,其它系统进行区域传输时有不同的命令。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

paidx0

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值