hack8899吧 关注:353贴子:3,579

回复:溢出漏洞计算工具1.0.9.2 试用版

只看楼主收藏回复

"溢出"有大致以下几种:
▪ 缓冲区溢出
▪ 堆栈溢位
▪ 物理溢出
▪ 数据和算术溢出
▪ 缓冲区溢出
是指向缓冲区写入使之溢位的内容。
▪ 堆栈溢位
是指过多函数呼叫使呼叫堆栈产生溢位。
▪ 物理溢出
大致就是物体在所在盛器中超出盛器容量并从盛器中满出次物体的过程,就是溢出。
▪ 数据及算术溢出
算数溢出 是指执行单项数值计算时,计算结果大于暂存器或内存所能储存或表示的能力限制。
数据溢出 ,在计算机中,当要表示的数据超出计算机所使用的数据的表示范围时,则产生数据的溢出。
我们用wpe刷东西等,就是用的这种溢出。下面对其详细讲解。
算术溢出(arithmetic overflow)或简称为溢出(overflow)指的是:
在电脑领域里所发生的溢出条件是,执行单项数值计算时,当计算产生出来的结果是非常大的,大于暂存器或内存所能储存或表示的能力限制。
在电脑领域里,执行多项或累计的数值计算时,当计算产生出来的总值是非常大的,大于暂存器或内存所能储存或表示的能力限制。要注意的是,溢位可能会在其他位址被置换。
加法器是中央处理器算术逻辑单元中的核心之一。当长度为n位的两个二进制数经过加减法器运算,得到的长度为n位的结果不是正确值时,我们说发生溢出。
数据溢出溢出原因:
数据类型超过了计算机字长的界限就会出现数据溢出的情况。导致内存溢出问题的原因有很多,比如:(1) 使用非类型安全(non-type-safe)的语言如 C/C++ 等。(2) 以不可靠的方式存取或者复制内存缓冲区。(3)编译器设置的内存缓冲区太靠近关键数据结构。


