第三章 10第十一讲网络入侵攻击.ppt

  1. 1、本文档共134页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 缓冲区溢出Buffer Overflow ? 缓冲区:程序运行期间,在内存中分配的一个连续的区域,用于保存包括字符数组在内的各种数据类型。 ? 溢出:所填充的数据超出了原有缓冲区的边界,并非法占据了另一段内存区域。 ? 缓冲区溢出:由于填充数据越界而导致程序原有流程的改变,黑客借此精心构造填充数据,让程序转而执行特殊的代码,最终获得系统的控制权。 三、攻击手段 * 攻击方式 ? 按照填充数据(代码)溢出的缓冲区位置来看 – 栈溢出(Stack Overflow) – 堆溢出(Heap Overflow) – BSS静态数据区溢出 ? 按照黑客重定向程序流程的方式 – 直接植入黑客自己的代码 – 跳转执行系统中已经加载的代码 ? 根据黑客利用缓冲区溢出漏洞的外部条件 – 本地 – 远程 三、攻击手段 * 三、攻击手段 * 一些典型的buffer overflows漏洞 ? NetMeeting buffer overflow ? Outlook – 当客户接收邮件的时候,畸形的邮件头信息会导致buffer overflows,然后就可以执行恶意代码或者拒绝服务 ? Linuxconf – Linuxconf允许远程通过Web对系统进行管理,当收到的http头中包含过量的信息时,会产生缓冲区溢出 ? ToolTalk – ToolTalk是一个RPC服务,攻击者连接到ToolTalk端口,然后发 送包含恶意代码的命令,可导致缓冲区溢出 ? ……(大量的服务器应用程序都包含buffer overflows漏洞) 三、攻击手段 * 为什么会缓冲区溢出? ? 在C语言中,指针和数组越界不保护是Buffer overflow的根源,而且,在C语言标准库中就有许多能提供溢出的函数, 如strcat(), strcpy(), sprintf(), vsprintf(), bcopy(), gets()和scanf() ? 通过指针填充数据 ? 不好的编程习惯 void function(char * szPara1) { char buff[16]; strcpy(buffer, szPara1); } 程序中利用strcpy函数将szPara1中的内容拷贝到buff中 ,只要szPara1的长度大于16,就会造成缓冲区溢出。存 在strcpy函数这样问题的C语言函数还有:strcat()、 gets()、scanf()等。 * 三、攻击手段 * 为什么不写出不受影响的代码来? ? 编程的问题都可以在开发阶段防止,事实上,并没有这么简单 – 有些开发人员没有意识到问题的存在 – 有些开发人员不愿意使用边界检查,因为会影响效率和性能 – 另一方面,许多遗留下来的代码还很多 ? 在开发过程中,尽量使用带有边界检查的函数版本,或者自己进行越界检查 三、攻击手段 * 如何保护自己的代码免受BufferOverflow攻击? ? 不可执行的缓冲区 – 适用于堆栈(stack)中的buffer,基本上不影响兼容性 ? 数组越界保护 – 每一次引用一个数组元素的时候,都执行检查 – 缺点:效率低,并且用指针也可以引用数组元素 ? 指针保护 – 在指针被引用之前,检测到它的变化 ? 最根本的解决办法 – 编写正确的代码 ? 不用C/C++,用VB、Java。??? 三、攻击手段 * * * * 从攻击原理来看 – 通用类型的DoS攻击,这类攻击往往是与具体系统无关的,比如针对协议设计上的缺陷的攻击 – 系统相关的攻击,这类攻击往往与具体的实现有关 – 说明:所有的攻击都是系统相关的,因为有些系统可以针对协议的缺陷提供一些补救措施,从而免受此类攻击 三、常见攻击 * 一些典型的DoS攻击 ? Ping of Death – 发送异常的(长度超过IP包的最大值) ? Teardrop – IP包的分片装配 ? UDP Flood ? Land – 程序发送一个TCP SYN包,源地址与目的地址相同,源端口 与目的端口相同,从而产生DoS攻击 ? SYN Flood – 快速发送多个SYN包 ? Smurf – 给广播地址发送ICMP Echo包,造成网络阻塞 三、常见攻击 * Ping of Death ? 原理: IP数据报文的最长为65535字节,但是有些Ping的程序或者恶意代码允许构造的大于IP数据报文长度的ICMP报文,导致被攻击者在进行报文重组过程中存在缓冲区溢出,导致系统崩溃. ? 受影响的系统:许多操作系统受影响 ? 攻击做法:直接利用ping工具,发送超大的ICMP Echo包 ? 防止措施 – 打补丁: 现在所有的标准TCP/IP实现都已实现对付超大尺寸的包, 从windows9

文档评论(0)

kehan123 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档