Klocwork——针对C, C++, C#, Java程序的静态代码分析工具

使用klocwork好处?

Klocwork是针对C,C++,C#和Java编程语言的最准确的代码分析器之一。这是一款现代化的敏捷静态代码分析器,可扩展到任何规模的项目,并且可以在DevOps周期内开展有效地工作。此外,它还通过了 TüV-SüD的功能安全合规认证,包括IEC 61508,ISO 26262,IEC 62304和EN50128。.

  •  良好的合规性
  •  安全、可靠的代码
  •  更高的源码质量
  •  更快地发布
为什么选择Klocwork?

Klocwork主要功能
支持Devops

Klocwork工具采用了持续集成与持续交付(CI/CD)的设计理念,这使你的CI/CD流水线可以轻松包含静态代码分析功能。

差异分析: 通过Klocwork Server的系统上下文数据,在整系统已经分析完成后,可以仅分析已更改的文件,提供差异分析结果。这种方式可以尽可能减少分析耗时

易于自动化:Klocwork工具有通用的命令行界面,你可以通过REST API访问Klocwork缺陷数据。并且这些数据输出都采用了标准格式,例如XML,JSON和PDF。

容器化构建: Klocwork可以在容器化和云构建的系统中运行,并且支持按需提供机器实例。为能够使用内部云或者外部云服务进行代码分析提供最大限度的灵活性和机会。

管控、协作与报表输出

Klocwork Portal仪表板是对整个组织中对代码库的分析数据,趋势,指标和配置的集中存储,可通过Web浏览器访问。

该仪表板具有高度可定制性,使您的开发人员,经理和其他相关人员可以:

  • 定义全局性的或者特定项目的QA、安全目标以及规则配置。
  • 控制访问权限、审核工作流。
  • 查看与项目质量和合规性相关的趋势数据、指标数据。
  • 生成合规性和安全性报告。
  • 根据严重程度、位置以及所处的声明周期确定缺陷的优先级。
  • 从遗留代码问题中识别出新问题。
  • 将积压问题推送到变更控制系统。
为开发人员量身定做

通过将静态代码分析与你的其余开发工具无缝集成,Klocwork可以提前发现缺陷并促使开发人员采用Klocwork作为培训和提高生产力的工具。

无需用户配置:Klocwork为数百个编译器和交叉编译器提供了开箱即用的支持,因此构建集成是自动的。

易于使用: 为流行的IDE(Microsoft Visual Studio, Eclipse, Intellij等)提供插件支持

连接的桌面: 使用连接的桌面插件可对本地代码更改在IDE中立即提供差异分析结果。

详细的反馈和帮助: 对函数程序内部缺陷以及编码违例情况按严重程度标记。对于每种缺陷和代码违例情况,你将获得详细的原因说明,并提供丰富的上下文相关帮助和补救指南。易于理解和学习。

自定义规则: 图形化的自定义检查器创建工具可快速、简单地实施基于项目或组织的特定的规则——从而进一步丰富了学习机会。

架构层面的分析

Klocwork还与架构可视化工具(如Structure 101)集成在一起,让用户通过清晰而准确地查看依赖关系,进一步提高代码库的整体质量和可维护性。

“通过Klocwork,我们能够比传统的手动分析和测试更快地发现可能遗漏的问题,以及找到错误。这使我们能够交付客户所期望的,并让我们引以为傲的,高质量软件。” ————SCM系统工程经理
Klocwork质量编码标准

使用Klocwork可以让遵守质量编码标准变得容易起来。

你可以通过以下这些合规性分类来加强编码标准。有利于在检测结果中,得到更少的误报和漏报。

MISRA 对C 和 C++编码的合规

根据MISRA C®和C++编码标准自动检测你的代码。

MISRA编码规则识别安全关键系统中的潜在问题,并标记违反这些规则的代码部分。

MISRA C检查器使用MISRA C:2012版规则,包含了修订1安全规则。

MISRA C++检查器使用MISRA C++2008版规则。

AUTOSAR 对 C++14编码的合规

根据AUTOSAR C++14编码标准自动检测你的代码。

通过AUTOSAR标准来识别C++14编码中的安全问题。

使用AUTOSAR C++14标准来标记任何违反这些规则的代码。

因此,你能够确保编码的合规性并且满足ISO标准。而且,你能够跟进合规性的情况,以及查看合规性报表。

NASA 对C 和 C++编码的合规

根据 NASA C和C++的合规标准自动检测你的代码。

