专栏中心

EEPW首页 > 专栏 > C/C++语言源代码漏洞测试规范标准全解析

C/C++语言源代码漏洞测试规范标准全解析

发布人:quanminjiance 时间:2026-02-12 来源:工程师 发布文章

C语言是一种面向过程的程序设计语言,广泛应用于系统软件与嵌人式软件的开发。本标准的C语言语法遵循ISO/IEC9899:2011。C++语言是一种面向对象的程序设计语言,它在C语言的基础上发展而来,与C语言具有许多相同的语法,广泛应用于系统软件与应用软件的开发。本标准的C++语言语法遵循ISO/IEC14882:2011语法标准。众所周知,由于各种人为因素影响,每个软件的源代码都难免会存在漏洞,而软件信息泄露、数据或代码被恶意篡改等安全事件的发生一般都与源代码漏洞有关。为尽量减少C/C++语言源代码中存在的漏洞,有必要制定针对C/C++语言程序的源代码漏洞测试规范。

一、GB/T 34943-2017 标准定义了8大类32种C/C++源代码漏洞。以下是工具针对关键漏洞的检测重点:

1、内存安全漏洞(如缓冲区溢出): 这是C/C++程序中最危险的漏洞类型。Fortify 和 Coverity 通过数据流分析跟踪缓冲区操作,能有效发现数组越界、不安全的字符串操作等问题。库博SAST 也强调其能进行路径敏感和上下文敏感的分析,以检测此类深层缺陷。 

2、API误用: 标准中“错误的API协议实现”指未按预期方式使用API。Checkmarx 通过其CxQL语言可以定义复杂的API调用规则,检测是否使用了危险的函数(如C语言中的 scanf)而未对输入进行长度检查。 

3、安全功能缺陷(如密码学应用): 标准明确禁止明文存储口令、使用已破解的加密算法等。这几款工具都能检测到代码中是否使用了不安全的随机数生成器、弱哈希算法(如MD5)或危险的加密模式。

 4、路径遍历与注入类漏洞: 库博SAST 和 Fortify 均宣称支持OWASP TOP 10漏洞,包括SQL注入、命令注入、路径遍历等。它们通过污点跟踪技术,标记用户输入等不可信数据源,并跟踪其在整个程序中的传播,直到危险的“汇”点(如执行系统调用的函数)。 

二、测试的目的:

1、统一C/C++安全测试方法:为基于C/C++开发的系统软件、嵌入式软件、通信设备、工业控制软件、安全关键系统(如汽车、医疗、轨道交通)等提供标准化的源代码漏洞检测流程和判定准则。

2、识别C/C++特有安全风险:针对C/C++语言缺乏内存安全机制、指针任意操作、缓冲区边界不可靠、类型转换松散等语言特性带来的典型漏洞,进行系统性检测。

3、支撑关键领域安全合规:满足等级保护、关键信息基础设施安全保护、网络安全审查等对软件供应链安全、自主可控产品的源代码安全审计要求。

4、提升基础软件安全水位:广泛应用于操作系统、数据库、中间件、驱动软件、通信协议栈等高可信软件的开发与评估。

三、测试项目内容:

行为问题;路径错误、数据处理、错误的API协议实现、劣质代码、不充分的封装、安全功能、Web问题等。

四、检测方法与流程:

1、静态分析:通过词法分析、语法分析、数据流分析、控制流分析、符号执行、污点分析等技术,在不运行代码的情况下发现潜在漏洞。

2、动态分析:在受控环境中编译运行被测程序,构造模糊测试输入或插桩跟踪,验证漏洞的可达性和可利用性。

五、制定CNAS能力验证计划需以标准合规性为核心,结合自动化工具与人工分析,覆盖漏洞全生命周期。重点包括: 

1、依据GB/T 34943设计测试用例,确保漏洞分类完整。 

2、通过Fortify、Checkmarx等工具实现高效检测。 

3、严格遵循CNAS-RL02要求,保障结果可追溯性与整改有效性。 

本测评中心拥有固定的测试实验室,完备的设备设施及测试工具,并具有一支具有多年软件测试工作经验的专业技术团队。我方实验室已完成专项领域数百个软件测评任务,累计发现软件重大问题1000余个,涵盖应用软件、嵌入式软件等多种软件类别,涉及工业操作系统、医疗、电工电子、电力、轨道交通等多个应用领域。在客户服务方面,配备专业客户服务团队,可提供7×24小时快速响应服务,及时解决客户在测试过程中遇到的各类问题。测试团队专业能力扎实、服务态度规范、问题定位精准,能够提供全方位测试解决方案,是值得信赖的合作伙伴。

检测试验找彭工136-9109-3503。

5e5457cc4cbdb3e8cc63d969c521ddc5 (1).jpeg





专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们

关键词: 代码测试 兼容性测试 功能测试 功能性试验

相关推荐

P87LPC764功能测试版 (内容有电路原理图、PCB、汇编源代码、...

软件编程规范总则checklist

基于PXI模块化仪器和LabVIEW软件 开发二次监视雷达自动测试系统

WLAN设备与手机终端的兼容性测试

控制器测试工装放电技术

一种挂式空调器控制板的自动功能测试仪介绍

連接器功能測試

高密度印刷线路板的功能测试

嵌入式软件三大潜在问题及其测试技术

TD-SCDMA系统基于网元仿真的OMC功能测试

IC卡功能测试与产业化测试不可偏废

EDA/PCB 2013-12-12

基于GPIB/VXI/IEEE1394总线的板级电路功能测试和故障诊断自动化测试系统

空调电器盒功能测试对压缩机配件的替换研究

蓝牙无线测试的指标及其测试方法

华为公司编程语法规范

更多 培训课堂
更多 焦点
更多 视频

技术专区