收藏 分享(赏)

11.3- 网络攻击及其防范.ppt

上传人:hyngb9260 文档编号:7003023 上传时间:2019-04-30 格式:PPT 页数:44 大小:386KB
下载 相关 举报
11.3- 网络攻击及其防范.ppt_第1页
第1页 / 共44页
11.3- 网络攻击及其防范.ppt_第2页
第2页 / 共44页
11.3- 网络攻击及其防范.ppt_第3页
第3页 / 共44页
11.3- 网络攻击及其防范.ppt_第4页
第4页 / 共44页
11.3- 网络攻击及其防范.ppt_第5页
第5页 / 共44页
点击查看更多>>
资源描述

1、第5章 网络攻击及其防范,兰州交通大学 李启南,网络攻击是指对网络系统的机密性完整性可用性可控性和抗抵赖性产生危害的行为网络入侵是目前最受关注也是影响最大的网络攻击行为,所谓网络的入侵是指对接入网络的计算机系统的非法入侵,即攻击者未经合法的手段和程序而取得了使用该系统资源的权限网络入侵的目的有多种:或者是取得使用系统的存储能力处理能力以及访问其存储内容的权限;或者是作为进入其他系统的跳板;或者是想破坏这个系统(使其毁坏或丧失服务能力),5.1 网络攻击概述,这些行为可抽象地分为四个基本情形:信息泄漏攻击、完整性破坏攻击、拒绝服务攻击和非法使用攻击攻击类型主要有:拒绝服务攻击,分布式拒绝服务攻击

2、,利用型攻击,信息收集型攻击,假消息攻击等等。,5.1 网络攻击概述,拒绝服务攻击(Denial of Service,DoS)DoS攻击是目前最常见的一种攻击类型。从网络攻击的各种方法和所产生的破坏情况来看,DoS算是一种很简单,但又很有效的进攻方式。它的目的就是拒绝用户的服务访问,破坏组织的正常运行,最终使网络连接堵塞,或者服务器因疲于处理攻击者发送者发送的数据包而使服务器系统的相关服务崩溃,无法给合法用户提供服务。,5.1 网络攻击概述,DoS攻击的基本过程为:首先攻击者向服务器发送众多的带有虚假地址的请求,服务器发送回复信息后等待回传信息,由于地址是伪造的,所以服务器一直等不到回传的消

3、息,分配给这次请求的资源就始终没有被释放。当服务器等待一定的时间后,连接会因超时而被切断,攻击者会再度传送新的一批请求,在这种反复发送伪地址请求的情况下,服务器资源最终会被耗尽。,5.1 网络攻击概述,利用型攻击是一类试图直接对用户的机器进行控制的攻击,最常见的有三种:(1)口令猜测(2) 特洛伊木马:特洛伊木马是一种或是直接由一个黑客、或是通过一个不会令人起疑的用户秘密安装到目标系统的程序。一旦安装成功并取得管理员权限,安装此程序的人就可以直接远程控制目标系统。(3)缓冲区溢出,5.1 网络攻击概述,信息收集型攻击并不对目标本身造成危害,但这类攻击会为进一步入侵提供有用的信息。主要包括:扫描

4、技术、体系结构刺探和利用信息服务等。 (上一章已介绍)假消息攻击 :用于攻击目标配置不正确的消息,主要包括:DNS高速缓存污染、伪造电子邮件。,5.1 网络攻击概述,网络攻击的一般过程:(1)攻击者的身份和位置隐藏:利用被侵入的主机作为跳板,如在安装Windows的计算机内利用Wingate软件作为跳板,利用配置不当的Proxy作为踏板、电话转接技术、盗用他人的账号、代理、伪造IP地址、假冒用户账号。(2)收集攻击目标信息:主要方法有口令攻击、端口扫描、漏洞检测、对目标系统进行整体安全性分析,还可利用如ISS、SATAN和NESSUS等报告软件来收集目标信息。(3)挖掘漏洞信息:常用的技术有系

