开发人员在日常开发时代码会存在着一些潜在的问题,这些问题虽然在实际操作时可能不会报错,但是会给项目带来一些潜在的安全隐患。
对于一些安全系数比较高的软件或者安全性较高的场所的影响会比较大,所以在整个开发流程中需要有这个对代码进行静态分析的环节,即需要自动拉取代码对代码进行分析。该代码静态分析软件具备着丰富的代码解决功能,当开发人员提交代码后就会自动触发该工具,存在安全隐患的问题会显示在web界面上,且用户可以在web界面上对代码进行线上的编辑修改并且可以提交代码。该功能是自动触发的,不需要人工手动操作。
该代码静态分析软件支持以下缺陷分析。
- 变量在定义之前被使用。
- 表达式存在未定义行为,变量的求值顺序不确定
- 动态分配的内存未释放就丢失了该内存的引用,必然会引起内存的泄漏。
- 临时变量的指针被赋值给全局变量,然而他可能会被释放或重新创建,存在潜在风险。
- 变量释放后被使用
- 变量被释放
- 导出来的变量和声明不在模块外部使用
- 函数真实的返回值与声明的返回值类型不一致
- 标识符因为还没有声明所以无法识别(先声明后使用)
- 预处理错误。头文件存在但不可读
- 预处理错误。找不到引用的头文件
- 函数声明有返回值,但函数无返回值。
- 函数返回值没有被使用
- 编译错误,检查分析器无法继续
- 导出来的函数和声明未在模块外部使用。其中声明可以使用静态限定符
- 函数定义有误
- 变量重定义
- 外部声明的变量被本地声明遮盖
- 该表达式不修改任何值