主动扫描-Nmap-端口、系统、服务扫描

目录

一、使用Nmap进行端口扫描

1、关于端口的介绍

① 个数

② 作用

③ 分类

2、Nmap中的各种端口扫描技术

① SYN扫描

② Connect扫描

③ UDP扫描

④ 端口扫描范围的确定

二、使用Nmap扫描目标系统

1、识别原理

2、参数与意义

 3、远程判断目标系统的方法

三、使用Nmap扫描目标服务

1、与端口扫描的区别

2、参数及用法

3、Nmap的完善

四、将Nmap的扫描结果保存为XML文件

五、对Web服务进行扫描

1、目标分类

2、Web服务器的软件组成

① Web应用程序

② 语言解释器

③ 服务器应用程序

④ 操作系统

3、以DVWA为目标的web服务扫描

① dirb内容扫描

 ② dirsearch内容扫描

③ whatweb网络指纹识别

文章开始前给大家分享一个学习人工智能的网站,通俗易懂,风趣幽默


人工智能icon-default.png?t=N7T8https://www.captainbed.cn/myon/

一、使用Nmap进行端口扫描

1、关于端口的介绍

① 个数

65536个   

② 作用

供数据进出网络设备

③ 分类

公认端口(也叫常用端口)0~1024:明确表明了某种服务协议,不可重新定义作用对象

注册端口 1025~49151:没有明确定义服务对象,根据实际需要自己定义

动态/私有端口 49152~65535:常常不被注意,容易隐蔽

or

TCP端口:“连接方式”,直接与接收方进行连接,发送信息后可确认是否到达

UDP端口:“无连接方式”,不与接收方进行连接,只管把信息发出去,不管是否到达

2、Nmap中的各种端口扫描技术

① SYN扫描

语法:nmap -sS 目标设备IP地址

nmap所采用的默认扫描方式,nmap向目标设备发送SYN数据包,得到SYN+ACK的回应包时,不扫描器不是发送ACK数据包,而是发送RST数据包请求断开连接,并没有完成3次握手,无法建立正常的TCP连接,因此这次扫描就不会被记录到系统日志,也不会在目标设备留下扫描痕迹。

目标设备的回应 :                                        目标设备端口状态:

SYN+ACK                                                         open

RST                                                                  closed

没有回应/ICMP端口无法抵达                           filtered

② Connect扫描

语法:nmap -sT 目标设备IP地址

 connect扫描和SYN扫描很像,只是完成了TCP的3次握手

③ UDP扫描

语法:nmap -sU 目标设备IP地址

目标设备的回应 :                                        目标设备端口状态:

从目标设备得到UDP回应                               open

没有回应                                                         open/filtered

 UDP扫描速度相对较慢

④ 端口扫描范围的确定

nmap默认只扫描65536中最常用的1000个端口,即如果我们不加任何参数,nmap扫描的是1000个端口,而不是65536个。

1、对65536个端口扫描:追加参数 -p "*"

即:nmap -p "*" 目标设备IP地址

额额额我这里扫的时候出了点问题...不过我们一般不会这样用

2、扫描使用频率最高的n个端口

语法:nmap --top-ports n 目标设备IP地址

比如我们对最常用的10个端口扫描

 3、扫描指定端口

语法:nmap -p 端口号 目标设备IP地址

比如我们指定扫描80端口 

二、使用Nmap扫描目标系统

1、识别原理

通常,越旧的操作系统意味着越容易被渗透,但几乎所有的工具都是通过向目标设备发送探针(大都以TCP和UDP数据包的形式),根据目标设备回应来猜测操作系统。

2、参数与意义

--osscan-limit                                      只对满足“具有打开和关闭的端口”的设备进行操作系统扫描

--osscan-guess                                   猜测认为最接近目标设备的操作系统

在使用这两参数时需要追加参数 -O

即:nmap -O ---osscan-limit / --osscan-guess  目标设备IP地址

此外,我们还可以追加参数 -v 来展示扫描过程

 3、远程判断目标系统的方法

① 被动式:不向目标发送如任何数据包,通过各种抓包工具来搜集流经网络的数据报文,再从这些报文中得到目标设备的操作系统信息。

② 主动式:向目标设备发送信息,通过回应来分析推测目标的操作系统

nmap中有一个名为Nmap-os-db的操作系统数据库,进行扫描时,会将目标系统的扫描结果与整个数据库中文件进行对比,然后得出目标设备操作系统类型。

三、使用Nmap扫描目标服务

1、与端口扫描的区别

我们在进行端口扫描时,nmap并没有进行服务的识别,而是将端口号在自己的端口服务表数据库中进行查找,然后返回该端口对应的服务,也就是说返回的服务只是数据库中的服务,并非事实中端口所运行的服务。

2、参数及用法

追加参数 -sV 来进行服务和版本识别

即nmap -sV 目标设备IP地址 

3、Nmap的完善