5、统或应用服务软件漏洞、主机信任关系漏洞、目标网络的使用者漏洞、通信协议漏洞和网络业务系统漏洞。(4)获取目标访问权限:通过一切办法获得管理员口令。,5.1 网络攻击概述,(5)隐蔽攻击行为:包括连接隐藏、进程隐藏和文件隐藏等。(6)实施攻击:攻击主要包括修改删除重要数据、窃听敏感数据、停止网络服务和下载敏感数据等。(7)开辟后门:主要有放宽文件许可权、重新开放不安全的服务如TFTP等、修改系统的配置如系统启动文件、替换系统本身的共享库文件、修改系统的源代码、安装各种特洛伊木马、安装Sniffers和建立隐蔽信道等。(8)清除攻击痕迹:主要方法有篡改日志文件中的审计信息、改变系统时间造成日志文件

6、数据紊乱以迷惑系统管理员、删除或停止审计服务进程、干扰入侵检测系统正常运行和修改完整性检测标签等。,5.1 网络攻击概述,缓冲区是程序运行的时候机器内存中的一个连续块,它保存了给定类型的数据,随着动态分配变量会出现问题。大多时为了不占用太多的内存,一个有动态分配变量的程序在程序运行时才决定给它们分配多少内存。如果一个程序要在动态分配缓冲区放入超长的数据,数据就会溢出。一个缓冲区溢出程序使用这个溢出的数据将汇编语言代码放到机器的内存里,通常是产生root权限的地方,这就会给系统产生极大的威胁。,5. 3 缓冲区溢出攻击及其防范,void function(char *str) char buff

7、er16;strcpy(buffer,str);上面的strcpy()将直接把str中的内容copy到buffer中。这样只要str的长度大于16,就会造成buffer的溢出,使程序运行出错。存在象strcpy这样的问题的标准函数还有strcat(),sprintf(),vsprintf(),gets(),scanf()等。,5. 3 缓冲区溢出攻击及其防范,最常见的手段是通过制造缓冲区溢出使程序运行一个用户shell,再通过shell执行其它命令。如果该程序属于root且有suid权限的话,攻击者就获得了一个有root权限的shell,可以对系统进行任意操作了。 缓冲区溢出攻击之所以成为一种

8、常见安全攻击手段其原因在于缓冲区溢出漏洞太普遍了,并且易于实现。缓冲区溢出漏洞给予了攻击者他所想要的一切:植入并且执行攻击代码。被植入的攻击代码以一定的权限运行有缓冲区溢出漏洞的程序,从而得到被攻击主机的控制权。 在1998年Lincoln实验室用来评估入侵检测的的5种远程攻击中,有2种是缓冲区溢出。而在1998年CERT的13份建议中,有9份是是与缓冲区溢出有关的,在1999年,至少有半数的建议是和缓冲区溢出有关的。在Bugtraq的调查中,有2/3的被调查者认为缓冲区溢出漏洞是一个很严重的安全问题。,5. 3 缓冲区溢出攻击及其防范,缓冲区是程序运行的时候机器内存中的一个连续块,它保存了给

9、定类型的数据,随着动态分配变量会出现问题。大多时为了不占用太多的内存,一个有动态分配变量的程序在程序运行时才决定给它们分配多少内存。如果一个程序要在动态分配缓冲区放入超长的数据,数据就会溢出。一个缓冲区溢出程序使用这个溢出的数据将汇编语言代码放到机器的内存里,通常是产生root权限的地方,这就会给系统产生极大的威胁。,5. 3 缓冲区溢出攻击及其防范,缓冲区是程序运行的时候机器内存中的一个连续块,它保存了给定类型的数据,随着动态分配变量会出现问题。大多时为了不占用太多的内存,一个有动态分配变量的程序在程序运行时才决定给它们分配多少内存。如果一个程序要在动态分配缓冲区放入超长的数据,数据就会溢出

