信息安全原理 -张基温 第2章 黑客.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第2章 网络攻击 2.1 黑客 2.2 信息收集类攻击 2.3 入侵类攻击 2.4 欺骗类攻击 2.5 拒绝服务类攻击 2.1 黑客 2.2 信息收集类攻击 2.3 入侵类攻击 2.4 欺骗类攻击 欺骗策略与等级 假冒可信站点通信 假冒可信站点,同时使可信站点瘫痪 2.5 拒绝服务类攻击 通常主机在发送一个IP包之前,它要到该转换表中寻找和IP包对应的MAC地址。如果没有找到,该主机就发送一个ARP广播包, 为了使所有的计算机共同认可地址解析消息的精确格式和含义,TCP/IP的地址解析协议ARP定义了两种基本的消息:ARP请求消息(一个请求包含一个IP地址和对相应硬件的请求,格式如图2.9所示)和ARP应答消息(一个应答消息既包含发来的IP地址,也包含相应的硬件地址)。ARP规定:所有ARP请求消息都直接封装在LAN帧中,广播给网上的所有计算机,每台计算机收到这个请求消息后都要检测其中的IP地址;与IP地址匹配的计算机即发出一个应答消息,而其他计算机则丢弃收到的请求,不发出任何应答。可以看出,IP地址是32位的,而以太网地址是48位的。 2. ARP欺骗 ARP是无状态的协议,在没有请求时也可以发送应答的包。入侵者可以利用这一点,向网络上发送自己定制的包,包中包括源IP地址、目的IP地址以及硬件地址,不过它们都是伪造的。这些伪造的数据,会修改网络上主机中的ARP高速缓存。 例如,网络上有三台主机,有如下的信息: 主机名 IP地址 硬件地址 A 1 AA:AA B 2 BB:BB C 3 CC:CC 这三台主机中,B是一台被入侵者控制了的主机,它具有root权限,而A信任C。入侵者的目的就是伪装成C获得A的信任,以便获得一些无法直接获得的信息等。下面介绍入侵者利用B进行ARP欺骗的过程。通常,入侵者要使用一些ARP欺骗的工具,如send_arp。 (1)入侵者控制主机B向主机A发送一个ARP应答,ARP应答中包括:源IP地址(3)、源硬件地址(BB:BB)、目标IP地址(1)、目标硬件地址(AA:AA )。 这条应答被A接受后,就被保存到A主机的ARP高速缓存中了。 但是,由于网络上C主机也是活动的,也有可能向A发出自己的ARP应答,将A的ARP缓存改回正确的硬件地址。因此,B在进行ARP欺骗时还必须使C不能向A发送ARP应答。入侵者的办法是也向C发ARP应答,将A的硬件地址改为一个虚假的地址(不存在的硬件地址)如“DD:DD”,使得C发向A的ARP应答,根本无法受到。 2)A根据ARP缓存中的缓存记录,将发往C(3,CC:CC)的数据报文,发向了B(3,BB:BB)。 图2.10为这个过程的示意图。 3. 缓冲区溢出攻击 如果当发生缓冲溢出时,能够准确地控制跳转地址,将程序流程引向预定的地址,CPU就会去执行这个指令。如果入侵者在预定的地址中放置代码用于产生一个Shell,则当程序被溢出时,入侵者将获得一个Shell。该Shell会继承被溢出的程序的权限(操作系统中,一个新产生的Shell会继承生成该Shell的程序的权限)。如果入侵者获得了某台服务器的一个普通权限账号,而服务器上某个以root或system权限运行的程序存在缓冲溢出漏洞,入侵者就可以利用该漏洞生成的Shell去获得root权限。而入侵者进行攻击的关键是修改以较高权限运行的程序跳转指令的地址。 入侵者为了修改以较高权限运行的程序跳转指令的地址,一般要经过如下3步。 (1)将需要执行的代码放到目标系统的内存。下面是两种常用方法: · 植入法:通过主机,将需要执行的代码(目标平台上可执行的),直接放到缓冲区。 · 利用已经有的代码:只要修改传入参数。 (2)修改返回地址。 (3)控制程序跳转,改变程序流程。下面是3种常用方法。 · 修改程序返回地址:将预先设定好的地址替换程序原来的返回地址。 · 在缓冲区附近放一个函数指针,指向入侵者定义的指令。 · 使用longjmp:C语言的setjmp/longjmp是一个检验/恢复系统,可以在检验点设定setjmp(buffer),用longjmp(buffer)恢复检验点。入侵者可以利用longjmp(buffer)跳转到预定代码。 4. 缓冲区溢出防御措施 (1)安装安全补丁。 (2)编写安全的代码:缓冲区溢出攻击的根源在于编写程序的机制。因此,防范缓冲区溢出漏洞首先应该确保在Linux系统上运行的程序(包括系统软件和应用软件)代码的正确性,避免程序中有不检查变量、缓冲区大小及边界等情况存在。比如,使用grep工具搜索源代码中容易产生漏洞的库调用,检测变量的大小、数组的边界、对指针变量进行保护,以及使用具有边界

文档评论(0)

118压缩包课件库 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档