产品中心
klockwork
Klocwork是Perforce 公司的一款静态代码分析和SAST静态应用程序安全测试工具,可用来识别软件的安全、质量和可靠性问题,适用于分析C、C++、C#、Java、Python、JavaScript和Kotlin语言,帮助强制执行标准的合规性。 Klocwork专为企业DevOps和DevSecOps而构建,可扩展到任何规模的项目,可与大型复杂的环境、广泛的开发工具进行集成、并为整个企业提供控制、协作和报告。这使得 Klocwork 成为首选的静态分析器,它保持高开发速度,同时强制执行安全性和质量的持续合规性。 Klocwork的差异分析引擎在保持准确性的同时提供即时分析结果,并可以与CI/CD管道无缝集成,以实现自动持续合规,在每次提交代码时保护软件不受漏洞的影响。

Klocwork的主要特性

一、Klocwork发现安全漏洞

将 Klocwork 静态应用程序安全测试 (SAST) 用于 DevOps (DevSecOps)。我们的安全标准可识别安全漏洞,有助于及早发现和修复安全问题,并使软件符合国际和行业公认的安全标准以及用户自己的企业要求。


DevSecOps:Klocwork 与 CI/CD 工具、容器、云服务和机器配置集成,使自动化安全测试变得容易。

安全标准:CWE、OWASP、CERT、PCI DSS、DISA STIG 和 ISO/IEC TS 17961。

安全漏洞检测:SQL 注入、受污染的数据、缓冲区溢出、易受攻击的编码实践等等。

Bug、质量问题和代码异味检测:空指针取消引用/异常、内存/资源泄漏、未捕获的异常等。

二、Klocwork项目流

Klocwork 项目流(Project Streams)通过简化项目规则配置、问题管理、缺陷引用、报告和分析数据的高效数据存储,提供了对具有多个变体或分支的共享代码库的轻松管理。创建流提供如下好处:

  • 将单个项目规则配置分配给所有变体
  • 多个变体的共同问题会自动保持同步,并且只需要引用一次。
  • 轻松识别多个流之间的相同问题以及特定流的特有的问题。
  • 为合规性、功能安全或其他证据性目的生成单个流的报告。
  • 更方便地组织和高效地存储分析数据。

三、Klocwork支持DevOps

Klocwork工具的设计以持续集成和持续交付为首要思想,更方便将静态代码分析集成到CI/CD中作为管道的一部分。

差异分析

使用来自Klocwork Server的系统上下文数据,可以只分析更改的文件,还提供差异分析结果,从而缩短了分析时间。

易于自动化

Klocwork工具具有通用的命令行接口,所有缺陷数据都可以通过REST API进行访问,并且都是采用标准输出格式,如XML、JSON和PDF等。

容器化构建

Klocwork支持在容器化和云构建系统中运行,可以根据需要提供机器实例,从而提供了最大的灵活性和机会,支持使用内部部署或外部云服务的方式进行代码分析。

四、控制、协作和报告

Klocwork验证平台集中存储分析数据、趋势、metrics和代码库配置,通过web浏览器进行访问。

仪表板是高度可定制的,使您的开发人员、管理人员和其他利益相关者能够:

定义全局或特定于项目的QA和安全目标以及规则配置。

  • 控制访问权限和审批工作流程。
  • 查看趋势和指标数据的项目质量和合规性。
  • 生成合规性和安全性报告。
  • 根据严重程度、位置和生命周期对缺陷进行优先排序。
  • 使用Smart Rank来帮助开发人员根据缺陷可能性确定修复的优先级,当与问题严重性相结合时,提供了一个整体的漏洞风险评分。
  • 区分新问题和遗留代码问题。
  • 将未完成的事项推给变更控制系统。

五、适合开发人员使用

通过将静态代码分析与其他开发工具集的无缝集成,Klocwork实现了缺陷检测的左移,方便开发人员对工具的使用,提高开发效率。无需用户配置

Klocwork为数百种编译器和交叉编译器提供了开箱即用的支持而无需用户另外配置。

易于使用

提供多种流行IDE(包括Microsoft Visual Studio,Eclipse,IntelliJ等)的插件。

连接的桌面客户端

使用Klocwork插件对本地代码做的更改,可在IDE中提供即时的差异分析结果。

详细的反馈和帮助

根据代码违规的严重程度、位置和风险等维度来识别缺陷,用户将获得详细的缺陷追溯信息和丰富的上下文敏感的修复建议和指导,帮助用户理解和学习。
此外,Klocwork还提供了Secure Code Warrior集成,它在您在编写代码时为您提供了许多常见开发语言的软件安全课程和培训工具

自定义规则

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