这个分类消除了让代码难以静态分析或审查的编码做法。该规则是对MISRA C指南的补充,并已纳入喷气推进实验室(JPL)编码标准里。

该分类法识别出具有这10个弱点或者漏洞的代码,并对其进行了优先级排序。

CERT 对C 和 C++编码的合规

根据CERT C和C++编码标准自动检测你的代码。

CERT编码规则可识别代码中的安全漏洞。使用CERT C和C ++分类法来标记违反这些规则的代码,这可以帮助您消除未定义的行为,并为安全代码应用最佳实践。

而且,Klocwork可帮助您首先确定优先级并优先修复最关键的代码违规情况。它甚至会提供些详细的指导和示例,帮助你更好地解决这些错误。

CWE 对C ,C++,C#,Java编码的合规

根据CWE安全漏洞列表自动检测你的代码。

CWE可以识别C,C ++,C#和Java中的常见安全漏洞。

使用CWE分类法来识别具有这些安全漏洞的代码。并且,Klocwork对违规进行优先级排序,以帮助你确定哪些违规需要优先解决。

DISA STIG 对 C, C++, and Java编码的合规

根据DISA STIG编码规则自动检测你的代码。

DISA STIG是一种网络安全方法,用于标准化网络,服务器,计算机和逻辑设计中的安全协议。

使用这种分类方法来识别C,C ++和Java的常见安全漏洞。并且,Klocwork对违规进行优先级排序,以帮助你确定哪些违规需要优先解决。

OWASP 对Java编码的合规

根据OWASP的安全漏洞列表自动检测你的代码。

使用OWASP合规分类法来来识别Java的常见Web应用程序安全漏洞。并且,Klocwork对违规进行优先级排序,以帮助你确定哪些违规需要优先解决。

C, C++, C#, and Java的Klocwork质量

Klocwork质量分类法使用的检查器,专注于提高代码的整体质量,以确保其高效、有效及可靠。

为你自己的业务或项目定义编码准则

你可以为项目或业务范围的编码规范选择自己的C,C ++,C#和Java检查器。Klocwork将自动实施这些规则,并且报告代码合规情况。

谁在用Klocwork?

航空航天与国防领域

航空航天,国防和军事组织每天都使用嵌入式软件。确保软件安全,可靠至关重要。这使得开发人员为了确保开发出软件无任何缺陷,承担巨大的压力。

大型代码库和复杂的系统使这成为一个挑战。严格的合规性要求使其更加困难。借助 Klocwork,机载系统开发人员可以轻松验证其合规性并开发质量系统。

能源技术领域

能源和公用事业产品开发团队需要确保功能安全合规,符合行业法规以及减少潜在的安全漏洞和编码错误。对于团队而言,很可能是一个巨大的挑战。

借助Klocwork,能源和公用事业产品开发团队可以轻松遵守编码标准,识别潜在风险并了解代码合规性。

嵌入式开发领域

管理数字资产的增长对于高效设计开发嵌入式系统至关重要,所有这些过程都必须在严格的合规性准则下进行。对于质量要求严谨的行业,代码需要符合编码标准和行业需求。而且,Klocwork可以证明你的代码是合规的。

医疗设备领域

嵌入医疗设备中的软件质量可能就决定着生与死。因此,对设备安全性的审查越来越严格。

通过使用Klocwork,你将能够满足不断变化的政府法规,并验证你的医疗设备是安全,可靠和高效的。

汽车行业领域

汽车软件开发需要超过1亿行代码。更重要的是,车内安装的嵌入式软件的开发通常独立于汽车的其它部分。

因此,开发团队必须能够有效地应对一系列独特的挑战。使用 Klocwork,开发团队能够在项目上进行协作,并确保其代码的高质量并符合法规要求。

Klocwork支持的功能安全标准

Klocwork SCA可达到行业功能安全标准和认证。

  • IEC 61508(通用工业,国防)。
  • ISO 26262(汽车)。
  • EN 50128(铁路)。
  • IEC 62304(医学)。
  • DO-178B / C(航空航天)。
通过ISO,IEC和EN合规认证

Klocwork经过独立认证,符合法规要求。

TüV-SüD认证

Klocwork已通过TüV-SüD认证,符合以下功能安全标准:

  • IEC 61508(通用行业)
  • ISO 26262(汽车)。
  • IEC 62304(医学)。
  • EN 50128(铁路)。

推荐资源

技术文档

了解更多
+