当前位置:   article > 正文

CWE-191: Integer Underflow (Wrap or Wraparound)整数下溢

integer underflow

 ID: 191

类型:基础
结构:简单

状态:草稿

描述

从另一个值中减去一个值,结果小于允许的最小整数值,该整数值产生的值不等于正确的结果。

扩展描述

这可能在有符号和无符号的情况下发生

相关视图

与“研究层面”视图(CWE-1000)相关

同“公开弱点简图”视图(CWE-1003)相关

与“开发层面”视图(CWE-699)相关

引入模式

阶段

说明

实现

 

应用平台

语言

C (出现的可能性不确定)

C++ (出现的可能性不确定)

Java (出现的可能性不确定)

C# (出现的可能性不确定)

后果

范围

冲击

可能性

可利用性

技术冲击: DoS: 崩溃、推出或者重启: DoS: 资源消耗(CPU): DoS: 资源消耗 (内存):; DoS: 不稳定

这种弱点通常会导致未定义的行为,从而导致崩溃。在涉及循环索引变量的溢出情况下,无限循环的可能性也很高。

 

完整性

技术冲击: 修改内存

如果所讨论的值对数据(而不是流)很重要,则会发生简单的数据损坏。此外,如果环绕导致其他条件(如缓冲区溢出),则可能会发生进一步的内存损坏。

 

保密性
可利用性
访问控制

技术冲击: 执行未获授权的代码或者命令;越过保护机制

这种弱点有时会触发缓冲区溢出,可用于执行任意代码。这通常不在程序隐式安全策略的范围内。

 

示例

例1

下面的示例从32位有符号整数中减去一个数。

(问题代码)

Example Language:

#include <stdio.h>
#include <stdbool.h>
main (void)
{

int i;
i = -2147483648;
i = i - 1;
return 0;

}

该示例具有整数下溢。i的值已经是尽可能低的负值,所以减去1后,i的新值是2147483647。

种属

 

说明

研究空白

研究中

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/141883
推荐阅读
相关标签
  

闽ICP备14008679号