10、。一个缓冲区溢出程序使用这个溢出的数据将汇编语言代码放到机器的内存里,通常是产生root权限的地方,这就会给系统产生极大的威胁。,5. 3 缓冲区溢出攻击及其防范,缓冲区溢出是指将一个超过缓冲区长度的字符串放入缓冲区的结果。向一个有限空间的缓冲区中植入超长的字符串可能会出现两个结果,一是过长的字符串覆盖了相邻的存储单元,引起程序运行失败,严重的可导致系统崩溃;另有一个结果就是利用这种漏洞可以执行任意指令,甚至可以取得系统root权限。大多造成缓冲区溢出的原因是程序中没有仔细检查用户输入参数而造成的。,5. 3 缓冲区溢出攻击及其防范,缓冲区溢出就是将一个超过缓冲区长度的字符串置入缓冲区的结果,

11、这是由于程序设计语言的一些漏洞,如C/C+ 语言中,不对缓冲区、数组及指针进行边界检查,(strcpy()、strcat()、sprintf()、gets()等语句)。如果向程序的有限空间的缓冲区中置入过长的字符串,造成缓冲区溢出,从而破坏程序的堆栈,使程序转去执行其他的指令,如果这些指令是放在有Root权限的内存里,那么一旦这些指令得到了运行,入侵者就以Root的权限控制了系统,这也是我们所说的U2R(User to Root Attacks)攻击。例如在Unix系统中,使用一些精心编写的程序,利用SUID程序(如FDFORMAT)中存在的缓冲区溢出错误就可以取得系统超级用户权限,在Unix

12、取得超级用户权限就意味着黑客可以随意控制系统。,5. 3 缓冲区溢出攻击及其防范,5. 3 缓冲区溢出攻击及其防范,以缓冲区溢出为攻击类型的安全漏洞是最为常见的一种形式。更为严重的是,缓冲区漏洞占了远程网络攻击的绝大多数,这种攻击可以使得一个匿名的网上用户获得一台主机的部分和全部的控制权。当用户拥有了管理员权限的时候,将会给主机极其严重的安全威胁。如今,缓冲区溢出的错误正源源不断地从Unix、Windows、路由器、网关以及其他的网络设备中被发现,并构成了对系统安全威胁数量最大、程度较大的一类。,5. 3 缓冲区溢出攻击及其防范,(1)系统管理上的防范策略:关闭不需要的特权程序。由于缓冲区溢出

13、只有在获得更高的特权时才有意义,所以带有特权的Unix 下的suid程序和Windows下由系统管理员启动的服务进程都经常是缓冲区溢出攻击的目标。这时候,关闭一些不必要的特权程序就可以降低被攻击的风险。 安装程序补丁。,5. 3 缓冲区溢出攻击及其防范,(2)软件开发过程中的防范策略。 发生缓冲区溢出的主要原因有:数组没有边界检查而导致的缓冲区溢出;函数返回地址或函数指针被改变,使程序流程的改变成为可能;植入代码被成功的执行等等。,5. 4 欺骗攻击及其防范,欺骗攻击就是利用假冒、伪装后的身份与其他主机进行合法的通信或发送假的报文,使受攻击的主机出现错误,或者是伪造一系列假的网络地址和网络空间

14、顶替真正的网络主机为用户提供网络服务,以此方法获得访问用户的合法信息后加以利用,转而攻击主机的一中攻击方式。常见的网络欺骗攻击主要方式有:IP欺骗;ARP欺骗;DNS欺骗;Web欺骗;电子邮件欺骗等。,5. 4.1 IP欺骗,定义:IP欺骗就是伪造他人的IP地址与入侵主机联系,通过用另外一台机器来代替自己的方式借以达到蒙混过关的目的。原理:IP欺骗动技术就是伪造某台主机的IP地址的技术。通过IP地址的伪装使得某台主机能够伪装另外一台主机,而被伪造了IP地址的这台主机往往具有某种特权或被另外的主机所信任。,5. 4.1 IP欺骗,IP欺骗由若干步骤组成:(1)选定目标主机。(2)发现信任模式,并

