《缓冲区溢出概述》ppt课件

《缓冲区溢出概述》ppt课件

ID:40098459

大小:122.50 KB

页数:17页

时间:2019-07-21

《缓冲区溢出概述》ppt课件_第1页
《缓冲区溢出概述》ppt课件_第2页
《缓冲区溢出概述》ppt课件_第3页
《缓冲区溢出概述》ppt课件_第4页
《缓冲区溢出概述》ppt课件_第5页
资源描述:

《《缓冲区溢出概述》ppt课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、缓冲区溢出原理教师:姚砺办公室:计算机学院楼121Email:yaoli@dhu.edu.cn内容软件开发的安全性缓冲区溢出原理软件质量软件质量问题引发的事故根据美国航空业的调查表明,由于软件质量问题导致的经济损失巨大:1996年损失6.4亿美元、1997年损失1.17亿美元、1998年损失2.55亿美元、1999年损失16亿美元。“运行正确”的程序就是高质量的程序吗?也许运行速度很低并且浪费内存;(性能差)也许代码的安全性很差;(有漏洞)也许代码写得一塌糊涂;(可维护性差)也许…已经没有也许软件质量McCall的软

2、件质量模型产品运行产品修改产品转移正确性可靠性效率安全性完整性易用性可维护性灵活性可测试性可移植性重复使用性伸缩性软件开发的安全性随着企业一窝蜂似地采用电子商务,安全性不再是一件微不足道的事情了,它已经开始成为一个重要的问题。作为开发人员,必须保证所编写的系统的安全性。但是,安全性不是一个可被添加到现有系统的功能部件。和许多用收缩性薄膜包装用户商品的供应商所认为的相反,不能在完成系统之后把有效的安全性象拧螺丝一样拧到系统中去。安全性是软件系统在系统范围存在的特性。因此,从设计软件的最开始就应该考虑到安全性。安全性就象

3、保险、可依赖性、可靠性或任何其它的软件特性。就如同使用一个不可靠系统再添加一个“可靠性”模块然后希望获得无错的软件是不可能的一样,把安全性象另外一个功能部件一样添加到应用程序也是不可能的。“插入修补”方法不是一个好方法许多众所周知的软件供应商好象不理解安全性不是一种可添加的功能部件。他们继续以惊人的速度设计并生产产品,而很少注意安全性。他们只有在其产品遭到公开地(并且经常是突如其来地)损害时才开始担心安全性。然后,他们匆忙赶制出一个补丁程序,而不是意识到从一开始就考虑安全性是更好的办法。软件开发的安全性这种方法在电子

4、商务应用程序中行不通。问题包括:开发人员只能够修补他们知道的问题。攻击者可能会找到他们决不会向开发人员报告的问题。由于系统管理员通常工作过度,并且他们不想更改“有效”的系统,因此他们一般不会应用补丁程序。有时管理员甚至没有意识到应该将某一重要的补丁程序应用到系统上。供应商们通常是迫于市场压力才赶制出补丁程序,因此经常会在补丁程序中引入新的问题。补丁程序仅仅只是修补某一问题的症状,它们不能解决根本的原因。因此,我们应该避免遇到试图修补一个遭到攻击者猛烈攻击的问题的绝望局面。从简单的经济性考虑,在发布软件系统之前找到并除

5、去错误的成本比发布后再试图修复系统的成本要低得多也有效得多。通过设计安全系统、仔细实现该系统、然后在发布之前全面测试该系统,我们可以消除这些问题,并开发出一个不依赖补丁程序的真正安全的系统。安全保证的四招:安全性保证设计系统时要有安全性观念。应该在开发周期的所有阶段中考虑安全性,而不是事后想到它时再补救。安全性并不是一个随时都可以添加到系统中的基本功能部件。安全性就象容错;它是一个需要有效、仔细地规划和设计的遍布于整个系统的特性。例如:从运行支撑环境安全角度出发,应考虑操作系统、数据库、应用服务器、第三方控件等的安全

6、性;从用户的使用角度出发,应考虑权限管理、身份验证;从数据的安全性出发,信用卡号是敏感信息,应该保护它们防止可能的窃听”……根据已知和预期的风险分析系统。识别潜在的风险、发生这些风险的可能性以及它们可能达到的严重程度。首先识别已知的攻击可能会应用到身边系统的何处,然后按严重性给它们划分等级。风险的相对严重性非常依赖于身边系统的需要和目标。风险评估是确定如何分配测试和分析资源的关键。编写安全代码安全性测试技术进行风险测试。从设计过程开始对破坏的系统重复以上步骤。静态分析,它不实际运行代码而只是通过查看代码以找出潜在的脆

7、弱性动态分析,它通过实际运行代码来测试代码。应用常见安全性技术许多系统架构设计师的一个常见的误解是,使系统安全的方法归根结底是防火墙和密码术。漏洞概述Bug与漏洞漏洞挖掘漏洞分析漏洞利用缓冲区溢出漏洞—十年来最大的安全问题在信息安全日益被人们所关注的今天,缓冲区溢出毫无疑问的是最大的安全威胁之一。Internet上的第一例蠕虫(Morris)攻击,就是利用了fingerd的缓冲区溢出漏洞。SANS评选出的2005年威胁最大的20个漏洞中,有8个跟缓冲区溢出有关。根据CERT的统计数据,近几年与缓冲区溢出有关的安全事件

8、在50%以上。代码注入攻击是指攻击者本地或者远程向进程的线性地址空间注入一段可执行的二进制代码,然后通过某种手段修改进程的正常控制流程,使进程执行这段代码,从而达到预定目的的攻击行为。缓冲区溢出攻击在严格意义上是指这一类攻击的一个子类。由于攻击者注入代码的位置通常在缓冲区,而且修改进程的正常流程往往需要利用对缓冲区缺乏边界检查的编程错误,所以,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。