网络端口扫描实验指导Word下载.docx

上传人:b****5 文档编号:20808518 上传时间:2023-01-25 格式:DOCX 页数:16 大小:2.22MB
下载 相关 举报
网络端口扫描实验指导Word下载.docx_第1页
第1页 / 共16页
网络端口扫描实验指导Word下载.docx_第2页
第2页 / 共16页
网络端口扫描实验指导Word下载.docx_第3页
第3页 / 共16页
网络端口扫描实验指导Word下载.docx_第4页
第4页 / 共16页
网络端口扫描实验指导Word下载.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

网络端口扫描实验指导Word下载.docx

《网络端口扫描实验指导Word下载.docx》由会员分享,可在线阅读,更多相关《网络端口扫描实验指导Word下载.docx(16页珍藏版)》请在冰豆网上搜索。

网络端口扫描实验指导Word下载.docx

由于网络端口是计算机和外界相连的通道,因此疏于管理可能留下严重的安全隐患。

端口扫描是利用网络协议的安全漏洞,通过非常规的方法来确定连接在网络上目标主机的哪些端口是开放的技术。

其原理是通过向目标系统的TCPhuoUDP端口发送一定数量、带有各种特殊标识的报文,然后记录目标系统反馈的报文信息,再分析判断其上端口的状态。

2、端口扫描的用途

一般来说,端口扫描有以下三种用途:

(1)获取目标系统上的端口信息,用于识别其上具有的TCP和UDP服务;

(2)获得目标系统返回报文的某些特殊标识,识别目标系统的操作系统类型;

(3)进一步结合其他技术得到具体端口的详细信息,从而识别某个特定服务的版本号。

3、端口扫描的方法

(1)基于连接的扫描

1)TCP全连接扫描

TCP全连接扫描是端口扫描的基本形式,扫描主机通过TCP/IP协议的三次握手与目标主机的指定端口建立一次完整的连接。

建立连接成功时,目标主机回应一个SYN/ACK数据包,表明目标主机的目标端口处于监听(打开)状态;

建立连接失败时,目标主机会向扫描主机发送RST响应,表明该目标端口处于关闭状态。

TCP全连接扫描的优点是易于实现,系统中任何用户都有权限使用此调用;

缺点是很容易被发觉并被过滤掉,目标计算机的日志文件会显示一连串的成功连接和连接出错的服务信息。

2)TCPSYN扫描

TCPSYN扫描也称半开放扫描,扫描程序向目标主机端口发送一个SYN数据包,若收到RST响应则表明目标端口关闭,若收到SYN/ACK响应则表明目标端口开放,处于侦听状态,此时扫描程序再发送一个RST信号给目标主机,终止建立连接。

由于并未建立全连接,故常将此扫描方式称为半开放扫描。

TCPSYN扫描的优点是一般不会在目标主机上留下记录,但缺点是需要有管理员权限才能建立自己的SYN数据包。

(2)隐蔽扫描

隐蔽扫描技术不含标准的TCP三次握手协议的任何一部分,比SYN扫描更隐蔽,很难被记录追踪。

隐蔽扫描采用包含FIN标志的TCP包来探测端口,如果探测的端口处于关闭状态,则目标主机返回一个RST信号;

如果探测的端口处于侦听状态,则目标主机会忽略对FIN数据包的回复,即目标主机不会返回RST信号。

XmasTree和Null扫描方式是基于以上原理的变形和发展。

XmasTree扫描打开FIN、URG和PSH标志,而Null扫描则关闭所有标志,这些组合的目的都是为了通过所谓的FIN标记监测器的过滤。

隐蔽扫描的优点是比较隐蔽,不易被记录追踪,但通常用于UNIX系统及其他少数系统,对Windows系统不适用,同时与SYN扫描类似,也需要自己构造IP数据包。

(3)辅助扫描手段

1)分段扫描

分段扫描一般结合其他方法来提供更为隐蔽的扫描,它并不是直接发送TCP探测数据包,而是将原来封装在一个报文的探测信息(往往在TCP报头中)拆分至两个或多个较小的报文中,算好各自的偏移,并都置系统的标识,然后发送,使其难以被过滤。

