CS.NRE.CONST.DEREF

null 对象引用常量可显式取消引用,或通过调用可取消引用该常量的函数来取消引用。

漏洞与风险

取消引用 null 对象引用是一个严重的运行时问题,该问题将导致一些操作系统的应用程序崩溃,并引发另一些操作系统出现运行时异常。

示例 1

复制
                  class Param {
                      public int par1() {
                          return 0;
                      }
                  }
                  class NPD3 {
                      public void foo() {
                          foo2(null);
                      }
                     public void foo2(Param param) {
                         param.par1();
                     }
                 }

Klocwork 针对第 8 行生成问题报告 (CS.NRE.CONST.DEREF)。通过将参数 1 传递给第 8 行的函数“foo2”,常量 null 指针已取消引用。

安全培训

应用程序安全培训材料由 Secure Code Warrior 提供。