频 道 直 达 - 新闻 - 读书 - 培训 - 教程 - 前沿 - 组网 - 系统应用 - 安全 - 编程 - 存储 - 操作系统 - 数据库 - 服务器 - 专题 - 产品 - 案例库 - 技术圈 - 博客 - BBS
51CTO.COM_中国领先的IT技术网站
找资料:

缓冲区溢出的原理及对攻击的防护(3)

作者: 蒋涛 出处:中科院研究生院  (  ) 砖  (  ) 好  评论 ( ) 条  进入论坛
更新时间:2006-11-20 09:05
关 键 词:缓冲区  溢出  漏洞  原理  攻击  防护  root权限  攻击代码
阅读提示:缓冲区溢出攻击之所以成为一种常见的攻击手段,其原因在于缓冲区溢出漏洞太普通了,并且易于实现。而且,缓冲区溢出所以成为远程攻击的主要手段,其原因在于缓冲区溢出漏洞给予了攻击者所想要的一切:殖入并且执行攻击代码。被殖入的攻击代码以一定的权限运行有缓冲区溢出漏洞的程序,从而得到被攻击主机的控制权。本文简单介绍了缓冲区溢出的基本原理和预防办法。
五、缓冲区溢出的保护方法
 
      目前有四种基本的方法保护缓冲区免受缓冲区溢出的攻击和影响:
 
1、强制写正确的代码的方法
      编写正确的代码是一件非常有意义但耗时的工作,特别像编写C语言那种具有容易出错倾向的程序(如:字符串的零结尾),这种风格是由于追求性能而忽视正确性的传统引起的。尽管花了很长的时间使得人们知道了如何编写安全的程序,具有安全漏洞的程序依旧出现。因此人们开发了一些工具和技术来帮助经验不足的程序员编写安全正确的程序。虽然这些工具帮助程序员开发更安全的程序,但是由于C语言的特点,这些工具不可能找出所有的缓冲区溢出漏洞。所以,侦错技术只能用来减少缓冲区溢出的可能,并不能完全地消除它的存在。除非程序员能保证他的程序万无一失,否则还是要用到以下部分的内容来保证程序的可靠性能。
 
2、通过操作系统使得缓冲区不可执行,从而阻止攻击者殖入攻击代码
      这种方法有效地阻止了很多缓冲区溢出的攻击,但是攻击者并不一定要殖入攻击代码来实现缓冲区溢出的攻击,所以这种方法还是存在很多弱点的。
 
3、利用编译器的边界检查来实现缓冲区的保护
      这个方法使得缓冲区溢出不可能出现,从而完全消除了缓冲区溢出的威胁,但是相对而言代价比较大。
 
4、在程序指针失效前进行完整性检查
      这样虽然这种方法不能使得所有的缓冲区溢出失效,但它的确确阻止了绝大多数的缓冲区溢出攻击,而能够逃脱这种方法保护的缓冲区溢出也很难实现。
 
      最普通的缓冲区溢出形式是攻击活动纪录然后在堆栈中殖入代码。这种类型的攻击在1996年中有很多纪录。而非执行堆栈和堆栈保护的方法都可以有效防卫这种攻击。非执行堆栈可以防卫所有把代码殖入堆栈的攻击方法,堆栈保护可以防卫所有改变活动纪录的方法。这两种方法相互兼容,可以同时防卫多种可能的攻击。
      剩下的攻击基本上可以用指针保护的方法来防卫,但是在某些特殊的场合需要用手工来实现指针保护。全自动的指针保护需要对每个变量加入附加字节,这样使得指针边界检查在某些情况下具有优势。
 
      最为有趣的是,缓冲区溢出漏洞--Morris蠕虫使用了现今所有方法都无法有效防卫的方法,但是由于过于复杂的缘故却很少有人用到。
 
      在本文中,我们详细描述和分析了缓冲区溢出的原理,并简单介绍了几种防卫方法。由于这种攻击是目前常见的攻击手段,所以进行这个方面的研究工作是有意义和成效的。
 
 
