b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

防范缓冲区溢出方法_一定程度上能防范缓冲区溢出攻击的措施有哪些_缓冲区溢出发生在哪(2)

电脑杂谈  发布时间:2017-02-02 23:18:46  来源:网络整理

操作系统所使用的缓冲区又被称为“堆栈”.。在各个操作进程之间,指令会被临时储存在“堆栈”当中,“堆栈”也会出现缓冲区溢出。 比如 堆栈的定义 堆栈是内存中的一个连续的块。一个叫堆栈指针的寄存器(SP)指向堆栈的栈顶,堆栈的底部是一个固定地址。堆栈有一个特点就是,后进先出。也就是说,后放入的数据第一个取出。它支持两个操作,PUSH和POP。PUSH是将数据放到栈的顶端,POP是将栈顶的数据取出。 在高级语言中,程序函数调用和函数中的临时变量都用到堆栈,参数的传递和返回值时也用到了堆栈,通常对局部变量的引用是通过给出它们对SP的偏移量来实现的。另外还有一个基址指针(FP,在Intel芯片中是BP),许多编译器实际上是用它来引用本地变量和参数的。通常,参数的相对FP的偏移是正的,局部变量是负的。当程序中发生函数调用时,计算机做如下操作:首先把参数压入堆栈;然后保存指令寄存器 IP 中的内容,作为返回地址 RET ;第三个放入堆栈的是基址寄存器 FP ;然后把当前的栈指针 SP 拷贝到FP,作为新的基地址;最后为本地变量留出一定空间,把SP减去适当的数值。 缓冲区溢出攻击原理 缓冲区攻击指的是一种常见且危害很大的系统攻击手段,通过向程序的缓冲区写入超出其长度的内容,造成缓冲区的溢出,从而破坏程序的堆栈,使程序转而执行其他的指令,以达到攻击的目的。

当正常的使用者操作程序的时候,所进行的操作一般不会超出程序的运行范围,数据被添加到分配给该缓冲区的内存块之外,会发生缓冲区溢出,这时候就会出现数据泄漏或侵占了其它的数据空间。 缓冲区溢出的攻击原理就是越过缓冲区长度界限向程序中输入超出其常规长度的内容,造成缓冲区的溢出从而破坏程序的堆栈,使程序运行出现特殊的问题转而执行其它指令。 一般来说,单单的缓冲区溢出,并不会产生安全问题,如果将溢出送到能够以root权限或其它超级权限运行命令的区域去执行某些代码或者运行一个shell的时候,该程序就是以超级用户的权限控制了计算机。 缓冲区溢出攻击方式 缓冲区溢出攻击的目的在于扰乱具有某些特权运行的程序的功能,这样可以使得攻击者取得程序的控制权,如果该程序具有足够的权限,那么整个主机就被控制了。一般而言,攻击者攻击root程序,然后执行类似“exec sh ”的执行代码来获得root权限的shell。为了达到这个目的,攻击者必须达到如下的两个目标: (1)在程序的地址空间里安排适当的代码。 (2)通过适当的初始化寄存器和内存,让程序跳转到入侵者安排的地址空间执行。 缓冲区溢出攻击方式可以分为两种,一种在程序的地址空间里安排适当的代码的方法;另一种控制程序转移到攻击代码的方法。

防范缓冲区溢出方法_缓冲区溢出发生在哪_一定程度上能防范缓冲区溢出攻击的措施有哪些

论文简介这两种攻击的方式。 在程序的地址空间里安排适当的代码的方法 有两种在被攻击程序地址空间里安排攻击代码的方法: (1)、植入法: 攻击者向被攻击的程序输入一个字符串,程序会把这个字符串放到缓冲区里。这个字符串包含的资料是可以在这个被攻击的硬件平台上运行的指令序列。在这里,攻击者用被攻击程序的缓冲区来存放攻击代码。缓冲区可以设在任何地方:堆栈 stack,自动变量 、堆 heap,动态分配的内存区 和静态资料区。 (2)、利用已经存在的代码: 有时,攻击者想要的代码已经在被攻击的程序中了,攻击者所要做的只是对代码传递一些参数。比如,攻击代码要求执行“exec “/bin/sh” ”,而在libc库中的代码执行“exec arg ”,其中arg使一个指向一个字符串的指针参数,那么攻击者只要把传入的参数指针改向指向”/bin/sh”。 控制程序转移到攻击代码的方法 分类的基准是攻击者所寻求的缓冲区溢出的程序空间类型。原则上是可以任意的空间,实际上,许多的缓冲区溢出都是用的方法来寻求改变程序指针的。这类程序的不同之处就是程序空间的突破和内存空间的定位不同。主要有以下三种: 1、活动纪录 Activation Records : 每当一个函数调用发生时,调用者会在堆栈中留下一个活动纪录,它包含了函数结束时返回的地址。


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-30187-2.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    • 陶晓艳
      陶晓艳

      看来只能只能当月光族了

    热点图片
    拼命载入中...