15、找到一个被目标主机信任的主机。黑客为了进行IP欺骗,进行以下工作:使得被信任的主机丧失工作能力,同时采用目标主机发出的TCP 序列号,猜测出它的数据序列号。(3)攻击者伪装成被信任的主机,同时建立起与目标主机基于地址验证的应用连接。如果成功,黑客可以使用一种简单的命令放置一个系统后门,以进行非授权操作。,5. 4.1 IP欺骗,序列号取样和猜测:要对目标主机进行攻击,必须知道目标主机使用的数据包序列号。攻击者先与被攻击主机的一个端口(SMTP是一个很好的选择)建立起正常的连接。通常,这个过程被重复若干次,并将目标主机最后所发送的序列号ISN存储起来。攻击者还需要估计他的主机与被信任主机之间的R

16、TT时间(往返时间),这个RTT时间是通过多次统计平均求出的。RTT 对于估计下一个ISN是非常重要的。当估算出ISN大小后,就可以开始进行攻击。,5. 4.1 IP欺骗,当黑客的虚假TCP数据包进入目标主机时,根据估计的准确度不同,会发生不同的情况:如果估计的序列号是准确的,进入的数据将被放置在接收缓冲器以供使用;如果估计的序列号小于期待的数字,那么将被放弃;如果估计的序列号大于期待的数字,并且在滑动窗口(前面讲的缓冲)之内,那么,该数据被认为是一个未来的数据,TCP模块将等待其它缺少的数据。如果估计的序列号大于期待的数字,并且不在滑动窗口(前面讲的缓冲)之内,那么,TCP将会放弃该数据并返

17、回一个期望获得的数据序列号。,5. 4.1 IP欺骗,攻击者伪装成被信任主机的IP 地址,此时,该主机仍然处在停顿状态(已丧失处理能力),然后向目标主机的端口发送连接请求,目标主机对连接请求作出反应,发送SYN/ACK数据包给被信任主机,因为此时被信任主机处于停顿状态,所以被信任主机会抛弃SYN/ACK数据包。攻击者向目标主机发送ACK数据包,该ACK使用前面估计的序列号加1(确认帧)。如果攻击者估计正确的话,目标主机将会接收该ACK。这样,连接正式建立起来了。,5. 4.1 IP欺骗,发送大量ACK应答包来猜测攻击目标ACK请求包的ID号,如果所发送的伪造应答包中存在和请求包的ID一致的情况

18、,也就是产生了所谓的“碰撞”,则欺骗成功。16位的ID号取值范围为065 535,共有65 536种可能性,想要使其攻击的成功率可以达到50%,至少需要发送32 768个完全不同ID号的应答包。在短时间内发送32 768个包,还要赶在真正的应答包到来之前发生“碰撞”,其操作难度较大。如果很好地利用“生日攻击”就可以只发送较少的数据包,同样能达到欺骗的效果。,5. 4.3 DNS欺骗,“生日攻击”的涉及到一个叫作“生日悖论”的数学模型。“生日悖论”是指23个人中有人生日是同一天的可能性大于50%。通过概率论的知识,可知2个人的生日是同一天的可能性是:P(2)=1-1(364/ 365);3个人中