责任编辑 赵毅 zhaoyi#51cto.com TEL:(010)68476636-8001


共3页: 上一页 [1] [2] 3
【内容导航】
滚动新闻 术语词典 问题悬赏
发表
查看
我也说两句

匿名发表

(如果看不清请点击图片进行更换)


中 国 领 先 的 IT 技 术 网 站 ·
技 术 成 就 梦 想
· 教你使用Anti ARP Snif..
· 网络嗅探教程:使用Sni..
· 时代亿信企业级信息安..
· ISA Server、虚拟机、..
· Windows年底再现图片漏..
· MBSA本地审核策略建议
  · 企业局域网安全访问控..
· 常见病毒手工清除方法..
· 网络技术经典基础教程
· 东方标准-病毒防护技..
· 东方标准-病毒防护技..
· ARP攻击的终极防范方法..
排行榜
·ARP攻击防范与解决方案 (查看73331次)
·ARP病毒攻击技术分析与防御 (查看30317次)
·远程控制软件VNC教程和对内网机.. (查看27782次)
·江民“熊猫烧香”专杀工具 (查看27405次)
·ARP病毒解决办法 (查看23334次)
·ARP攻击防范与解决方案 (529个砖)
·51CTO安全专访:信息安全的基石—安全操作系统 (443个砖)
·51CTO调查:七成技术人员不相信“可杀未知病毒” (431个砖)
·病毒查杀专题 (168个砖)
·51CTO专访:优秀杀毒产品应该具备的特征 (163个砖)
·清除流氓软件——51CTO特别专题 (701个好)
·ARP攻击防范与解决方案 (498个好)
·51CTO调查:七成技术人员不相信“可杀未知病毒” (483个好)
·51CTO安全专访:信息安全的基石—安全操作系统 (460个好)
·深入了解PGP加密技术 (182个好)
·网络技术经典基础教程 (09月)
·CISSP认证成长之路 (09月)
·国内安全厂商新排名出炉 谁是你心中的第一 (08月)
·垃圾邮件新对策:远程定制托管服务 (08月)
·冷眼旁观2007年半年安全报告 (07月)
· 51CTO“十·一”特别专..
· 对应需求 如何选择最合..
· SPEC:AMD四核浮点性能..
· FB-DIMM、RDDR3谁是服..
· Avaya股东批准私募基金..
· 未来游戏设计将要面临..
· 微软发布全新FTP7.0
· 网络嗅探教程:用Sniff..
  · 能够改变IT格局的五大..