扫描器从IP分片中劈开TCP头,由于包过滤防火墙看不到一个完整的TCP头,无法对应相应的过滤规则,从而可绕过包过滤防火墙。

2)ACK扫描

ACK扫描并不能识别端口是否打开,但可以判断目标主机是否受到防火墙的保护,以及防火墙的类型。

因为RFC文档规定对于来访的ACK报文,物理端口打开与否,均返回RST报文。

因此如果发送方通过这种方式得到RST报文,就可以判断目标主机上未安装防火墙或者只有简单的包过滤防火墙(它无法判断此ACK报文是否合法);

如果发送方没有收到RST报文,则要么目标主机关机,要么受基于状态检测的防火墙保护,因为基于状态监测的防火墙会将突然来访的ACK报文全部丢弃,不作应答。

(4)非TCP扫描

1)UDP扫描

端口扫描一般是扫描TCP端口,因为TCP是面向连接的协议,目标系统通常会返回一些有用的信息;

而UDP为不可靠的无连接协议,为了发现正在服务的UDP端口,通常产生一个内容为空的UDP数据包发往目标端口,若目标端口上有服务正在等待,则目标端口将返回表示错误的消息;

如果目标端口处于关闭状态,则目标操作系统会发现一个ICMPUnreachable消息。

2)ICMP扫描

Ping命令发送ICMP请求包给目标IP地址,如果有应答则表示主机开机。

如果要探测目标网络内主机的情况,可以构造ICMP广播报文,如果有机器响应,则可判断其开机。

ICMP扫描方法也可用来探测局域网的地址分配结构(如果有一个以上的主机响应广播报文,则表示此广播地址就是目标网络的广播地址)。

如果已设置了目标网络的网关默认将外来的IP广播地址转换成第二层的物理广播地址,则可以结合IP欺骗技术,通过发送Ping的广播报文对目标实现DDos分布式拒绝服务攻击。

3)操作系统指纹识别

不同的网络操作系统在处理网络信息时是不完全相同的,有着各自不同的特点,这些特点被称为系统的“指纹”。

通过识别这些指纹可以实现网络系统的识别。

4、常见的扫描工具

常见的免费扫描工具有Nmap、Superscan、Nessus、流光、Microsoft的系统漏洞检测工具MBSA、X-Scan的那个,商业安全扫描产品有Symantec的NetRecon、NAI的CyberCopsScanner、Cisco的SecureScanner、ISS的系列扫描产品等。

Nmap是一款开放源代码的网络探测和安全审核的工具,基本上包括了所有知名的扫描方式,并且提供了许多非常实用的辅助功能以对目标主机作进一步的侦测,如操作系统指纹识别、进程用户分析以及众多可选的方式来逃避目标系统的监测等。

Nmap可任意指定主机、网段甚至整个网络作为扫描目标,扫描方式也可通过添加合适的选项按需组合。

Nmap运行通常会得到被扫描主机端口的列表、周知端口的服务名(如果可能)、端口号、状态和协议等信息。

每个端口由Open、Filtered和Unfiltered三种状态,其中Open状态表明目标主机能够在此端口使用accept()系统调用接受路径;

Filtered状态表明防火墙、包过滤和其他网络安全软件掩盖了此端口,禁止Nmap探测是否打开;

Unfiltered状态表明此端口关闭,且无防火墙/包过滤软件来隔离Nmap的探测企图。

5、反扫描技术

(1)禁止不必要的服务

系统上开放的某一个端口,运行的每一个服务都可能为入侵者提供信息,成为入侵者攻击的目标。

因此,对抗网络扫描的基本措施是将系统不必要的服务全部禁止。

(2)屏蔽敏感信息

系统中一些看起来无用的信息往往对入侵者来说比较重要,例如FTP服务的Banner等,入侵者通过这些信息,能够判断出操作系统的类型、服务软件的版本等。

(3)合理配置防火墙和入侵检测系统IDS。

