缓冲区溢出漏洞.ppt

  1. 1、本文档共34页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
缓冲区溢出漏洞

网络监测技术 缓冲区溢出漏洞攻击 软件安全概述 美国国家标准技术研究院提到:软件安全漏洞是导致系统安全策略违背的本质原因 安全漏洞在软件中大规模存在 大多数成功攻击利用已公布未修补的软件安全漏洞或不安全配置 软件漏洞: 缓冲区溢出 格式化字符串漏洞 竞争条件漏洞 整数溢出 XSS跨站脚本 SQL注入 最简单的栈溢出,更难控制的堆溢出、内核溢出,对抗DEP(数据执行保护)和对抗ASLR(地址空间布局随机化)的攻击 软件代码与内存空间上演着精彩的对弈 软件安全概述 软件自诞生,就和BUG形影不离 能被攻击者利用并导致危害的BUG就是软件安全漏洞(安全漏洞范围更广) 安全漏洞的三个基本元素: 系统的脆弱性或缺陷 攻击者对缺陷的可访问性 攻击者对缺陷的可利用性 软件安全漏洞:在软件需求、开发和配置过程中引入的缺陷,执行会违反安全策略,具有三个基本元素 CERT公布2006-08年,每年公开漏洞7K-8K个 实际每年新公开漏洞上万个,大量漏洞把持在国家情报部门、软件厂商、安全公司和黑客团体手中 软件安全概述 软件功能强大,扩展到生活方方面面,软件安全对经济和社会生活影响巨大 软件安全漏洞造成的经济损失 1988年莫里斯蠕虫造成损失9600万美元 2001年红色代码蠕虫,造成损失26亿美元 2003年冲击波、Mydoom等 蠕虫,带来数十亿,甚至数 百亿美元的损失 这些蠕虫利用服务器软件 中的漏洞传播 软件安全概述 软件安全漏洞对生命威胁 1988两伊战争期间,美国防空导弹 击落伊朗客机,290人遇难,美国的 解释是雷达跟踪软件的含糊和令人 误解的输出显示 鱼鹰V-22倾斜旋翼直升机试飞时, 一条水压线爆裂,软件错误认为备 份系统没有工作,导致飞机坠毁, 4人遇难 2010年英国科学家以身试法,全球 首个被计算机病毒感染的人类,证 明体内的医疗器材(心脏起搏器) 有感染病毒的风险 软件安全概述 安全领域多年研究,软件安全问题反而越来越严重,为什么软件普遍存在漏洞? 软件安全“困境三要素” 复杂性 源代码行数:Windows NT 3.1(3百万)——Windows XP(4千万)——Windows Server 2003(5千万) 软件规模越来越大,越来越复杂,BUG也会越来越多,预计每千行代码约存在5-50个BUG 大多数BUG不会造成安全问题,但一个足以致命 软件安全概述 软件安全“困境三要素” 可扩展性 为了支持更好的用户感受,软件提供扩展渠道,软件的可扩展性机制促进现代软件的蓬勃发展; 操作系统通过动态装载设备驱动和模块,浏览器通过脚本语言、控件和动态装载库支持更好的扩展性; 很难组织攻击者和恶意代码以不可预测的扩展方式入侵软件和系统,厂商不重视 分析可扩展软件的安全性要比分析不能更改软件的安全性困难得多 软件安全概述 软件安全“困境三要素” 连通性 接入互联网的计算机数量快速增加,高连通性使小小软件缺陷造成巨大的影响(蠕虫) 高度连通性也使得网络攻击能够引发现实世界的故障,电话网、电力网事故(电影:鹰眼) 连通性使得不需人为干预的自动化攻击成为可能,大大改变了威胁环境,威胁传播范围更大更迅速 在一个普遍依赖软件的高连通性网络中,一旦软件中的安全漏洞被恶意利用,后果将不仅是计算机短期无法工作,对正常生活也会造成重要影响 软件安全概述 软件安全漏洞类型 CVE标准目录中,将安全漏洞分37类 2001-04年,缓冲区溢出漏洞保持第一位 2005开始,Web安全问题快速升温,XSS、SQL注入、PHP远程文件包含等占据前三 其他普遍流行的安全漏洞:目录遍历、信息泄露、畸形输入导致的拒绝服务、符合链接问题、格式化字符串、密码学缺陷… 软件安全概述 软件安全漏洞从技术上主要分类: 内存安全违规类 内存访问时引入的安全缺陷,如缓冲区溢出、Use-after-Free、Double free等不安全指针问题; 主要出现在C/C++编写的软件中,支持任意的内存分配与回收,任意指针计算、转换,未保护内存;Java等则通过禁用指针计算与转换,实施内存垃圾跟踪与收集等机制,保证内存安全; 缓冲区溢出是最基础的内存安全问题 软件安全概述 软件安全漏洞从技术上主要分类: 输入验证类 程序在对用户输入进行数据验证存在错误,没

文档评论(0)

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

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

1亿VIP精品文档

相关文档