· 微软统一沟通系列视频..
· 专家教你理解ARP欺骗攻..
· 微软屈从用户PC厂商压..
· 企业如何对付DDoS攻击 ..
· 思科称三年后网真系统..
· 北京歌华出现网络故障 ..
· 苹果与黑客大斗法 破解..
订阅技术快讯
电子杂志下载
名称:网络安全精品应用黄皮书
简介:《2007精品网络安全黄皮书》包括了9个大类24个小类, 800余篇文章,内容包含了熊猫烧香病毒、DDOS攻击、ARP病等热点问题的介绍及解决方案。从病毒查杀、防范、系统、数据等各方面的安全设置到黑客技术的了解、防范,涉及到了安全应用的全部领域, 由浅至深内容全面。
名称:Vista精品应用黄皮书
简介:《Vista精品应用黄皮书》囊括了Vista的各方面内容。此次的精简版,是将里面的内容做了提取,便于用户下载和使用。内容包含了各种Vista的安装与实施、技巧与解析以及各种Vista相关学习文档和相关软件的安全下载。该电子书是了解和应用Vista人员必备的工具手册,并且也是第一本
名称:2006中国IT论坛精品集合
简介:本书由“51CTO论坛推广联盟”制作完成。书中所有内容均来自各联盟成员的论坛(网站)。制作本书的目的是为了集中大家的优势资源,将更多更精彩的内容带给广大技术爱好者。本书是联盟成立以来制作的第一本书。
专题
51CTO国庆充电专题之好书推荐
51CTO国庆充电专题之好书推荐
网络技术经典基础教程
网络技术经典基础教程
· 51CTO主编推荐经典专题
· RAID——磁盘阵列基础
· 充电计划之热门IT认证..
· 51CTO技术自测 挑战自..
· CISSP认证成长之路
· AMD Phenom三核处理器..
· 国际文档格式标准开战
· 2007年互联网大会
· 我是黑客我怕谁——讲..
· ARP攻击防范与解决方案
· Solaris 10 配置管理
· Solaris基础知识入门
· RIP路由协议专栏
· MPLS路由协议专栏
· OSPF路由协议专栏
· 思科路由器产品
Java编程开发手册
Java编程开发手册
Java基础教程
Java基础教程
· Java基础教程
· VPN技术
· ARP攻击防范与解决方案
· SQL Server 2005全解
· SOA 面向服务架构
· SQL Server 2005全解
· Java编程开发手册
· RAID——磁盘阵列基础
· 三层交换技术专题
· SQL Server入门到精通
· Windows Server 2003企..
· Windows远程桌面应用
· C#技术开发指南
· VPN技术
· Solaris 10 配置管理
· C#技术开发指南
Java编程开发手册
Java编程开发手册
Java基础教程
Java基础教程
· ARP攻击防范与解决方案
· VPN技术
· SQL Server 2005全解
· Java基础教程
· SQL Server入门到精通
· SQL Server 2005全解
· SOA 面向服务架构
· Java编程开发手册
· C#技术开发指南
· 三层交换技术专题
· C#技术开发指南
· Windows远程桌面应用
· RAID——磁盘阵列基础
· Windows Server 2003企..
· 邮件服务器专题
· wimax技术与趋势
专家
DB2 9技术资源中.. 推荐阅读  
·DB2 Viper快速入门
·DB2 9数据库的镜像分割与..
·将XML应用程序从DB2 8.x..
·DB2 9中的pureXML:如何..
51CTO.com编辑部.. 推荐阅读  
·服务器中的“傻瓜机”在..
·盖茨也喜欢登录Youtube看..
·
·
张振伦 的博客  
·拯救系统管理员
·美国选民:我为什么选布什
·VMware公司中文命名挑战赛
·我们真缺乏创新吗?
梁林 的博客  
·J0ker的CISSP之路:复习-..
·J0ker的CISSP之路:复习-I..
·9月第3周安全回顾 内网安..
·教你几招识别和防御Web网..
关键字阅读
频道精选
组网建网 安全频道
· NGN:下一代网络
· 网络访问中断大排查
· FTTx光纤接入
· 教你使用Anti ARP Sniff..
· 网络嗅探教程:使用Snif..
· 常见病毒手工清除方法大..
编程频道 前沿技术
· C++是垃圾语言?!
· 2007年IT界七大抄袭事件
· Java实用开发全集
· 解析Ajax开发框架 走进A..
· 基于Google Maps与Ajax..
· 基于Google Maps与Ajax..
操作系统 服务器
· 热门 IT 培训认证官方资..
· Ubuntu 中文开源频道
· Solaris基础知识入门
· 费力不讨好 数据中心主..
· AMD Phenom三核处理器解..
· 51CTO主编推荐经典专题
数据库 存储频道
· 甲骨文Oracle 11g正式发..
· Oracle数据库开发之PL/S..
· Oracle数据库开发基础教..
· 存储2006,一个并购的大..
· IDC宣布浪潮蝉联存储市..
· 双机热备技术
主编信箱 热线:010-66476606 告诉我们您想看的:专题 文章
关于我们 | 诚聘英才 | 联系我们 | 网站大事 | 意见反馈 | 网站地图
Copyright©2005-2007 51CTO.COM 版权所有