Fortify代码漏洞修复专题

【修复总结】Null Dereference 空指针引用

2019-06-18  本文已影响0人  Franchen

描述

当违反程序员的一个或多个假设时,通常会出现 null 指针异常。如果程序明确将对象设置为null,但稍后却间接引用该对象,则将出现 dereference-after-store 错误。此错误通常是因为程序员在声明变量时将变量初始化为 null。

案例

String str = null;
for (String item : list) {
    str = item;
}
return str.length(); // 若list为空数组,则循环结束后str依旧为null。此时程序奔溃。

修复方案

1、在定义时赋予一个非null对象,例如:String str = "";
2、当不能保证对象非null时,可在调用方法前判断是否为null,若为null则赋予默认值或者阻断代码。

上一篇 下一篇

猜你喜欢

热点阅读