一台配置合理的防火墙能够过滤掉大多数的扫描;

同样,配置合理的入侵检测系统IDS,也能发现和记录大部分的扫描行为。

(4)陷阱/蜜罐技术。

将攻击者引导到一个蜜罐上,能够帮助用户收集最新的扫描,并判断有什么样的扫描能穿过防火墙。

本实验通过实际操作,了解扫描技术的工作原理,加深对网络底层的理解,掌握常用扫描工具的基本用法。

三、实验过程和指导

(一)实验要求

1、阅读Nmap文档,了解命令行参数。

2、选择局域网中的主机作为扫描对象(不可非法扫描Internet中的主机),使用Nmap提供的默认配置文件,以及自行设定相关参数,对指定范围的主机进行全面TCP扫描、PING扫描、TCPconnect扫描、UDP扫描、秘密扫描、操作系统指纹识别等,记录并分析扫描结果。

(二)实验准备

1、阅读教材有关章节,理解TCP/IP协议等扫描技术的相关工作原理。

2、阅读相关资料,熟悉Nmap的相关操作步骤和命令行参数的含义。

(三)上机实验

Nmap有命令行和GUI两种运行方式,这里以GUI的Zenmap5.51为例。

运行Zenmap程序后,在Target列表框中输入扫描的目标,在Command文本框中设置所需的扫描参数,单击Scan按钮,系统就开始进行扫描,结束后会显示扫描结果。

1、全面TCP扫描

这是一种基本的扫描模式,不需要任何命令选项开关,即可对目标主机进行全面TCP扫描,显示监听端口的服务情况。

命令行格式为:

nmapIP地址,如nmap192.168.0.5,则可对目标主机192.168.0.5进行全面TCP扫描,输出结果如图3.1.1所示。

这种扫描模式的缺点是允许了日志服务的主机可以很容易地监测到这类扫描。

要达到隐蔽功能,必须设置一些命令选项开关,从而实现较高级的功能。

2、PING扫描

如果想知道网络上有哪些主机是开放的,可以使用Ping扫描方式探测主机,nmap通过对指定的ip地址发送icmp的echorequest信息包来做到这一点,有回应的主机就是开放的。

nmap–snIP地址,如nmap–sn192.168.0.5,则可对目标主机192.168.0.5进行探测,输出结果包括开放主机的IP地址和MAC地址,如图3.1.2所示。

3、TCPconnect扫描

这是对TCP的最基本形式的侦测,也是nmap的默认扫描方式。

操作系统提供的connect()系统调用可以用来对目标主机上感兴趣的端口进行连接试探,如果该端口处于监听状态,则连接成功,否则代表这个端口无法到达。

该方式的优点是不需要任何权限,系统中任何用户都有权利使用此调用;

使用非阻塞I/O允许设置一个低的时间用尽周期,通过同时打开多个套接字可以加速扫描。

其缺点是很容易被察觉,并且被防火墙将扫描信息包过滤掉;

目标主机的log文件会显示一连串的连接和连接出错信息,并且能很快使它关闭。

nmap–sTIP地址,如nmap–sT192.168.0.5,则可对目标主机192.168.0.5进行TCP连接扫描,输出结果如图3.1.3所示。

图3.1.1全面TCP扫描

图3.1.2使用Ping扫描方式探测主机

图3.1.3TCP连接扫描

4、UDP扫描

Nmap默认监听的是目标主机的TCP端口,由于现在防火墙设备的流行,TCP端口的管理状态越来越严格,不会轻易开放,并且通信监视严格。

UDP扫描可以用来确定主机上哪些UDP端口处于开放状态,其原理是通过发送零字节的UDP信息包到目标机器的各个端口,如果收到一个ICMP端口无法到达的回应,那么该端口是关闭的,否则可以认为它是开放的。

该方式的优点是利用UDP端口关闭时返回的ICMP信息,不包含标准的TCP三次握手协议的任何部分,因此隐蔽性好。

其缺点是由于UDP是不面向连接的,这种扫描使用的数据包在通过网络时容易被丢弃从而产生错误的探测信息,所以整个精度会比较低;