架构分析

Klocwork还可与架构可视化和执行工具集成在一起,如Structure101,允许用户通过清晰而正确的依赖关系进一步提高其代码库的整体质量和可维护性。


技术规格

支持的语言:

•C     •C++ •C# •Java         •JavaScript •Python •Kotlin

支持的平台:

•Windows •Linux •Mac OS X

支持的功能安全标准:

• ISO 26262 up to ASIL level D*

• IEC 61508 up to SIL 4*

• EN 50128 up to SW-SIL 4*

• IEC 62304 up to Software Safety Class C*

• IEC 60880*

支持的编码标准:

• OWASP• PCI DSS
• DISA STIG v5• TS 17961 (ISO/IEC)
• MISRAC++ 2008• TS 17961 (ISO/IEC)
• AUTOSARC++ 14• HKMC
• JSF AVC++
• Klocwork Quality
• Create Your Own Rules

支持的框架:

C/C++Java• Java Persistence API
• AUTOSAR• Android• JAX RS
• Boost• Java SE/ EE• JAX WS
• Microsoft .Net• Junit• ReactiveX
• POSIX • Hibernate ORM• Vert.x
• STL• Apache Cocoon• WS XML-RPC
• WinAPI• Apache Commons
• QT• Apache ECSJavaScript
• Apache Struts• TypeScript
C#• Apache Tomcat• JSX
• .NET Framework• log4j• React
• .NET Core• EclipseSWT• Vue
• Mono• JDOM
• Xamarin• Spring Framework Python
• Unity• GWT• Python 3
• Universal Windows Platform• Java Persistence API

支持的IDE:

• CLion• Microsoft Visual Studio• IBM Rational Application Developer
• Wind River Workbench• Visual Studio Code• JetBrainsIntelilj IDEA
• Eclipse• Android Studio
• QNX Momentics• WebSphere

支持的源码管理系统:

• Base ClearCase 7.x*• TFS 2010
• CVS 1.12.x• Perforce server 2005.2 or higher
• Git 1.7.x• Subversion 1.4.x**, 1.6.x,1.7.x, 1.8.x

支持的C/C++编译器:

• Analog Devices Blackfin • IAR RL78• Renesas R32C
and TigerSHARC• IAR SH• Renesas R8C
• Archelon• IAR STM8• Renesas RH850
• Archelon CSR Kalimba• IBM XL• Renesas RX
• ARM CC• ImageCraft AVR• Renesas SuperH
• ARM TItms470• ImageCraft Intel• Renesas V850
• CADUL C for Intel 80X86• ImageCraft M8C• Rowley Crossworks MSP430
• CEVA (NVIDIA)• Intel iC-386• Sony SN Systems PS2, PS3 and PSVita
• Clang• KeilCA51, C166 and C251
• CodeWarrior FreescaleS12• Marvell• Sony Orbis Clang PS4
• Compiler caching tools• MetaWare• Sun Studio
• Cosmic• Metrowerks CodeWarrior• Synopsys ARC MetaWare
• Embarcadero• Microchip MPLABC18• Target Chess
• Fujitsu FR • Microchip MPLAB pic24• Tasking 68K
• GNU• Microchip MPLAB pic32• Tasking ARM
• Green Hills• Microchip MPLABXC8 C• Tasking Classic C166
• Hexagon Tools• Microchip MPLABXC16• Tasking DSP56X
• HI-CROSS+ Motorola HC16• Microsoft Visual Studio• Tasking IFXSLE88
• HI-TECH C• Microtec• Tasking SLE88
• Hitachi ch38• Microware Ultra C for OS-9• Tasking Tricore
• HiveCC• Mono HeadsetSDK• Tasking VXC166
• IAR 78K• Motorola DSP563• Tensilica Xtensa
• IAR 8051• Nintendo Cafe Platform• TI ARP32
• IAR ARM• Nvidia CUDA• TI msp430
• IAR Atmel AVR• NXP StarCore Freescale• TItms320C55x
• IAR AVR32• Panasonic• TItms320C3x
• IAR CR16C• Panasonic MN101E/
MN101L
• TItms320C4x
• IAR Hitachi H8
• IARM16C• Paradigm• TItms320c28x
• IARM32C• Plan 9• TItms320c6x
• IAR MAXQ• QNX qcc• TriMedia tmcc
• IARMSP430• Renesas 78K0R• Watcom
• IAR NECV850• Renesas CC-RL RL78• WinAVR
• IAR Renesas R32C• Renesas CX• Wind River Diab
• IAR Renesas RX210• Renesas M16C• Wind River GCC
• IAR RH850• Renesas M32R• ZiLOG eZ80