IP属地:四川17楼2014-09-22 03:20
回复
    ▪▪检查溢位
    大多数的电脑都可以区别以上两种溢位条件。当加法或减法的结果发生进位,必须考量到当运算的数值与结果都是 unsigned numbers(无号数值,即“正数”)型态时,运算的结果就不适合使用这个数值型态。所以,在执行无号数值(正数)的加法或减法之后检查进位旗标是非常有用的作法。“溢位”在运算结果为无号数值时容易发生,可以从有符号的运算数值预计出这类的情形(例如:两个正整数相加产生的结果为一个负数)。所以,在执行 2 的补数的加法或减法之后检查溢位旗标是非常有用的作法(换言之,有考虑到有号数值)。
    定义A和B都是长度为n位的二进制数


    IP属地:四川18楼2014-09-22 03:22
    回复
      以下是竖式(第一行为进位):
      其中是的进位
      1、输入的数是无符号整数,我们通过观察C判断是否溢出
      a) C=1
      i)如果是加法操作,结果不正确,结果溢出
      ii)如果是减法操作,结果正确,结果未溢出


      IP属地:四川19楼2014-09-22 03:23
      回复
        b) C=0
        i)如果是加法操作,结果正确,结果未溢出
        ii)如果是减法操作,结果不正确,结果未溢出。在这种情况下,结果是负数。然而,在无符号整数世界里,负数不存在,我们认识这样的操作是非法的。当然,如果认为答案是以有符号整数补码的形式出现,则结果正确。
        2、输入的数是有符号整数,我们通过观察V判断是否溢出
        a) V=1,结果不正确,结果溢出
        b) V=0,结果正确,结果未溢出


        IP属地:四川20楼2014-09-22 03:24
        回复
          ▪▪控制溢位
          有几个控制溢位的方法:
          设计:选择正确的资料型态,尤其要注意资料长度与 signed/unsigned 资料符号。
          回避:事先注意指令的运作以及检查运算的数值,或许可以确保计算出来的结果不会超过内存储存资料的限制。
          控制:当它被侦测到,还有在其他的程序完成时被检测出来,那么溢位是可以被预料的。例如:两个位元大的两个数值做加法计算,这种情形最可能发生,步骤如下:先加低位元再加高位元,但是如果它必须完成低位元的运算,就会产生位元加法的运算溢位,那么就有必要做侦测和增加高位元的总和。通常 CPU 有支援侦测数值加法大于暂存器大小的作法,基本上这个作法是采用状态位元的方式。
          增值:假如储存的数值过大就会被分配给其他特定的数值,这时溢位就会发生,然后传回旗标值时就会产生连续运作的现象。检查这个问题最有用的方法,就是在整体的计算结尾做一次性的检查工作,而不是检查每一个执行步骤。这个作法最常用在浮点硬件呼叫浮点运算器。
          忽略:这是最普遍的作法,但是这个作法会得出不正确的结果,以及降低程式的安全性。


          IP属地:四川21楼2014-09-22 03:25
          回复
            ▪▪除零计算
            任何数除以零的计算(Division by zero)“不是”算术溢位的一种。在数学上只能明显算是不明确的定义(Defined and undefined);它计算出来的结果只能当成是“没有”值,而不是非常大的无限数值。当然乘零计算也常出现在wpe刷游戏金币中(开仓库个数改成开0个等等)。
            ▪▪算术下溢
            算术下溢也称为浮点数下溢,是指计算机浮点数计算的结果小于可以表示的最小数。
            算术下溢出现在计算结果很接近零,使得计算结果的大小小于浮点数可以表示的最小数字。算术下溢也可以视为是浮点数指数在负值时的溢位。例如,浮点数指数范围为-128至127,一个绝对值小于2−127的浮点数就会造成下溢(假设-128的阶码用于表示负无穷)。
            下溢间距:
            界于−fminN and fminN之间的区间称为下溢间距(underflow gap),其中fminN为一般浮点数格式所能表示的最小正数。
            在早期的设计中,界于下溢间距之间的数字其值均视为零,因此若出现算术下溢,其结果会被改为零,可能是用硬件或系统软件处理,此处理方式称为“清洗为0”(flush to zero)。
            1984年版的IEEE 754导入了次正规数,次正规数和零可以填满下溢间距。假设浮点数指数范围为-128至127,最小可表示正规数为2−127,次正规数则是类似0.9 −127、0.8 −127……之类的数,计算时会将结果转换为最接近的次正规数,因此可以渐近下溢,不过最接近的次正规数中仍有可能是零。
            处理算术下溢:
            出现算术下溢时,可能会设定一个状态位元、产生异常、产生中断或是这几项的组合。
            IEEE 754中规定只有算术下溢会造成精确度下降时才回报算术下溢,一般是在最后的计算结果不对时才会出现。但若程式要捕捉算术下溢,不论是否有精确度,都会回报算术下溢。IEEE 754处理算术下溢及其他异常的方式相同,都要纪录算术下溢时的浮点运算器状态。


            IP属地:四川22楼2014-09-22 03:25
            回复
              物品在背包格里叠加是什么思路丫。可以在详细点吗。还有我的激活码还给不给了。


              来自Android客户端24楼2014-09-22 09:26
              收起回复
                申请注册
                @hack8899
                求给个注册码吧!谢谢大神@hack8899


                IP属地:安徽25楼2014-09-23 20:08
                收起回复
                  申请注册
                  花花公子擦你吗


                  26楼2014-09-26 08:20
                  回复
                    我现在一级吗?要等多久才有得领啊???


                    IP属地:广东27楼2014-09-29 23:57
                    回复
                      申请注册
                      马汀fine


                      IP属地:广东28楼2014-09-30 15:08
                      回复
                        申请注册
                        jin3349858
                        我电脑重新安装系统后,之前的注册码不能注册了,麻烦重新发一个给我,谢谢


                        IP属地:广东29楼2014-09-30 23:49
                        收起回复
                          申请注册
                          bd7870892


                          30楼2014-10-01 21:13
                          回复
                            申请注册
                            倪宇宁


                            IP属地:江苏31楼2014-10-03 13:46
                            收起回复
                              wpe吧等级过4. 谢谢楼主了


                              32楼2014-10-15 15:52
                              收起回复