Nmap渗透指南——常用部分(笔记来自《Nmap渗透指南》)

注:由于书本内容过于全面,本文章仅介绍书本中的常用功能,对于日常扫描足够使用

Nmap渗透测试指南

简介:nmap(Network Mapper)意思是网络映射器

nmap常用参数介绍

nmap TCP/IP协议栈指纹

  T1   发送TCP数据包(Flag=SYN)到开放TCP端口
  T2   发送空TCP数据包到开放的TCP端口
  T3   发送TCP数据包(Flag=SYN,URG,PSH,FIN)到开放的TCP端口
  T4   发送TCP数据包(Flag=ACK)到开放的TCP端口
  T5   发送TCP数据包(Flag=SYN)到关闭的TCP端口
  T6   发型TCP数据包(Flag=ACK)到关闭的TCP端口
  T7   发送TCP数据包(Flag=URG,PSH,FIN)到关闭的TCP端口

语法

nmap -a(协议或参数或选项) 127.0.0.1(目标)
全面扫描   -A
指定段扫描   在目标连接的最后段用-连接   192.168.126.1-200

nmap参数

-sT
  TCP connect()扫描:建立完整的TCP连接,这种扫描很容易被检测到,在目标主机的日志中会记录大批的连接请求以及错误信息。**如果想扫描自己的主机,需要建立完整的TCP连接。**
-sS
  TCP同步扫描(TCP SYN):半开扫描(half-open)。**这是nmap的默认扫描方式**,仅发出一个TCP同步包(SYN),然后等待回应。
-sF -sX -sN
  秘密FIN数据包扫描、圣诞树(Xmas Tree)、空(Null)扫描模式:即使SYN扫描都无法确定的情况下使用。
-sP
  ping扫描:探测主机是否存活(如果目标主机没有禁ping)。
-sU
  UDP扫描:探测某台主机上提供哪些UDP(用户数据报协议)服务,可以使用这种扫描方法。
-sA
  ACK扫描:这项高级的扫描方法通常用来穿过防火墙的规则集。这种扫描是向特定的端口发送ACK包(使用随机的应答/序列号)。 
-Pn   
  无Ping扫描:穿透防火墙,也可以避免被防火墙发现
-PS   
  TCP SYN Ping扫描:发送一个设置了SYN标志位的空TCP报文,当目标主机的防火墙阻止这些请求时,我们可以使用该扫描选项来进行对目标主机存活的判断
-PA   
  TCP ACK Ping扫描:原理同上类似,两个选项可以同时使用
-PU   
  UDP Ping扫描:发送一个空的UDP报文到指定端口,默认40125
-PE;-PP;-PM
  ICMP Ping Types扫描:ICMP协议是Internet控制报文协议,是TCP/IP协议的一个子协议,用于传递控制消息(检测网络、主机、路由等网络本身消息是否流通),不传输用户数据
-PE
  通过向目标发送ICMP Echo数据包来探测目标主机是否在线
-PP 
  是ICMP时间戳ping扫描
-PM 
  是进行ICMP地址掩码ping扫描。
-PR  
  ARP ping扫描:该选项通常在扫描局域网的时候使用。地址解析协议,主机将ARP请求广播到网络上的所有主机,并接受返回消息,确定目标IP地址的物理地址,同时将IP地址和硬件地址存入本机ARP缓存中,下次请求时直接查询ARP缓存。改扫描选项是对目标进行ARP ping的过程,尤其在内网的情况下,ARP扫描时最为有效的,在本地局域网中防火墙不会禁止ARP请求。在默认情况下,如果nmap发现目标主机就在它所在的局域网上,会进行ARP扫描(即使用-PI   -PS也会默认扫描ARP),如果不想使用ARP扫描,可以指定--send-ip。
-sL   
  列表扫描:仅仅列出指定网络上的每台主机,不发送任何报文到目标主机。默认情况下,nmap仍然对主机进行反向域名解析以获取它们的名字
-n   
  禁止反向域名解析:永远不对目标IP地址作反向域名解析
-R   
  反向域名解析:永远对目标IP地址作反向域名解析
--system-dns
  使用系统域名解析器:nmap直接发送查询到您主机上配置的域名服务器来解析域名
-6   
  扫描一个IPv6地址:nmap -6 fe80::20c::29ff::fee0::2e76
--traceroute   
  路由跟踪:此选项可以查出从本地计算机到目标之间经过的网络节点,并可以看到通过各个节点的时间

常见扫描方式

1、Intense scan   (nmap -T4 -A -v)   一般扫描
  -T4 加快执行速度
  -A 操作系统及版本探测
  -v 显示详细的输出

2、Intense scan plus UDP  (nmap -sS -sU -T4 -A -v)   UDP扫描
  -sS TCP SYN 扫描
  -sU UDP 扫描

3、Intense scan,all TCP ports  (nmap -p 1-65536 -T4 -A -v)
  扫描所有TCP端口,范围在1-65535,试图扫描所有端口的开放情况,速度比较慢。
  -p 指定端口扫描范围

4、Intense scan,no ping   (nmap -T4 -A -v -Pn)   非ping扫描         
  -Pn 非ping扫描

5、Ping scan   (nmap -sn)   Ping 扫描   -sn ping扫描
  优点:速度快。   缺点:容易被防火墙屏蔽,导致无扫描结果