当nmap从某个服务收到响应,但不能在数据库中找到匹配时,就会输出一个特殊的fingerprint和一个URL,如果用户知道是什么服务运行在此端口,就可以提交这份报告让nmap更完善。


四、将Nmap的扫描结果保存为XML文件

nmap支持多种保存格式,最常用的是XML格式

语法:nmap -oX 文件名(要加文件后缀) 目标设备IP地址

 目前XML 是一种较为流行的报告格式,大部分的安全工具都兼容,因此方便共享扫描结果。

五、对Web服务进行扫描

1、目标分类

对渗透目标最简单的分类:用户计算机、网站服务器

前者就是日常生活和工作时使用的设备,而后者是运行着网站的特殊设备

web服务器在硬件方面并没有什么根本区别,只是性能上存在差异,软件方面则多一些内容。

2、Web服务器的软件组成

① Web应用程序

② 语言解释器

③ 服务器应用程序

④ 操作系统

③和④绝大多数情况下只能是采用厂商提供的产品,成为外部环境因素;

①和②则成为内部代码因素。

3、以DVWA为目标的web服务扫描

① dirb内容扫描

它可以按照字典逐个测试某个目录或文件是否存在

用法:dirb 目标IP地址(注意要以http的形式)

 ② dirsearch内容扫描

用法:dirsearch 目标IP地址(最好加个参数 -u)

 效果应该比dirb更优秀

③ whatweb网络指纹识别

用法:whatweb 目标IP地址

 这样看着很乱,我们通常会追加参数 -v 来将结果详细显示

 OK,Nmap主动扫描到此告一段落

后期会继续更新kali linux以及CTF的其他内容

