C语言是一种面向过程的程序设计语言,广泛应用于系统软件与嵌入式软件的开发。本标准的C
语言语法遵循ISO/IEC9899:2011。C++语言是一种面向对象的程序设计语言,它在C语言的基础
上发展而来,与C语言具有许多相同的语法,广泛应用于系统软件与应用软件的开发。本标准的C++
语言语法遵循ISO/IEC14882:2011语法标准。众所周知,由于各种人为因素影响,每个软件的源代码
都难免会存在漏洞,而软件信息泄露、数据或代码被恶意篡改等安全事件的发生一般都与源代码漏洞有
关。为尽量减少C/C++语言源代码中存在的漏洞,有必要制定针对C/C++语言程序的源代码漏洞
测试规范。
源代码漏洞测试可在开发过程的软件编码活动之后实施,也可在运行和维护过程中实施。
本标准的漏洞分类与漏洞说明主要参考了MITRE 公司发布的CWE(Common WeaknessEnumeration),
同时结合了当前行业主流的自动化静态分析工具在测试实践中发现的典型漏洞来确定并进
行说明。
注:本标准漏洞参考了CWE2.9版本,示例代码适用于本标准选择的案例。
本标准仅针对自动化静态分析工具支持的关键漏洞进行说明,应用本标准开展源代码漏洞测试时
应根据实际需要对漏洞进行裁剪和补充。