同时,由于不同操作系统在实现ICMP协议的时候为了避免广播风暴都会有峰值速率的限制,因此扫描速度比较慢。

这一扫描方法命令行格式为:

nmap–sUIP地址,如nmap–sU192.168.0.5,则可对目标主机192.168.0.5进行UDP扫描,输出结果如图3.1.4所示。

图3.1.4UDP扫描

5、秘密扫描

1)TCPSYN扫描

这种方式是半开放式的TCP同步扫描,扫描程序不打开完整的TCP连接,发送一个SYN信息包并等待对方的回应。

扫描原理参见“实验预习提示”中的“TCPSYN扫描”。

这种扫描的的最大好处是可以进行更加隐蔽的扫描,防止被目标主机监测到,只有极少的站点会对它作出记录,但是需要有root权限来定制这些SYN包。

nmap–sSIP地址,如nmap–sS192.168.0.5,则可对目标主机192.168.0.5进行TCPSYN扫描,输出结果如图3.1.5所示。

将TCPSYN扫描与前面的TCPconnect扫描进行对比,可以看出TCPSYN扫描的速度明显比TCPconnect扫描快,扫描结果略有不同。

图3.1.5TCPSYN扫描

SYN扫描在有些情况下仍不够隐蔽,一些防火墙及信息包过滤装置会在重要端口守护,只要安装了过滤和日志软件来检测同步空闲字符SYN,则-sS的隐蔽作用就失效了,SYN包在此时便会被截获,一些应用软件如Synlogger以及Courtney对侦测这种类型的扫描都是行家。

所以,需要有更进一步的隐蔽扫描方式。

2)FIN扫描、XmasTree扫描和Null扫描

由于关闭的端口会对发送的探测信息返回一个RST,而打开的端口则对其忽略不理。

所以,FIN扫描使用空的FIN信息包作为探针,XmasTree使用FIN、URG、PUSH标记,Null扫描则不用任何标记。

需要注意的是此方法与系统的实现有一定的关系,由于微软的坚持和独特,对于运行Windows95/98或NT的机器不管端口是否打开都会回复RST,因此FIN、XmasTree和Null扫描的结果都是端口关闭。

命令行格式分别为:

nmap–sFIP地址,nmap–sXIP地址,nmap–sNIP地址,如nmap–sF192.168.0.5,则可对目标主机192.168.0.5进行FIN扫描,输出结果如图3.1.6所示;

nmap–sX192.168.0.5,则可对目标主机192.168.0.5进行XmasTree扫描,输出结果如图3.1.7所示;

nmap–sN192.168.0.5,则可对目标主机192.168.0.5进行Null扫描,输出结果如图3.1.8所示。

按照上述原理,这其实也是一个很好的区分Windows和Unix/Linux两种平台的方法,如果扫描发现了打开的端口,那就能知道目标主机运行的不是Windows;

如果-sF、-sX、-sN的扫描显示所有端口都是关闭的,但一个SYN扫描却显示有打开端口,则能大致推断目标主机是Windows平台。

当然,这只是一个简单应用,nmap有更彻底的操作系统辨别方法。

6、操作系统指纹识别

该方法经由TCP/IP来获取“指纹”,从而判别目标主机的操作系统类型,其原理是用一连串的信息包探测出所扫描的主机位于操作系统有关堆栈的信息,并区分其精细差异,以此判别操作系统。

它用搜集到的信息建立一个“指纹”,用来同已知的操作系统的指纹相比较,这样判定操作系统就有了依据。

nmap–OIP地址,如nmap–O192.168.0.5,则可对目标主机192.168.0.5进行操作系统类型探测,输出结果如图3.1.9所示。

图3.1.6FIN扫描

图3.1.7XmasTree扫描

图3.1.8Null扫描

图3.1.9操作系统指纹识别

注意,nmap的这种方式有时也会得到错误的诊断信息,比如系统有端口开放。

但nmap返回不可识别的操作系统,这也是有可能的,这时可以用nmap的-d参数来测试,详见nmap参考文档。

