




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第第2章章 扫描与防御技术扫描与防御技术2022-5-10网络入侵与防范讲义2本章内容安排本章内容安排o 2.1 扫描技术概述扫描技术概述o 2.2 常见的扫描技术常见的扫描技术o 2.3 扫描工具赏析扫描工具赏析o 2.4 扫描的防御扫描的防御o 2.5 小结小结2022-5-10网络入侵与防范讲义32.1 扫描技术概述扫描技术概述o 什么是扫描器什么是扫描器o 网络扫描器是一把双刃剑网络扫描器是一把双刃剑o 为什么需要网络扫描器为什么需要网络扫描器o 扫描的重要性扫描的重要性o 网络扫描器的主要功能网络扫描器的主要功能o 网络扫描器与漏洞的关系网络扫描器与漏洞的关系o 扫描三步曲扫描三步曲
2、o 一个典型的扫描案例一个典型的扫描案例2022-5-10网络入侵与防范讲义4什么是扫描器什么是扫描器o 扫描器是一种自动检测远程或本地主机安全性扫描器是一种自动检测远程或本地主机安全性弱点的程序。它集成了常用的各种扫描技术,弱点的程序。它集成了常用的各种扫描技术,能自动发送数据包去探测和攻击远端或本地的能自动发送数据包去探测和攻击远端或本地的端口和服务,并自动收集和记录目标主机的反端口和服务,并自动收集和记录目标主机的反馈信息,从而发现目标主机是否存活、目标网馈信息,从而发现目标主机是否存活、目标网络内所使用的设备类型与软件版本、服务器或络内所使用的设备类型与软件版本、服务器或主机上各主机上
3、各TCP/UDP端口的分配、所开放的服端口的分配、所开放的服务、所存在的可能被利用的安全漏洞。据此提务、所存在的可能被利用的安全漏洞。据此提供一份可靠的安全性分析报告,报告可能存在供一份可靠的安全性分析报告,报告可能存在的脆弱性。的脆弱性。2022-5-10网络入侵与防范讲义5网络扫描器是一把双刃剑网络扫描器是一把双刃剑o 安全评估工具安全评估工具系统管理员系统管理员保障系统安全的有效工具保障系统安全的有效工具o 网络漏洞扫描器网络漏洞扫描器网络入侵者网络入侵者收集信息的重要手段收集信息的重要手段o 扫描器是一把扫描器是一把“双刃剑双刃剑”。2022-5-10网络入侵与防范讲义6为什么需要网络
4、扫描器为什么需要网络扫描器o 由于网络技术的飞速发展,网络规模迅猛增由于网络技术的飞速发展,网络规模迅猛增长和计算机系统日益复杂,导致新的系统漏长和计算机系统日益复杂,导致新的系统漏洞层出不穷洞层出不穷o 由于系统管理员的疏忽或缺乏经验,导致旧由于系统管理员的疏忽或缺乏经验,导致旧有的漏洞依然存在有的漏洞依然存在o 许多人出于好奇或别有用心,不停的窥视网许多人出于好奇或别有用心,不停的窥视网上资源上资源2022-5-10网络入侵与防范讲义7扫描的重要性扫描的重要性o 扫描的重要性扫描的重要性在于把繁琐的安全检测,通过在于把繁琐的安全检测,通过程序来自动完成,这不仅减轻了网络管理员程序来自动完成
5、,这不仅减轻了网络管理员的工作,而且也缩短了检测时间。的工作,而且也缩短了检测时间。o 同时,也可以认为扫描器是一种同时,也可以认为扫描器是一种网络安全性网络安全性评估软件评估软件,利用扫描器可以快速、深入地对,利用扫描器可以快速、深入地对目标网络进行安全评估。目标网络进行安全评估。o 网络安全扫描技术与防火墙、安全监控系统网络安全扫描技术与防火墙、安全监控系统互相配合能够为网络提供很高的安全性。互相配合能够为网络提供很高的安全性。网络扫描网络扫描 VS. 入室盗窃窥探入室盗窃窥探2022-5-10网络入侵与防范讲义9网络扫描器的主要功能网络扫描器的主要功能o 扫描目标主机识别其工作状态(开扫
6、描目标主机识别其工作状态(开/关机)关机)o 识别目标主机端口的状态(监听识别目标主机端口的状态(监听/关闭)关闭)o 识别目标主机操作系统的类型和版本识别目标主机操作系统的类型和版本o 识别目标主机服务程序的类型和版本识别目标主机服务程序的类型和版本o 分析目标主机、目标网络的漏洞(脆弱点)分析目标主机、目标网络的漏洞(脆弱点)o 生成扫描结果报告生成扫描结果报告2022-5-10网络入侵与防范讲义10网络扫描器与漏洞的关系网络扫描器与漏洞的关系o 网络漏洞网络漏洞是系统软、硬件存在安全方面的是系统软、硬件存在安全方面的脆弱性,安全漏洞的存在导致非法用户入脆弱性,安全漏洞的存在导致非法用户入
7、侵系统或未经授权获得访问权限,造成信侵系统或未经授权获得访问权限,造成信息篡改、拒绝服务或系统崩溃等问题。息篡改、拒绝服务或系统崩溃等问题。o 网络扫描网络扫描可以对计算机网络系统或网络设可以对计算机网络系统或网络设备进行安全相关的检测,以找出安全隐患备进行安全相关的检测,以找出安全隐患和可能被黑客利用的漏洞。和可能被黑客利用的漏洞。2022-5-10网络入侵与防范讲义11扫描三步曲扫描三步曲o 一个完整的网络安全扫描分为三个阶段:一个完整的网络安全扫描分为三个阶段:n 第一阶段:第一阶段:发现目标主机或网络发现目标主机或网络n 第二阶段:第二阶段:发现目标后进一步搜集目标信息,发现目标后进一
8、步搜集目标信息,包括操作系统类型、运行的服务以及服务软件包括操作系统类型、运行的服务以及服务软件的版本等。如果目标是一个网络,还可以进一的版本等。如果目标是一个网络,还可以进一步发现该网络的拓扑结构、路由设备以及各主步发现该网络的拓扑结构、路由设备以及各主机的信息机的信息n 第三阶段:第三阶段:根据收集到的信息判断或者进一步根据收集到的信息判断或者进一步测试系统是否存在安全漏洞测试系统是否存在安全漏洞2022-5-10网络入侵与防范讲义12扫描三步曲(续)扫描三步曲(续)o 网络安全扫描技术包括网络安全扫描技术包括PING扫描、操作系统探测、扫描、操作系统探测、穿透防火墙探测、端口扫描、漏洞扫
9、描等穿透防火墙探测、端口扫描、漏洞扫描等o PING扫描扫描用于扫描用于扫描第一阶段第一阶段,识别系统是否活动,识别系统是否活动o OS探测、穿透防火墙探测、端口扫描探测、穿透防火墙探测、端口扫描用于扫描用于扫描第二第二阶段阶段n OS探测探测是对目标主机运行的是对目标主机运行的OS进行识别进行识别n 穿透防火墙探测穿透防火墙探测用于获取被防火墙保护的网络资料用于获取被防火墙保护的网络资料n 端口扫描端口扫描是通过与目标系统的是通过与目标系统的TCP/IP端口连接,并端口连接,并查看该系统处于监听或运行状态的服务查看该系统处于监听或运行状态的服务o 漏洞扫描漏洞扫描用于安全扫描用于安全扫描第三
10、阶段第三阶段,通常是在端口扫,通常是在端口扫描的基础上,进而检测出目标系统存在的安全漏洞描的基础上,进而检测出目标系统存在的安全漏洞2022-5-10网络入侵与防范讲义13一个典型的扫描案例一个典型的扫描案例简单邮件传输协议SMTP的脆弱性检测2022-5-10网络入侵与防范讲义141. Find targetso 选定目标为:选定目标为:8o 测试此主机是否处于活动状态,工具是用操测试此主机是否处于活动状态,工具是用操作系统自带的作系统自带的ping,使用命令:,使用命令:ping 8o 结果见下页图。结果见下页图。2022-5-10网络入侵与防范
11、讲义15说明该主机处于活动状态说明该主机处于活动状态2022-5-10网络入侵与防范讲义162. Port Scano 运用扫描工具,检查目标主机开放的端口,运用扫描工具,检查目标主机开放的端口,判断它运行了哪些服务判断它运行了哪些服务o 使用的工具是使用的工具是Nmap(此工具将在后面进(此工具将在后面进行介绍)行介绍)o 扫描命令:扫描命令:nmap 8o 扫描结果见下面图扫描结果见下面图2022-5-10网络入侵与防范讲义172022-5-10网络入侵与防范讲义182. Port Scan(2)o 端口开放信息如下:端口开放信息如下:n 21/tcp open ft
12、pn 25/tcp open smtpn 42/tcp open nameservern 53/tcp open domainn 80/tcp open httpn o 我们将重点关注我们将重点关注SMTP端口端口2022-5-10网络入侵与防范讲义193. Vulnerability Checko 检测检测SMTP服务是否存在漏洞服务是否存在漏洞o 使用漏洞扫描工具使用漏洞扫描工具Nessus(内萨斯(内萨斯,此工此工具在后面将会介绍)具在后面将会介绍)o 扫描过程见下页图扫描过程见下页图2022-5-10网络入侵与防范讲义20扫描目标是扫描目标是82022-5-10网
13、络入侵与防范讲义21Nessus正在进行漏洞扫描正在进行漏洞扫描2022-5-10网络入侵与防范讲义224. Reporto Nessus发现了目标主机的发现了目标主机的SMTP服务存在服务存在漏洞。漏洞。o 扫描报告中与扫描报告中与SMTP漏洞相关的部分见下页漏洞相关的部分见下页图。图。2022-5-10网络入侵与防范讲义23漏洞编号:漏洞编号:CVE-2003-08182022-5-10网络入侵与防范讲义242.2 常见的扫描技术常见的扫描技术o TCP/IP相关知识相关知识o 常用网络命令常用网络命令o 主机扫描主机扫描o 端口扫描端口扫描n全扫描全扫描n半扫描半扫描n秘密扫描秘密扫描n
14、认证认证(ident)扫描扫描nFTP代理扫描代理扫描o 远程主机远程主机OS指纹识别指纹识别o 漏洞扫描漏洞扫描不可不学的扫描技术不可不学的扫描技术巧妙奇特的天才构思巧妙奇特的天才构思2022-5-10网络入侵与防范讲义25TCP/IP相关知识相关知识o TCP报文格式报文格式 o TCP通信过程通信过程o ICMP协议协议2022-5-10网络入侵与防范讲义26TCP报文格式报文格式 2022-5-10网络入侵与防范讲义27TCP控制位控制位o URG: 为紧急数据标志。如果它为为紧急数据标志。如果它为1,表示本,表示本数据包中包含紧急数据。此时紧急数据指针有数据包中包含紧急数据。此时紧急
15、数据指针有效。效。o ACK: 为确认标志位。如果为为确认标志位。如果为1,表示包中的,表示包中的确认号是有效的。否则,包中的确认号无效。确认号是有效的。否则,包中的确认号无效。o PSH: 如果置位,接收端应尽快把数据传送给如果置位,接收端应尽快把数据传送给应用层。应用层。2022-5-10网络入侵与防范讲义28TCP控制位控制位o RST: 用来复位一个连接。用来复位一个连接。RST标志置位的数标志置位的数据包称为复位包。一般情况下,如果据包称为复位包。一般情况下,如果TCP收到收到的一个分段明显不是属于该主机上的任何一个的一个分段明显不是属于该主机上的任何一个连接,则向远端发送一个复位包
16、。连接,则向远端发送一个复位包。 o SYN: 标志位用来建立连接,让连接双方同步标志位用来建立连接,让连接双方同步序列号。如果序列号。如果SYN1而而ACK=0,则表示该,则表示该数据包为连接请求,如果数据包为连接请求,如果SYN=1而而ACK=1则表示接受连接。则表示接受连接。o FIN: 表示发送端已经没有数据要求传输了,表示发送端已经没有数据要求传输了,希望释放连接。希望释放连接。2022-5-10网络入侵与防范讲义29TCP通信过程通信过程o正常正常TCP通信过程通信过程:n 建立连接建立连接n (数据传输数据传输)n 断开连接断开连接2022-5-10网络入侵与防范讲义30建立建立
17、TCP连接连接ClientServer SYN JSYN,ACK,J+1 ACK K+1SYN_SENT(主动打开) ESTABLISHED LISTEN(被动监听)SYN RCVDESTABLISHEDSYN_RCVD是TCP三次握手的中间状态2022-5-10网络入侵与防范讲义31断开断开TCP连接连接2022-5-10网络入侵与防范讲义32ICMP协议(协议(1)o Internet Control Message Protocol,是是IP的一部分,在的一部分,在IP协议栈中必须实现。协议栈中必须实现。o 用途:用途:n 网关或者目标机器利用网关或者目标机器利用ICMP与源通讯与源通讯
18、n 当出现问题时,提供反馈信息用于报告错误当出现问题时,提供反馈信息用于报告错误o 特点:特点:n 其控制能力并不用于保证传输的可靠性其控制能力并不用于保证传输的可靠性n 它本身也不是可靠传输的它本身也不是可靠传输的n 并不用来反映并不用来反映ICMP报文的传输情况报文的传输情况2022-5-10网络入侵与防范讲义33ICMP协议(协议(2)ICMP报文类型报文类型n 0 Echo Replyn 3 Destination Unreachablen 4 Source Quench n 5 Redirect n 8 Echo n 11 Time Exceededn 12 Parameter Pr
19、oblemn 13 Timestamp n 14 Timestamp Reply n 15 Information Request n 16 Information Reply n 17 Address Mask Request n 18 Address Mask Reply 2022-5-10网络入侵与防范讲义34常用网络命令常用网络命令o Pingo Traceroute、Tracert、x-firewalko Net命令系列命令系列2022-5-10网络入侵与防范讲义35常用网络命令常用网络命令-pingo Ping是最基本的扫描技术。是最基本的扫描技术。o ping命令命令主要目的是检
20、测目标主机是不主要目的是检测目标主机是不是可连通,继而探测一个是可连通,继而探测一个IP范围内的主机是范围内的主机是否处于激活状态。否处于激活状态。不要小瞧不要小瞧pingping黑客的攻击往往都是从黑客的攻击往往都是从pingping开始的开始的2022-5-10网络入侵与防范讲义36常用网络命令常用网络命令-ping的原理的原理o ping是一个基本的网络命令,用来确定网是一个基本的网络命令,用来确定网络上具有某个特定络上具有某个特定IP地址的主机是否存在地址的主机是否存在以及是否能接收请求。以及是否能接收请求。o Ping命令通过向计算机发送命令通过向计算机发送ICMP回应报回应报文并且
21、监听回应报文的返回,以校验与远程文并且监听回应报文的返回,以校验与远程计算机或本地计算机的连接。计算机或本地计算机的连接。 2022-5-10网络入侵与防范讲义37常用网络命令常用网络命令-ping参数说明参数说明o ping在安装了在安装了TCP/IP协议后可以使用。协议后可以使用。2022-5-10网络入侵与防范讲义38常用网络命令常用网络命令ping命令使用命令使用l -n: 发送发送ICMP回应报文的个数回应报文的个数2022-5-10网络入侵与防范讲义39常用网络命令常用网络命令- Tracerouteo Traceroute跟踪两台机器之间的路径,显示中跟踪两台机器之间的路径,显示
22、中间的每一个节点的信息。这个工具可以用来确定某个间的每一个节点的信息。这个工具可以用来确定某个主机的位置。主机的位置。o traceroute 命令旨在用于网络测试、评估和管理。命令旨在用于网络测试、评估和管理。它应主要用于手动故障隔离。它应主要用于手动故障隔离。 o 语法语法:2022-5-10网络入侵与防范讲义40常用网络命令常用网络命令 Traceroute说明说明o -f -f后指定一个初始后指定一个初始TTL,它的范围是大于,它的范围是大于0小于小于最大最大TTL,缺省为,缺省为1。o -m -m后指定一个最大后指定一个最大TTL,它的范围是大于初始,它的范围是大于初始TTL,缺省为
23、,缺省为30。o -p -p后可以指定一个整数,该整数是目的主机的端后可以指定一个整数,该整数是目的主机的端口号,它的缺省为口号,它的缺省为33434,用户一般无须更改此选,用户一般无须更改此选项。项。o -q -q后可以指定一个整数后可以指定一个整数,该整数是每次发送的探该整数是每次发送的探测数据包的个数,它的范围是大于测数据包的个数,它的范围是大于0,缺省为,缺省为3。o -w -w后可以指定一个整数,该整数指明后可以指定一个整数,该整数指明IP包的超包的超时时间,它的范围是大于时时间,它的范围是大于0,缺省为,缺省为5秒。秒。o host 目的主机的目的主机的IP地址地址2022-5-1
24、0网络入侵与防范讲义41常用网络命令常用网络命令 Traceroute示例示例Quid # traceroute 8 traceroute to (8), 30 hops max, 56byte packet1 () 19 ms 19 ms 0 ms 2 lilac-dmc.Berkeley.EDU () 39 ms 39 ms 19 ms3 ccngw-ner-cc.Berkeley.EDU (3) 39ms 40ms 39ms4 ccn-nerif22.
25、Berkeley.EDU (2) 39 ms 39 ms 39 ms5 () 40 ms 59 ms 59 ms6 () 59 ms 59 ms 59 ms7 3 (3) 99 ms 99 ms 80 ms8 () 139 ms 239 ms 319 ms9 () 220 ms 199 ms 199 ms10 nic.merit.
26、edu (8) 239 ms 239 ms 239 ms可以看出从源主机到目的地都经过了哪些网关,这对于网络分析是非常有用的。可以看出从源主机到目的地都经过了哪些网关,这对于网络分析是非常有用的。2022-5-10网络入侵与防范讲义42常用的网络命令常用的网络命令Tracert、x-firewalko Windows下用下用tracert命令可以查看路由信命令可以查看路由信息,但是如今的路由器大部分都对息,但是如今的路由器大部分都对tracert命命令做了限制,此命令已经没有效果。令做了限制,此命令已经没有效果。o 有黑客开发出有黑客开发出x-firewalk.exe可用于在可
27、用于在Windows环境下查看路由信息,非常实用,环境下查看路由信息,非常实用,下载地址是下载地址是http:/ 命令:命令:x-firewalk o 可以看到本地到达可以看到本地到达都经过了哪些路由器都经过了哪些路由器2022-5-10网络入侵与防范讲义44常用网络命令常用网络命令-neto Net命令系列命令系列很多的很多的Windows的网络命令的网络命令都是都是net开头的。利用开头的。利用net开头的命令,可以实现开头的命令,可以实现很多的网络管理功能很多的网络管理功能比如用比如用net start server,可以启动服务器;,可以启动服务器;NET USE 用于将计用于将计算机
28、与共享的资源相连接,或者切断计算机与共算机与共享的资源相连接,或者切断计算机与共享资源的连接,当不带选项使用本命令时,它会享资源的连接,当不带选项使用本命令时,它会列出计算机的连接。列出计算机的连接。 o 以下以以下以Windows 的的Net USE命令为例。命令为例。 2022-5-10网络入侵与防范讲义45常用网络命令常用网络命令net use示例示例net use命令及参数使用命令及参数使用2022-5-10网络入侵与防范讲义46常用网络命令常用网络命令net use示例示例(1) 用户名为用户名为Administrator,密码为,密码为longmang与远程计与远程计算机算机192
29、.168.1.34进行进行IPC$连接,如图所示。连接,如图所示。(2)查看与远程计算机建立的连接,如图所示。查看与远程计算机建立的连接,如图所示。 2022-5-10网络入侵与防范讲义47常用网络命令常用网络命令net use示例示例(3)将远程计算机的将远程计算机的c盘映射到本地盘映射到本地o盘,如图所示。盘,如图所示。 2022-5-10网络入侵与防范讲义48常用网络命令常用网络命令net use示例示例(4)删除一个删除一个IPC$连接连接(5)删除共享映射删除共享映射2022-5-10网络入侵与防范讲义49主机扫描技术主机扫描技术o 传统技术传统技术o 高级技术高级技术2022-5-
30、10网络入侵与防范讲义50主机扫描技术传统技术主机扫描技术传统技术o 主机扫描的目的是确定在目标网络上的主机主机扫描的目的是确定在目标网络上的主机是否可达。这是信息收集的初级阶段,其效是否可达。这是信息收集的初级阶段,其效果直接影响到后续的扫描。果直接影响到后续的扫描。o 常用的传统扫描手段有:常用的传统扫描手段有:n ICMP Echo扫描扫描n ICMP Sweep扫描扫描n Broadcast ICMP扫描扫描n Non-Echo ICMP扫描扫描2022-5-10网络入侵与防范讲义51ICMP echo扫描扫描o 实现原理:实现原理:Ping的实现机制,在判断在一个网络的实现机制,在判
31、断在一个网络上主机是否开机时非常有用。向目标主机发送上主机是否开机时非常有用。向目标主机发送ICMP Echo Request (type 8)数据包,等待数据包,等待回复的回复的ICMP Echo Reply 包包(type 0) 。如果。如果能收到,则表明目标系统可达,否则表明目标系统能收到,则表明目标系统可达,否则表明目标系统已经不可达或发送的包被对方的设备过滤掉。已经不可达或发送的包被对方的设备过滤掉。 o 优点:简单,系统支持优点:简单,系统支持o 缺点:很容易被防火墙限制缺点:很容易被防火墙限制o 可以通过并行发送,同时探测多个目标主机,以提可以通过并行发送,同时探测多个目标主机,
32、以提高探测效率(高探测效率(ICMP Sweep扫描)。扫描)。2022-5-10网络入侵与防范讲义52ICMP sweep扫描扫描o 使用使用ICMP ECHO轮询多个主机称为轮询多个主机称为ICMP SWEEP(或者或者Ping Sweep)。o 对于小的或者中等网络使用这种方法来探测对于小的或者中等网络使用这种方法来探测主机是一种比较可接受的行为,但对于一些主机是一种比较可接受的行为,但对于一些大的网络如大的网络如A、B类类,这种方法就显的比较,这种方法就显的比较慢,原因是慢,原因是Ping在处理下一个之前将会等在处理下一个之前将会等待正在探测主机的回应。待正在探测主机的回应。o 扫描工
33、具扫描工具Nmap实现了实现了ICMP sweep的功的功能。能。2022-5-10网络入侵与防范讲义53Broadcast ICMP扫描扫描o 实现原理:将实现原理:将ICMP请求包的目标地址设为广请求包的目标地址设为广播地址或网络地址,则可以探测广播域或整个播地址或网络地址,则可以探测广播域或整个网络范围内的主机。网络范围内的主机。o 缺点:缺点:n 只适合于只适合于UNIX/Linux系统,系统,Windows 会忽会忽略这种请求包;略这种请求包;n 这种扫描方式容易引起广播风暴这种扫描方式容易引起广播风暴2022-5-10网络入侵与防范讲义54Non-Echo ICMP扫描扫描o 一些
34、其它一些其它ICMP类型包也可以用于对主机或类型包也可以用于对主机或网络设备的探测,如:网络设备的探测,如:n Stamp Request (Type 13)n Reply (Type 14)n Information Request (Type 15)n Reply (Type 16)n Address Mask Request (Type 17)n Reply (Type 18)2022-5-10网络入侵与防范讲义55主机扫描技术高级技术主机扫描技术高级技术o 防火墙和网络过滤设备常常导致传统的探测手段变防火墙和网络过滤设备常常导致传统的探测手段变得无效。为了突破这种限制,必须采用一些非常
35、规得无效。为了突破这种限制,必须采用一些非常规的手段,利用的手段,利用ICMP协议提供网络间传送错误信息协议提供网络间传送错误信息的手段,往往可以更有效的达到目的:的手段,往往可以更有效的达到目的:n 异常的异常的IP包头包头n 在在IP头中设置无效的字段值头中设置无效的字段值n 错误的数据分片错误的数据分片n 通过超长包探测内部路由器通过超长包探测内部路由器n 反向映射探测反向映射探测端口扫描技术端口扫描技术o TCP/IP协议提出的端口是网络通信进程与协议提出的端口是网络通信进程与外界通讯交流的出口,可被命名和寻址,可外界通讯交流的出口,可被命名和寻址,可以认为是网络通信进程的一种标识符。
36、以认为是网络通信进程的一种标识符。o 进程通过系统调用与某端口建立连接绑定后进程通过系统调用与某端口建立连接绑定后,便会监听这个端口,传输层传给该端口的,便会监听这个端口,传输层传给该端口的数据都被相应进程所接收,而相应进程发给数据都被相应进程所接收,而相应进程发给传输层的数据都从该端口输出。传输层的数据都从该端口输出。o 互联网上的通信双方不仅需要知道对方的互联网上的通信双方不仅需要知道对方的IP地址,也需要知道通信程序的端口号。地址,也需要知道通信程序的端口号。端口扫描技术端口扫描技术o 目前目前IPv4协议支持协议支持16位的端口,端口号范围是位的端口,端口号范围是065535。其中,。
37、其中,01023号端口称为熟知端口号端口称为熟知端口,被提供给特定的服务使用;,被提供给特定的服务使用;102449151号号端口称为注册端口,由端口称为注册端口,由IANA记录和追踪;记录和追踪;4915265535号端口称为动态端口或专用端口号端口称为动态端口或专用端口,提供给专用应用程序。,提供给专用应用程序。 o 许多常用的服务使用的是标准的端口,只要扫描到许多常用的服务使用的是标准的端口,只要扫描到相应的端口,就能知道目标主机上运行着什么服务相应的端口,就能知道目标主机上运行着什么服务。端口扫描技术就是利用这一点向目标系统的。端口扫描技术就是利用这一点向目标系统的TCP/UDP端口发
38、送探测数据包,记录目标系统端口发送探测数据包,记录目标系统的响应,通过分析响应来查看该系统处于监听或运的响应,通过分析响应来查看该系统处于监听或运行状态的服务。行状态的服务。2022-5-10网络入侵与防范讲义58端口扫描技术端口扫描技术o当确定了目标主机可达后,就可以使用端口扫描技术,发现目标主机的开放端口,当确定了目标主机可达后,就可以使用端口扫描技术,发现目标主机的开放端口,包括网络协议和各种应用监听的端口。端口扫描技术包括以下几种:包括网络协议和各种应用监听的端口。端口扫描技术包括以下几种:o全扫描全扫描n需要扫描方通过三次握手过程与目标主机建立完整的需要扫描方通过三次握手过程与目标主
39、机建立完整的TCP连接连接n会产生大量的审计数据,容易被对方发现,但其可靠性高。会产生大量的审计数据,容易被对方发现,但其可靠性高。o半扫描半扫描n扫描方不需要打开一个完全的扫描方不需要打开一个完全的TCP连接连接n隐蔽性和可靠性介于全扫描和秘密扫描之间。隐蔽性和可靠性介于全扫描和秘密扫描之间。o秘密扫描秘密扫描n不包含标准的不包含标准的TCP三次握手协议的任何部分三次握手协议的任何部分n能有效的避免对方入侵检测系统和防火墙的检测,但使用的数据包在通过网络能有效的避免对方入侵检测系统和防火墙的检测,但使用的数据包在通过网络时容易被丢弃从而产生错误的探测信息。时容易被丢弃从而产生错误的探测信息。
40、o认证认证(ident)扫描扫描n需要先建立一个完整的需要先建立一个完整的TCP连接。连接。oFTP代理扫描代理扫描n隐蔽性好,难以追踪。但受到服务器设置的限制。隐蔽性好,难以追踪。但受到服务器设置的限制。o Windows本身自带的本身自带的netstat命令命令o Netstat 显示协议统计和当前的显示协议统计和当前的 TCP/IP 网络连接。网络连接。o 命令格式命令格式 netstat -a -e -n -s -p protocol -r interval 用DOS命令显示所有的监听端口 Netstat参数参数-a 显示所有连接和侦听端口。服务器连接通常不显示。显示所有连接和侦听端口
41、。服务器连接通常不显示。-e 显示以太网统计。该参数可以与显示以太网统计。该参数可以与 -s 选项结合使用。选项结合使用。 -n 以数字格式显示地址和端口号以数字格式显示地址和端口号(而不是尝试查找名称而不是尝试查找名称)。-s 显示每个协议的统计。默认情况下,显示显示每个协议的统计。默认情况下,显示 TCP、UDP、 ICMP 和和 IP 的统计。的统计。-p 选项可以用来指定默认的子集。选项可以用来指定默认的子集。 -p protocol -显示由显示由 protocol 指定的协议的连接指定的协议的连接;protocol 可可 以是以是 tcp 或或 udp。如果与。如果与 -s 选项一
42、同使用显示每个协议选项一同使用显示每个协议的的 统计,统计,protocol 可以是可以是 tcp、udp、icmp 或或 ip。 -r 显示路由表的内容。显示路由表的内容。 interval 重新显示所选的统计,在每次显示之间暂停重新显示所选的统计,在每次显示之间暂停 interval 秒。按秒。按 CTRL+B 停止重新显示统计。如果省略该参数,停止重新显示统计。如果省略该参数,netstat 将打印一次当前的配置信息。将打印一次当前的配置信息。Netstat实例实例:查看:查看机器开放的端口机器开放的端口本地机器的本地机器的7626端口已经开放,正在监听等待连接,像这样的情况极有可能是已
43、经感染了端口已经开放,正在监听等待连接,像这样的情况极有可能是已经感染了冰河冰河! 必须先断开网络,再用杀毒软件查杀病毒。必须先断开网络,再用杀毒软件查杀病毒。 在在Windows中关闭中关闭/开启端口开启端口o在默认的情况下,有很多不安全的或没有什么用的端口是开启的,在默认的情况下,有很多不安全的或没有什么用的端口是开启的,比如比如Telnet服务的服务的23端口、端口、FTP服务的服务的21端口、端口、SMTP服务的服务的25端口、端口、RPC服务的服务的135端口等等。为了保证系统的安全性,我们端口等等。为了保证系统的安全性,我们可以通过下面的方法来关闭可以通过下面的方法来关闭/开启端口
44、。开启端口。o关闭端口关闭端口 例如,在例如,在Windows XP中关闭中关闭SMTP服务的服务的25端口,可以这端口,可以这样做:首先打开样做:首先打开“控制面板控制面板”,双击,双击“管理工具管理工具”,再双击,再双击“服务服务”。接着在打开的服务窗口中找到并双击。接着在打开的服务窗口中找到并双击“Simple Mail Transfer Protocol (SMTP)”服务,单击服务,单击“停止停止”按钮来停按钮来停止该服务,然后在止该服务,然后在“启动类型启动类型”中选择中选择“已禁用已禁用”,最后单击,最后单击“确确定定”按钮即可。这样,关闭了按钮即可。这样,关闭了SMTP服务就相
45、当于关闭了对应的端服务就相当于关闭了对应的端口。口。 o开启端口开启端口 如果要开启该端口只要先在如果要开启该端口只要先在“启动类型启动类型”选择选择“自动自动”,单击,单击“确定确定”按钮,再打开该服务,在按钮,再打开该服务,在“服务状态服务状态”中单击中单击“启动启动”按按钮即可启用该端口,最后,单击钮即可启用该端口,最后,单击“确定确定”按钮即可。按钮即可。 2022-5-10网络入侵与防范讲义63远程主机远程主机OS指纹识别指纹识别o 基本原理基本原理o 主动协议栈指纹识别主动协议栈指纹识别o 被动协议栈指纹识别被动协议栈指纹识别2022-5-10网络入侵与防范讲义64远程主机远程主机
46、OS指纹识别的基本原理指纹识别的基本原理o 操作系统(操作系统(Operating System,简称,简称OS)识)识别是入侵或安全检测需要收集的重要信息,是分别是入侵或安全检测需要收集的重要信息,是分析漏洞和各种安全隐患的基础。析漏洞和各种安全隐患的基础。o 只有确定了远程主机的操作系统类型、版本,才只有确定了远程主机的操作系统类型、版本,才能对其安全状况作进一步的评估。能对其安全状况作进一步的评估。o 利用利用TCP/IP堆栈作为特殊的堆栈作为特殊的“指纹指纹”,以确定系,以确定系统的技术统的技术远程主机远程主机OS指纹识别。指纹识别。n 主动协议栈指纹识别主动协议栈指纹识别 n 被动协
47、议栈指纹识别被动协议栈指纹识别2022-5-10网络入侵与防范讲义65主动协议栈指纹识别主动协议栈指纹识别是主动向主机发起连接,并分析收到的响应,从而确定是主动向主机发起连接,并分析收到的响应,从而确定OS类型的技术。类型的技术。 o 由于由于TCP/IP协议栈技术只是在协议栈技术只是在RFC文档文档(RFC是是Request for Comments首字母的缩写,首字母的缩写,它是它是IETF(互联网工程任务推进组织)的一个(互联网工程任务推进组织)的一个无限制分发文档。无限制分发文档。RFC被编号并且用编号来标识被编号并且用编号来标识)中描述,各个公司在编写应用于自己的中描述,各个公司在编
48、写应用于自己的OS的的TCP/IP协议栈的时候,对协议栈的时候,对RFC文档做出了不尽文档做出了不尽相同的诠释。相同的诠释。o 造成了各个造成了各个OS在在TCP/IP协议的实现上的不同。协议的实现上的不同。o 通过对不同的通过对不同的OS的的TCP/IP协议栈存在的些微协议栈存在的些微差异差异(对错误包的响应,默认值等对错误包的响应,默认值等)都可以作为区都可以作为区分分0S的依据。的依据。2022-5-10网络入侵与防范讲义66主动协议栈指纹识别(主动协议栈指纹识别(2)o 主要技术有:主要技术有:n FIN探测探测 n ISN采样探测采样探测 n Dont Fragment位探测位探测
49、n TCP初始窗口的大小检测初始窗口的大小检测 n ACK值探测值探测 n ICMP出错消息抑制出错消息抑制 n ICMP出错消息回射完整性出错消息回射完整性 n TOS服务类型服务类型 n 片断处理片断处理 2022-5-10网络入侵与防范讲义67FIN探测探测o 跳过跳过TCP三次握手的顺序,给目标主机发送三次握手的顺序,给目标主机发送一个一个FIN包,然后等待回应。包,然后等待回应。RFC793规规定,正确的处理是没有响应,但有些定,正确的处理是没有响应,但有些OS,如如MS Windows,CISC0,HP/UX等等会响应一个会响应一个RST(即即Reset)包。包。o 2022-5-
50、10网络入侵与防范讲义68ISN采样探测采样探测o 这是寻找初始化序列长度模板与特定的这是寻找初始化序列长度模板与特定的OS匹配的方法,这样可以区分一些匹配的方法,这样可以区分一些OS,如早,如早些的些的UNIX系统是系统是64 K长度。而一些新的长度。而一些新的UNIX系统则是随机增加长度,如系统则是随机增加长度,如Solaris、IRIX、FreeBSD、Digital Unix、Cray等。等。2022-5-10网络入侵与防范讲义69Dont Fragment位探测位探测o 一些操作系统会设置一些操作系统会设置IP头部头部“Dont Fragment位位”(不分片位)以改善性能,(不分片
51、位)以改善性能,监视这个位就可以判定区分远程监视这个位就可以判定区分远程OS。 2022-5-10网络入侵与防范讲义70TCP初始窗口大小探测初始窗口大小探测o 简单检查返回的包里包含的窗口大小。某些简单检查返回的包里包含的窗口大小。某些OS在在TCP/IP协议栈的实现中,这个值是协议栈的实现中,这个值是独特的。如独特的。如AIX是是0 x3F25,NT和和BSD是是0 x402E,可以增加指纹鉴别的准确度。,可以增加指纹鉴别的准确度。 2022-5-10网络入侵与防范讲义71ACK值探测值探测o 不同的不同的OS对对TCP/IP协议栈实现在协议栈实现在ACK包包的序列号的值的选择上存在差异,
52、有些的序列号的值的选择上存在差异,有些OS发回所确认的发回所确认的TCP包的序列号,另外一些则包的序列号,另外一些则发回所确认的发回所确认的TCP包的序列号加包的序列号加1。2022-5-10网络入侵与防范讲义72ICMP出错信息抑制出错信息抑制o 有些有些OS限制限制ICMP出错消息的速率,通过出错消息的速率,通过某个随机选定的高端口发送某个随机选定的高端口发送UDP包,可能包,可能统计出在某个给定时间段内接受的不可达出统计出在某个给定时间段内接受的不可达出错消息的数目。错消息的数目。o RFC文件中规定,文件中规定,ICMP ERROR消息要消息要引用导致该消息的引用导致该消息的ICMP消
53、息的部分内容。消息的部分内容。例如对于端口不可达消息,某些例如对于端口不可达消息,某些OS返回收返回收到的到的IP头及后续的头及后续的8个字节,个字节,Solaris返回返回的的ERROR消息中则引用内容更多一些,而消息中则引用内容更多一些,而Linux比比Solaris还要多。还要多。2022-5-10网络入侵与防范讲义73ICMP出错消息回射完整性出错消息回射完整性o 某些某些OS对对TCP/IP协议栈的实现在返回协议栈的实现在返回ICMP出出错消息的时候会修改所引用的错消息的时候会修改所引用的IP头,检测对头,检测对IP头头的改动的类型可以粗略判断的改动的类型可以粗略判断OS。o RFC
54、l812中规定了中规定了ICMP ERROR消息的发送速消息的发送速度。度。Linux设定了目标不可达消息上限为设定了目标不可达消息上限为80个个4秒。秒。0S探测时可以向随机的高端探测时可以向随机的高端UDP端口大量端口大量发包,然后统计收到的目标不可达消息。用此技术发包,然后统计收到的目标不可达消息。用此技术进行进行OS探测时时间会长一些,因为要大量发包,探测时时间会长一些,因为要大量发包,并且还要等待响应,同时也可能出现网络中丢包的并且还要等待响应,同时也可能出现网络中丢包的情况。情况。2022-5-10网络入侵与防范讲义74TOS服务类型服务类型o 检测检测ICMP端口不可到达消息的端
55、口不可到达消息的TOS字段,字段,多数多数OS会是会是0,而另一些则不是。,而另一些则不是。2022-5-10网络入侵与防范讲义75片断处理片断处理o 不同的不同的TCP/IP协议栈实现对重叠的片断处协议栈实现对重叠的片断处理上有差异。有些在重组时会用到后到达的理上有差异。有些在重组时会用到后到达的新数据覆盖旧数据,有些则相反。新数据覆盖旧数据,有些则相反。2022-5-10网络入侵与防范讲义76被动协议栈指纹识别被动协议栈指纹识别是在网络中监听,分析系统流量,用默认值来猜测是在网络中监听,分析系统流量,用默认值来猜测0S类型的技术。类型的技术。 o 主动协议栈指纹识别由于需要主动往目标发主动
56、协议栈指纹识别由于需要主动往目标发送数据包,但这些数据包在网络流量中比较送数据包,但这些数据包在网络流量中比较惹人注意,因为正常使用网络不会按这样的惹人注意,因为正常使用网络不会按这样的顺序出现包,因此比较容易被顺序出现包,因此比较容易被IDS捕捕获。获。o 为了隐秘的识别远程为了隐秘的识别远程OS,需要使用被动协,需要使用被动协议栈指纹识别。议栈指纹识别。2022-5-10网络入侵与防范讲义77被动协议栈指纹识别(被动协议栈指纹识别(2)o 被动协议栈指纹识别在原理上和主动协议栈指纹识被动协议栈指纹识别在原理上和主动协议栈指纹识别相似,但是它从不主动发送数据包,只是被动的别相似,但是它从不主
57、动发送数据包,只是被动的捕获远程主机返回的包来分析其捕获远程主机返回的包来分析其OS类型版本,一类型版本,一般可以从般可以从4个反面着手:个反面着手:n TTL值值:这个数据是操作系统对出站的信息包设置:这个数据是操作系统对出站的信息包设置的存活时间。的存活时间。n Windows Size:操作系统设置的:操作系统设置的TCP窗口大小,窗口大小,这个窗口大小是在发送这个窗口大小是在发送FIN信息包时包含的选项。信息包时包含的选项。n DF:可以查看操作系统是否设置了不准分片位。:可以查看操作系统是否设置了不准分片位。n TOS:操作系统是否设置了服务类型。:操作系统是否设置了服务类型。202
58、2-5-10网络入侵与防范讲义78漏洞扫描漏洞扫描o 漏洞扫描技术的原理漏洞扫描技术的原理 o 漏洞扫描技术的分类和实现方法漏洞扫描技术的分类和实现方法o 漏洞扫描的问题漏洞扫描的问题 为什么会有漏洞为什么会有漏洞o 只要是人做出来的东西,就没有完美的,所只要是人做出来的东西,就没有完美的,所以有问题也不奇怪。以有问题也不奇怪。o 这就好像一个打字员打了一篇稿子,打字员这就好像一个打字员打了一篇稿子,打字员本身发现错字的可能性很小,倒是别人一眼本身发现错字的可能性很小,倒是别人一眼就可以看到打字员打错的字。就可以看到打字员打错的字。微软当初在编写系统的时候为什么不知道微软当初在编写系统的时候为
59、什么不知道有漏洞?有漏洞?o 很多所谓的漏洞都不算是漏洞,都是正常的很多所谓的漏洞都不算是漏洞,都是正常的数据值,所以不容易被发现。数据值,所以不容易被发现。o 举个例子,在检测一些举个例子,在检测一些ASP网站的时候,网站的时候,会用到会用到1=1 OR 1=2 之类的语句,之类的语句,o 这本身是这本身是ASP的一种正常的程序语句,但的一种正常的程序语句,但是到了黑客手中,就成了检测是到了黑客手中,就成了检测ASP网站的网站的重要检查项目,重要检查项目,o 黑客会根据检测网站返回的数据值,而得到黑客会根据检测网站返回的数据值,而得到大量的信息。大量的信息。o 微软发现后会发布相应的补丁,如
60、果用户及微软发现后会发布相应的补丁,如果用户及时下载补丁安装则操作系统是相对安全的,时下载补丁安装则操作系统是相对安全的,但是有的用户偷懒,不及时更新补丁,漏洞但是有的用户偷懒,不及时更新补丁,漏洞就得不到修补。就得不到修补。o 黑客先是用扫描器扫描远程的操作系统有何黑客先是用扫描器扫描远程的操作系统有何漏洞,然后根据这些漏洞编写相应的病毒包漏洞,然后根据这些漏洞编写相应的病毒包或者木马包,植入有漏洞的电脑。在这里扫或者木马包,植入有漏洞的电脑。在这里扫描起了关键作用。描起了关键作用。2022-5-10网络入侵与防范讲义82漏洞扫描原理漏洞扫描原理o 漏洞扫描主要通过以下两种方法来检查目标主机
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 英语健康话题词汇课件
- 外包项目制管理办法
- 投诉赔偿券管理办法
- 新员工出差管理办法
- 大型杨梅园管理办法
- 商品类采购管理办法
- 新修订征兵管理办法
- 处方权权限管理办法
- 医院全成本管理办法
- 新疆审读费管理办法
- 二升三数学综合练习 暑假每日一练60天
- 兵团连队综合管理办法
- (高清版)DB11∕T 509-2025 房屋建筑修缮工程定案和施工质量验收规程
- 眼科护士的职业发展与规划
- 2022年10月自考00420物理工试题及答案含评分标准
- “企业安全课件之网络安全培训”
- 儿童祛痰止咳治疗专家共识(2022版)
- 食用菌厂房设计方案
- 原发性干燥综合征的中西医协同诊疗课件
- 浙江秦燕化工有限公司clt酸技改扩产-clt酸副产物合成系列高分子分散剂项目环评报告书
- 衡阳技师学院教师招聘考试真题2022
评论
0/150
提交评论