下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 缓冲区溢出漏洞攻击及其对策探析 杨国旗【摘要】 计算机网络技术现在已经得到了广泛的应用,对工作和生活均有着重要影响。但是因为网络环境的特殊性,很容易受到外部攻击影响,安全性较低,尤其是利用网络漏洞进行攻击为最为常见的威胁。缓冲区溢出漏洞攻击作为主要威胁形式,必须要确定其特点,有针对性的采取措施进行处理优化,降低攻击带来的影响,本文对此进行了简要分析。【关键词】 缓冲区 漏洞攻击 安全性安全问题一直都是计算机网络运行分析要点,随着计算机技术水平的提高,黑客攻击方式也在不断更新,通过层出不穷的手段和控制方法对网络运行带来巨大的威胁。利用缓冲区溢
2、出漏洞来对计算机系统进行攻击,在日常操作中比较常见,想要有效解决此类问题,必须要确定攻击原理,有的放矢的应用有效手段进行优化。一、缓冲区溢出漏洞分析缓冲区即计算机内存块在内存地址的连续分配地址,而缓冲区溢出漏洞则是因为内存边界检查机制在c语言或者c+语言设计时,未设置边界造成。就象现在计算机操作系统,大部分均是选择用c语言或者c+语言编写,如果计算机程度想要将写入地址超出内存边界,便会产生非法操作1。如将写入数据保存到临近内存地址内,出现错误运行命令,情况严重甚至会造成系统崩溃。或者是基于漏洞执行操作命令,得到系统最高执行权,并操作干扰机器攻击软件系统。二、緩冲区溢出漏洞攻击分析2.1确定溢出
3、点要对漏洞发现人或者组织原始资料进行全面收集,其根据漏洞描述重现漏洞。其中,漏洞重现时要重点做好操作系统类型、软件环境和补丁版本等选择。同时还要注意对相关出错信息的收集,例如程序出错原因以及出错时eip值。另外,可以利用ollydbg、softice等调试工具对溢出情况进行分析,对存在问题的执行流程进行跟踪,最终确定溢出点。2.2 jmp esp覆盖确定溢出点以后,便可以构造攻击语句。jmp esp覆盖方法,主要是利用strcpy、ssprintf等函数覆盖堆栈,待达到堆栈保存的函数返回地址时,利用windows系统核心内的jmp dsp指令地址进行覆盖,并在后面紧跟shellcode2。此种
4、覆盖方法可以直接进入shellcode,在函数返回时,esp指向jmp esp地址,使得jmp esp地址出栈,使得eip指针指向该地址。而esp则会继续下移,只想构造好的shellcode。然后计算机继续向下执行eip指向的指令jmp esp,并且esp此时指向shellcode,最终便会顺利跳转到shellcode位置。2.3 seh覆盖seh覆盖是一种水平更高的攻击手段,其主要是利用覆盖windows系统内异常处理链seh来实现攻击。对于 windows系统,如果运行过程中出现异常情况,系统会查找异常处理链seh,并确定可以应对此种异常情况的处理程序,然后将保存的处理程序地址赋给eip,
5、最终系统会对此处理程序进行执行,以免造成系统的崩溃。对于windows系统,seh链会被保存在堆栈中,应用此种覆盖方法进行攻击,即将顶层seh中指向下一节点值覆盖成jmp 04,且处理程序地址被覆盖成call ebx或pop pop ret的地址,后面跟上shellcode3。一旦系统运行出现错误,windows便会跳转到处理程序,执行call ebx或者pop pop ret,进入前面的jmp 04并执行,这样便跳过覆盖地址,达到shellcode位置。三、缓冲区溢出漏洞攻击解决对策1.检查数组边界。缓冲区溢出漏洞攻击大部分是因为某些语言未设置边界检查机制造成的,为减少此类攻击问题,可以通过
6、检查数组边界的方法进行避免。但是要注意此种方法,边界检查后c语言编译器性能会降低大概15%。或者是应用其他安全性比较高的语言,如java程序,其自身就具有边界检查机制,与其他语言比,其可以有效避免此类攻击。2.阻止栈执行。基于缓冲区溢出漏洞攻击原理,在研究解决对策时,要避免控制权被转移到执行非法移入到栈中程序,如果栈中程序无法有效运行,无论是通过任何方式均不能执行栈中程序,以此来避免利用漏洞产生的攻击。如果选择应用此种方法,必须要对操作系统内核进行升级或者打补丁,整个过程复杂性较高,实际应用效率较低。因此,在对操作平台进行开发时,需要重视操作系统架构的设计,争取从源头上消除此漏洞。3.指针完整
7、性检查。此种方法主要是对编译器进行扩展,将1个数据结构“canary”放入局部变量和栈返回地址中间。“canary”是1个占用4个字节空间的数据,由程序运行过程中随机产生。1个函数调用结束后,执行栈中函数返回地址代码前会对“canary”进行检查,确定“canary”内部数据是否发生变化。对于数据发生变化的,便可确定已经发生缓冲区溢出漏洞攻击,需要立即中止执行栈中返回地址的代码。结束语:缓冲区溢出漏洞攻击对计算机网络系统运行安全具有很大的威胁,想要有效解决此类问题,必须要根据其攻击原理,选择合适的优化对策,避免缓冲区溢出漏洞的攻击,提高系统运行可靠性。参 考 文 献1 徐欣民.一种缓冲区溢出漏洞自动挖掘及漏
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年辅警招聘考试试题库及答案(全国)
- 2025年下半年嘉兴秀洲区文化馆招考易考易错模拟试题(共500题)试卷后附参考答案
- 2025年下半年嘉兴平湖市委党校招考易考易错模拟试题(共500题)试卷后附参考答案
- 2025年下半年嘉兴市海盐县住房和城乡规划建设局下属事业单位招考易考易错模拟试题(共500题)试卷后附参考答案
- 2025年下半年吉林直事业单位招考第二批拟聘用人员易考易错模拟试题(共500题)试卷后附参考答案
- 2025年下半年吉林白城师范学院专项招聘高校毕业生13人(2号)易考易错模拟试题(共500题)试卷后附参考答案
- 2025年下半年合肥市肥东县实验幼儿园御景部教师招考易考易错模拟试题(共500题)试卷后附参考答案
- 2025年下半年台州市交通工程试验检测中心招聘易考易错模拟试题(共500题)试卷后附参考答案
- 2025年下半年厦门海沧区东孚镇政府招考城管协管员(9人)易考易错模拟试题(共500题)试卷后附参考答案
- 2025年下半年南京化学工业园区58名中小学新教师招聘易考易错模拟试题(共500题)试卷后附参考答案
- 2025年入团考试知识总结试题及答案
- 2025年健康险行业分析报告及未来发展趋势预测
- 2025年合肥文旅博览集团招聘笔试参考题库含答案解析
- 山东省烟台市2024-2025学年高二上学期期中考试政治试题 含解析
- 新媒体技术与应用PPT全套完整教学课件
- 修井工程套管损坏的修复详解
- 基于超深亚微米工艺的E
- 返工返修流程及作业指导书
- GB/T 16857.12-2022产品几何技术规范(GPS)坐标测量系统(CMS)的验收检测和复检检测第12部分:关节臂式坐标测量机
- FZ/T 81013-2016宠物狗服装
- 梁场设计布置与施工全解课件
评论
0/150
提交评论