7、其他应用

(1)扫描主机群

除了扫描单个目标主机,还可以同时扫描一个主机群,如:

nmap–sT–O192.168.0.1-10就可以同时扫描并探测IP地址在192.168.0.1-192.168.0.10之间的每一台主机。

当然这需要更多的时间,耗费更多的系统资源和网络带宽,输出结果页可能会很长。

此时可以用下面的命令将结果重定向输送到一个文件中:

nmap–sT–O–oNscan_result.txt192.168.0.1-10,输出结果如图3.1.10所示。

(2)其他常用参数

1)-I:

进行TCP反向用户认证扫描,可以透露扫描用户信息。

其原理是利用了Ident协议(RFC1413),Ident协议允许看到通过TCP连接的任何进程的拥有者的用户名,即使这个连接不是由该进程发起的。

例如可以连接到一个http端口,然后通过ident来发现服务器是否正在以root权限运行。

但这种扫描方式只能在和目标端口建立了一个完整的TCP全连接之后才有效,并且实际上很多主机都会关闭ident服务,因此在高版本Nmap中已不再支持这种扫描方式。

nmap–IIP地址,如nmap–I192.168.0.5,则可对目标主机192.168.0.5进行TCP反向用户认证扫描,输出结果如图3.1.11所示。

图3.1.10扫描主机群

图3.1.11TCP反向用户认证扫描

2)-iR:

进行随机主机扫描。

nmap–iR扫描主机数,如nmap–iR3,则可对3个随机目标主机进行扫描,输出结果如图3.1.12所示。

3)-p:

扫描特定的端口范围,默认扫描的是从1到1024端口。

nmap–p端口范围IP地址,如nmap–p1025-3000192.168.0.5,则可对目标主机192.168.0.5中1025-3000范围内的端口进行扫描,输出结果如图3.1.13所示。

图3.1.12随机主机扫描

图3.1.13特定的端口范围扫描

4)-v:

详细模式,能带来更多信息,进行长数据显示,-v–v是最长数据显示。

nmap–vIP地址,如nmap–v192.168.0.5,则可对目标主机192.168.0.5进行详细模式扫描,输出结果如图3.1.14所示。

5)-host_timeout<

毫秒数>

超时参数,具体制定nmap对某个IP的扫描时间总量,超过则作不通处理,默认值是不做设定。

网络设备上被过滤掉的端口一般会大大延长侦测时间,设置超时参数有时可以显著降低扫描网络所需时间。

Nmap会显示出哪些网络设备响应超时,这时就可以对这些设备进行个别处理,从而保证大范围网络扫描的整体速度。

nmap–host_timeout<

IP地址,如nmap–host_timeout4000192.168.0.5,则可指定在4000ms内对目标主机192.168.0.5进行扫描,输出结果如图3.1.15所示。

对Nmap的不同参数进行组合,可根据不同需要实现对目标主机的功能强大的灵活扫描,例如:

对192.168.0.1-192.168.0.10范围内的主机进行SYN半开扫描,探测哪些主机提供FTP或者HTTP服务,并将扫描结果存放到ftphttpscan_result.txt文件中,则命令行为:

Nmap–sS–p23,80–oNftphttpscan_result.txt192.168.0.1-10,输出结果如图3.1.16所示。

图3.1.14详细模式扫描

图3.1.15指定超时参数扫描

图3.1.16探测哪些主机提供FTP或者HTTP服务

(四)分析与思考

1、仔细阅读nmap参考文档,了解并尝试验证nmap其他参数的功能及不同参数的组合,并分析各自的技术原理和优缺点。

2、熟悉netstat等端口查看与管理工具。

3、如何对网络端口扫描进行防范?

4、编程实现一个简单的端口扫描程序。

四、实验提交材料

1、实验报告。

实验报告应包括以下内容:

实验名称、实验目的、实验内容及要求、实验过程及结果、实验中的问题及心得。

实验格式参见“附录:

实验报告样例”。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 法律文书 > 判决书

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1