期待大家的关注,喜欢的可以点个赞支持一下哦,也是对我最大的动力和鼓励,谢谢!

  • 13
    点赞
  • 66
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
namp 2011-06-25 02:13:43| 分类: Linux | 标签:namp |字号大中小 订阅 . 进行ping扫描,打印出对扫描做出响应的主机,不做进一步测试(如端口扫描或者操作系统探测):   nmap -sP 192.168.1.0/24   仅列出指定网络上的每台主机,不发送任何报文到目标主机:   nmap -sL 192.168.1.0/24   探测目标主机开放的端口,可以指定一个以逗号分隔的端口列表(如-PS22,23,25,80):   nmap -PS 192.168.1.234 nmap -PS 127.0.0.1 -p 100-700   使用UDP ping探测主机:   nmap -PU 192.168.1.0/24   使用频率最高的扫描选项:SYN扫描,又称为半开放扫描,它不打开一个完全的TCP连接,执行得很快:   nmap -sS 192.168.1.0/24   当SYN扫描不能用时,TCP Connect()扫描就是默认的TCP扫描:   nmap -sT 192.168.1.0/24   UDP扫描用-sU选项,UDP扫描发送空的(没有数据)UDP报头到每个目标端口:   nmap -sU 192.168.1.0/24   确定目标机支持哪些IP协议 (TCP,ICMP,IGMP等):   nmap -sO 192.168.1.19   探测目标主机的操作系统:   nmap -O 192.168.1.19   nmap -A 192.168.1.19   另外,nmap官方文档中的例子:   nmap -v scanme.   这个选项扫描主机scanme中 所有的保留TCP端口。选项-v启用细节模式。   nmap -sS -O scanme./24   进行秘密SYN扫描,对象为主机Saznme所在的“C类”网段 的255台主机。同时尝试确定每台工作主机的操作系统类型。因为进行SYN扫描 和操作系统检测,这个扫描需要有根权限。   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 100000 -P0 -p 80   随机选择100000台主机扫描是否运行Web服务器(80端口)。由起始阶段 发送探测报文来确定主机是否工作非常浪费时间,而且只需探测主机的一个端口,因 此使用-P0禁止对主机列表。   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 | cut -d -f 4 | nmap -v -iL -   进行DNS区域传输,以发现中的主机,然后将IP地址提供给 Nmap。上述命令用于GNU/Linux -- 其它系统进行区域传输时有不同的命令。   其他选项:   -p (只扫描指定的端口)   单个端口和用连字符表示的端口范 围(如 1-1023)都可以。当既扫描TCP端口扫描UDP端口时,可以通过在端口号前加上T: 或者U:指定协议。 协议限定符一直有效直到指定另一个。 例如,参数 -p U:53,111,137,T:21-25,80,139,8080 将扫描UDP 端口53,111,和137,同时扫描列出的TCP端口。   -F (快速 (有限的端口) 扫描)namp 2011-06-25 02:13:43| 分类: Linux | 标签:namp |字号大中小 订阅 . 进行ping扫描,打印出对扫描做出响应的主机,不做进一步测试(如端口扫描或者操作系统探测):   nmap -sP 192.168.1.0/24   仅列出指定网络上的每台主机,不发送任何报文到目标主机:   nmap -sL 192.168.1.0/24   探测目标主机开放的端口,可以指定一个以逗号分隔的端口列表(如-PS22,23,25,80):   nmap -PS 192.168.1.234 nmap -PS 127.0.0.1 -p 100-700   使用UDP ping探测主机:   nmap -PU 192.168.1.0/24   使用频率最高的扫描选项:SYN扫描,又称为半开放扫描,它不打开一个完全的TCP连接,执行得很快:   nmap -sS 192.168.1.0/24   当SYN扫描不能用时,TCP Connect()扫描就是默认的TCP扫描:   nmap -sT 192.168.1.0/24   UDP扫描用-sU选项,UDP扫描发送空的(没有数据)UDP报头到每个目标端口:   nmap -sU 192.168.1.0/24   确定目标机支持哪些IP协议 (TCP,ICMP,IGMP等):   nmap -sO 192.168.1.19   探测目标主机的操作系统:   nmap -O 192.168.1.19   nmap -A 192.168.1.19   另外,nmap官方文档中的例子:   nmap -v scanme.   这个选项扫描主机scanme中 所有的保留TCP端口。选项-v启用细节模式。   nmap -sS -O scanme./24   进行秘密SYN扫描,对象为主机Saznme所在的“C类”网段 的255台主机。同时尝试确定每台工作主机的操作系统类型。因为进行SYN扫描 和操作系统检测,这个扫描需要有根权限。   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 100000 -P0 -p 80   随机选择100000台主机扫描是否运行Web服务器(80端口)。由起始阶段 发送探测报文来确定主机是否工作非常浪费时间,而且只需探测主机的一个端口,因 此使用-P0禁止对主机列表。   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 | cut -d -f 4 | nmap -v -iL -   进行DNS区域传输,以发现中的主机,然后将IP地址提供给 Nmap。上述命令用于GNU/Linux -- 其它系统进行区域传输时有不同的命令。   其他选项:   -p (只扫描指定的端口)   单个端口和用连字符表示的端口范 围(如 1-1023)都可以。当既扫描TCP端口扫描UDP端口时,可以通过在端口号前加上T: 或者U:指定协议。 协议限定符一直有效直到指定另一个。 例如,参数 -p U:53,111,137,T:21-25,80,139,8080 将扫描UDP 端口53,111,和137,同时扫描列出的TCP端口。   -F (快速 (有限的端口) 扫描)namp 2011-06-25 02:13:43| 分类: Linux | 标签:namp |字号大中小 订阅 . 进行ping扫描,打印出对扫描做出响应的主机,不做进一步测试(如端口扫描或者操作系统探测):   nmap -sP 192.168.1.0/24   仅列出指定网络上的每台主机,不发送任何报文到目标主机:   nmap -sL 192.168.1.0/24   探测目标主机开放的端口,可以指定一个以逗号分隔的端口列表(如-PS22,23,25,80):   nmap -PS 192.168.1.234 nmap -PS 127.0.0.1 -p 100-700   使用UDP ping探测主机:   nmap -PU 192.168.1.0/24   使用频率最高的扫描选项:SYN扫描,又称为半开放扫描,它不打开一个完全的TCP连接,执行得很快:   nmap -sS 192.168.1.0/24   当SYN扫描不能用时,TCP Connect()扫描就是默认的TCP扫描:   nmap -sT 192.168.1.0/24   UDP扫描用-sU选项,UDP扫描发送空的(没有数据)UDP报头到每个目标端口:   nmap -sU 192.168.1.0/24   确定目标机支持哪些IP协议 (TCP,ICMP,IGMP等):   nmap -sO 192.168.1.19   探测目标主机的操作系统:   nmap -O 192.168.1.19   nmap -A 192.168.1.19   另外,nmap官方文档中的例子:   nmap -v scanme.   这个选项扫描主机scanme中 所有的保留TCP端口。选项-v启用细节模式。   nmap -sS -O scanme./24   进行秘密SYN扫描,对象为主机Saznme所在的“C类”网段 的255台主机。同时尝试确定每台工作主机的操作系统类型。因为进行SYN扫描 和操作系统检测,这个扫描需要有根权限。   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 100000 -P0 -p 80   随机选择100000台主机扫描是否运行Web服务器(80端口)。由起始阶段 发送探测报文来确定主机是否工作非常浪费时间,而且只需探测主机的一个端口,因 此使用-P0禁止对主机列表。   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 | cut -d -f 4 | nmap -v -iL -   进行DNS区域传输,以发现中的主机,然后将IP地址提供给 Nmap。上述命令用于GNU/Linux -- 其它系统进行区域传输时有不同的命令。   其他选项:   -p (只扫描指定的端口)   单个端口和用连字符表示的端口范 围(如 1-1023)都可以。当既扫描TCP端口扫描UDP端口时,可以通过在端口号前加上T: 或者U:指定协议。 协议限定符一直有效直到指定另一个。 例如,参数 -p U:53,111,137,T:21-25,80,139,8080 将扫描UDP 端口53,111,和137,同时扫描列出的TCP端口。   -F (快速 (有限的端口) 扫描)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Myon⁶

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

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

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

打赏作者

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

抵扣说明:

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

余额充值