一、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。
更多精彩: 免费发布信息网 http://www.zhelice.com
13691093503