19、有生日相同的概率是:P(3)=1-1(364/365) (363/365);以此类推,P(4)=1-1(364/365)(363/365)(362/ 365);P(n)=1-1(364/365)(365-(n-1)/365, (n=1,2, 365);可得出P(23)50%,即23人中有可能其中有人的生日是相同的。从中可以看出,一个有365个元素的空间,只需23个元素其间产生“碰撞”的概率就高于50%。,5. 4.1 IP欺骗,要防止源IP地址欺骗行为,可以采取以下措施来尽可能地保护系统免受这类攻击:抛弃基于地址的信任策略。使用加密方法。在通信时,通信方之间要求加密传输和验证。,5. 4.1

20、IP欺骗,进行包过滤。确信只有内部LAN可以使用信任关系,而内网对于外部LAN以外的主机要谨慎处理。有一点要注意,路由器虽然可以封锁试图到达内部网络的特定类型的包,但由于路由器是通过分析测试源地址来进行操作,因此,路由器仅能对声称是来自于内部网络的外来包进行过滤,若路由器所连网络存在外部可信任主机,那么路由器将无法防止别人冒充这些主机进行IP欺骗。使用随机的初始序列号。IP欺骗能够成功的一个重要因素是,序列号不是随机选择的或者随机增加的。如果使用了随机化的序列号,那么每一次访问都会更换新的访问序列号,攻击者就难以伪装自己对目标主机的访问。,5. 4.2 ARP欺骗,ARP是地址解析协议,它将I

21、P地址转化为MAC地址。在局域网中,通信前必须通过ARP协议来完成IP地址转换为第二层物理地址(即MAC地址)。ARP协议对网络安全具有重要的意义,但是最初ARP方式的设计没有考虑到过多的安全问题,给ARP留下很多的隐患,ARP欺骗就是其中的一个例子。而ARP欺骗攻击就是利用该协议漏洞,通过伪造IP地址和MAC地址实现ARP欺骗的攻击技术。,5. 4.2 ARP欺骗,ARP协议并不只在发送ARP请求才接收ARP应答。如果攻击者主动发出了ARP应答包,当目标主机收到此数据包时,就会对本地的ARP缓存进行更新,将应答包中的IP和MAC地址存储在缓存中。因此,当局域网中的某台主机C向A发送一个自己伪

22、造ARP应答,而如果这个应答是C冒充B的IP,而MAC地址是伪造C的,则当A收到C伪造的ARP应答后,就会更新本地的ARP缓存,这样在A看来B 的IP地址没有变,而B的MAC地址已经不是原来那个了。,5. 4.2 ARP欺骗,由于局域网通信不是根据IP地址进行,而是按照MAC地址进行传输,所以,那个伪造的MAC与IP对应项在A上被改变成一个不存在的MAC地址,这样就造成网络不通。如果C是一个攻击者,他把B 的 MAC换成C自己的,那么C就可以截获到A与B的通信,也就完成了一次简单的ARP欺骗。,5. 4.2 ARP欺骗,一般来说,ARP欺骗攻击的后果非常严重,如果在局域网中有机器中了ARP 欺

23、骗后,往往伴随而来的是其他用户发现网速极慢或者根本上不了网,时常掉线,大多数情况下更会出现大面积掉线的恶劣后果。ARP欺骗是黑客常用的攻击手段之一。ARP欺骗分为两种,一种是对路由器ARP表的欺骗;另一种是对内网PC的网关欺骗。,5. 4.2 ARP欺骗,第一种ARP欺骗的原理是截获网关数据。它通知路由器一系列错误的内网MAC地址,并按照一定的频率不断进行,使真实的地址信息无法通过更新保存在路由器中,结果路由器的所有数据只能发送给错误的MAC地址,造成正常PC无法收到信息。第二种ARP欺骗的原理是伪造网关。它的原理是建立假网关,让被它欺骗的PC向假网关发送数据,而不是通过正常的路由器途径上网。

24、在PC看来,就是上不了网了,“网络掉线了”。,5. 4.2 ARP欺骗,ARP欺骗的防范方法有以下几种: 不用把计算机的网络安全信任关系单独建立在IP基础上或MAC基础上,理想的关系应该建立在IP+MAC基础上。在客户端使用ARP命令绑定网关的真实MAC地址。在交换机上设置端口与MAC地址的静态绑定。,5. 4.2 ARP欺骗,在路由器设置IP地址与MAC地址的静态绑定。管理员定期用响应的IP包中获得一个RARP请求,然后检查ARP响应的真实情况,发现异常立即处理。同时,管理员要定期轮询,经常检查主机上的ARP缓存。使用防火墙连续监控网络。注意在使用SNMP的情况下,ARP的欺骗可能导致陷阱包

25、丢失。,5. 4.3 DNS欺骗,DNS欺骗就是攻击者冒充DNS服务器进行网络攻击的一种欺骗行为。攻击实施后,攻击者会用一台主机冒充域名服务器,然后把查询的IP地址设为攻击者主机的IP地址,这样的话,用户上网就只能看到攻击者的主页,而不是用户想要取得的网站的主页了,这就是DNS欺骗的基本原理。DNS欺骗其实并不是真的“黑掉”了对方的网站,而是用自己的网站冒名顶替了合法的网站。,5. 4.3 DNS欺骗,当客户端向DNS服务器查询一个域名时,本地的DNS服务器会先在自己的数据库中进行查找,如果没有匹配的信息,则它会向指定的DNS服务器查询。当DNS客户端向指定的DNS服务器进行查询时,DNS服务

26、器同样进行查找。如果该服务器没有在自己的数据库找到,则会到自己的缓存区中查询,如果找到则服务器会把这条记录传回客户端。如果服务器在数据库中没有查到,且在缓存区也没有找到,则服务器会找最接近的备选服务器帮忙,备选服务器重复上面的动作。当查询到后,备选服务器将信息返回到主服务器,主DNS服务器先将信息保存在缓存区中,最后把结果返回给客户端。如果没有找到相应的信息,将会在浏览器中报告HTTP错误。,5. 4.3 DNS欺骗,根据这个DNS的工作原理,攻击者就可以通过拦截并修改数据包来实行DNS欺骗。当客户端向DNS服务器查询某个域名时,正常情况下,DNS服务器经查询后,会返回相应结果到客户端。但是,

27、如果攻击者此时冒充此DNS服务器,攻击者的机器就会代替真正的DNS服务器回应客户端,并且数据包中的地址会指向一个错误伪造的地址,这样,当用户访问查询到的地址时,就会转向攻击者提供的地址,这样就实现了DNS欺骗。,5. 4.3 DNS欺骗,如果发送大量的DNS应答包来猜测攻击目标的DNS请求包的ID号,如果所发送的伪造应答包中存在和请求包的ID一致的情况,也就是产生了所谓的“碰撞”,则欺骗成功。16位的ID号取值范围为065 535,共有65 536种可能性,想要使其攻击的成功率可以达到50%,至少需要发送32 768个完全不同ID号的应答包。在短时间内发送32 768个包,还要赶在真正的应答包

28、到来之前发生“碰撞”,其操作难度较大。如果很好地利用“生日攻击”就可以只发送较少的数据包,同样能达到欺骗的效果。,5. 4.3 DNS欺骗,“生日攻击”的涉及到一个叫作“生日悖论”的数学模型。“生日悖论”是指23个人中有人生日是同一天的可能性大于50%。通过概率论的知识,可知2个人的生日是同一天的可能性是:P(2)=1-1(364/ 365);3个人中有生日相同的概率是:P(3)=1-1(364/365) (363/365);以此类推,P(4)=1-1(364/365)(363/365)(362/ 365);P(n)=1-1(364/365)(365-(n-1)/365, (n=1,2, 36

29、5);可得出P(23)50%,即23人中有可能其中有人的生日是相同的。从中可以看出,一个有365个元素的空间,只需23个元素其间产生“碰撞”的概率就高于50%。,5. 4.3 DNS欺骗,在路由器设置IP地址与MAC地址的静态绑定。管理员定期用响应的IP包中获得一个RARP请求,然后检查ARP响应的真实情况,发现异常立即处理。同时,管理员要定期轮询,经常检查主机上的ARP缓存。使用防火墙连续监控网络。注意在使用SNMP的情况下,ARP的欺骗可能导致陷阱包丢失。,5. 4.3 DNS欺骗,在路由器设置IP地址与MAC地址的静态绑定。管理员定期用响应的IP包中获得一个RARP请求,然后检查ARP响应的真实情况,发现异常立即处理。同时,管理员要定期轮询,经常检查主机上的ARP缓存。使用防火墙连续监控网络。注意在使用SNMP的情况下,ARP的欺骗可能导致陷阱包丢失。,5. 4.3 DNS欺骗,在路由器设置IP地址与MAC地址的静态绑定。管理员定期用响应的IP包中获得一个RARP请求,然后检查ARP响应的真实情况,发现异常立即处理。同时,管理员要定期轮询,经常检查主机上的ARP缓存。使用防火墙连续监控网络。注意在使用SNMP的情况下,ARP的欺骗可能导致陷阱包丢失。,

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

当前位置:首页 > 网络科技 > 网络与通信

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报