6、Quick scan   (nmap -T4 -F)   快速的扫描    
  -F 快速模式。

7、Quick scan plus   (nmap -sV -T4 -O -F --version-light)          
  快速扫描加强模式
  -sV 探测端口及版本服务信息。
  -O 开启OS检测
  --version-light 设定侦测等级为28、Quick traceroute   (nmap -sn --traceroute)   路由跟踪
  -sn Ping扫描,关闭端口扫描
  -traceroute 显示本机到目标的路由跃点。

9、Regular scan   规则扫描

10、Slow comprehensive scan    慢速全面扫描
  (nmap -sS -sU -T4 -A -v -PE -PP -PS80,443,-PA3389,PU40125 -PY -g 53 --script all)

nmap保存和输出

-oN   标准保存   nmap -oN test1.txt 目标
-oX   XML保存    .xml
-oS   133t保存    .txt
-oG   Grep保存   .txt
-oA   保存到所有格式
--append-output   补充保存文件
-oX    --stylesheet   转换XML保存   .xml
-oX       忽略XML声明的XSL样式表    .xml    --no-stylesheet(禁止nmap的XML保存关联IG任何XSL样式表)

-T 时序选项

-T0 非常慢,用于IDS逃避
-T1 慢,用于IDS逃避
-T2 比较慢,降低速度以降低对带宽的消耗(很少用)
-T3 默认,根据目标的反应自动调整时间
-T4 快速扫描,常用的扫描方式,需要在很好的网络环境下进行扫描,请求可能会淹没目标
-T5 极速扫描,该方式以牺牲准确度来提升扫描速度
--scanflags   自定义TCP扫描
-sI  空闲扫描,是nmap的高级用法,允许端口完全欺骗扫描。可以使攻击者能够不使用自己的IP向目标主机发送数据包,它可以利用不活跃的僵尸主机反弹给攻击者一个旁通信道,从而进行端口扫描。
nmap -sI www.0day.co:80 192.168.126.131
如上,如果有IDS,IDS会认为是前者进行的扫描

指纹识别与探测

-sV 版本探测  
加上-A 进行操作系统版本探测
--allports 全端口版本探测
--version-intensity  设置扫描强度,后面直接加 数字,取值范围0~9
--version-light  轻量级扫描
--version-all   重量级扫描
--version-trace  获取详细版本信息

-O  启用操作系统探测
--osscan-limit  对指定的目标进行操作系统检测
--osscan-guess;--fuzzy   推测系统识别

渗透参数用法

-D ip欺骗
   nmap -D 192.168.0.1,157,89,85,4 目标 指定伪造的ip
   nmap -D RND:数量 目标 使用RND随机生产几个地址
   nmap -D ME 目标 ME可以指定主机的真实ip
-sI(i的大写) 源地址欺骗
  使用 -sI就可以进行源地址欺骗,例如 -sI www.0day.com:80 目标
--source-port 源端口欺骗
  防火墙对服务器的设置会根据端口选择是否信任数据流,管理员可能会认为这些端口不会有攻击发生,所以可以利用这些端口扫描
  nmap --source-port 53 目标
--data-length 指定发包长度
  nmap --data-length 30 目标
  在原来报文基础上附加随即数据达到规避防火墙的效果
--randomize-hosts 目标主机随机排序
  单方面使用这个选项对防火墙/IDS逃逸的效果不大, 如果配合是时间选项则会有很好的效果
  nmap --rangomize-hosts 192.168.126.1-200
--spoof-mac MAC地址欺骗
  nmap --spoof-mac 0 目标 指定一个随机的MAC地址。

nmap用于信息收集

IP信息搜集

nmap --script ip-geolocation-* www.xxx.com
注意,如果目标域名使用了CDN,则无效。

WHOIS查询

WHOIS通常使用TCP协议43端口。每个域名或IP的WHOIS信息由对应的管理机构保存。
  nmap --script whois www.xxx.com
查询该域名的历史whois,可以获得更多信息,
  nmap --script whois --script-args whois.whodb-nofollow www.xxx.com
使用列表的方式进行查询,
  nmap -sn --script whois -v-iL host.txt

IP反查

IP 反查可以将所有绑定到该IP的域名显示出来,这样我们就可以很清楚地知道有几个站点在同一个服务器上。但是IP反查不能辨别IP真伪。
  nmap -sn --script hostmap-ip2hosts www.xxx.com

DNS查询

nmap --script dns-brute dns-brute.threads=10 www.xxx.com,设置10个线程时相应的扫描速度会增加.

枚举DNS服务器的主机名和子域名

nmap --script dns-brute --script-args dns-brute.domain=baidu.com
  该脚本可以使用“dns-brute.threads =线程”指定线程来加快或减少破解速度,使用dns-brute. hostlist=./hostfile.txt指定一一个 需要枚举的列表。

nmap自带脚本

--script=vuln   检查常见漏洞(平常最常用,个人一般只用这个脚本)
--script=brute   暴力破解
--script=auth   权限鉴别

更多详细可以查看nmap安装目录中的Nmap/scripts/目录下的脚本种类

posted @   取到小饼干  阅读(169)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
都翻到底啦,确定不打赏一下吗😘

喜欢我的话
欢迎打赏😘
感谢您的认同

支付宝打赏二维码 微信打赏二维码
点击右上角即可分享
微信分享提示