0


Coverity 代码静态安全扫描工具 : 认识Coverity

【摘要】 Coverity是一款快速、准确且高度可扩展的静态分析 (SAST) 解决方案,可帮助开发和安全团队在软件开发生命周期 (SDLC) 的早期解决安全和质量缺陷,跟踪和管理整个应用组合的风险,并确保符合安全和编码标准。

1. 概述

Coverity是一款快速准确高度可扩展的静态分析 (SAST) 解决方案,可帮助开发和安全团队在软件开发生命周期 (SDLC) 的早期解决安全和质量缺陷,跟踪和管理整个应用组合的风险,并确保符合安全和编码标准。

在编写代码时,Coverity尽早识别关键的软件质量缺陷和安全漏洞。在开发过程中,当它成本最低且最容易修复时。精确的可操作修复建议和特定于上下文的 eLearning 可以帮助开发人员了解如何快速修复他们的优先级问题,而不必成为安全专家。Coverity无缝地将自动化安全测试集成到您的CI/CD管道中,并支持您现有的开发工具和工作流。

Coverity为应用程序在不同软件开发生命周期(SDLC)阶段的风险态势的整体视图。

  • 安全团队可以查看整个应用程序组合的集中风险概要。其中通过API访问允许将结果导入到其他风险报告工具中。
  • 可以按类别过滤已识别的漏洞,查看趋势报告,基于关键度对漏洞进行优先补救,并跨团队和项目管理安全策略合规(例如OWASP Top 10, CWE Top 25,和PCI DSS)。
  • “随时间变化的问题”报告显示不同时间段的严重程度,并为您提供有关项目安全状况的即时信息。PDF报告下载允许审核员维护详细的合规记录。

1.1 目录结构

Linux系统下的Coverity 发布包,其顶层目录结构如下:

.
├── bin
├── brakeman-pro
├── build.py
├── certs
├── closure-compiler
├── config
├── doc
├── dotnet
├── dtd
├── dynamic-analysis
├── eagleye.py
├── forcheck
├── HIS
├── jars
├── jdk11
├── jre
├── jshint
├── lib
├── library
├── locale
├── node
├── python3.4
├── ruby
├── spotbugs
├── spotbugs-ext
├── support-angularjs
├── template-da
├── uninstall
├── VERSION
├── VERSION.xml
├── xsl
└── yarn

windows系统下的Coverity 发布包,其顶层目录结构如下:

2. 集成生态

2.1 端侧IDEs

Code Sight™ IDE插件,开发人员在编写代码时可以在几秒钟内得到准确的分析。它快速准确的增量分析在后台运行,以尽量减少干扰,直接在 IDE 内为开发人员提供实时结果,包括缺陷描述、类别、严重性、CWE信息、缺陷位置、详细的修复建议、数据流跟踪信息,以及IDE中的问题分类和管理功能。相关插件的下载地址:

  • Visual Studio插件
  • Intellij IDEA|WebStorm|PyCharm|PhpStorm|RubyMine 插件
  • Eclipse插件
  • Visual Studio Code

2.2 版本控制

Accurev、ClearCase、CVS、GIT、Mercurial、Perforce、Plastic、SVN和Team Foundation Server

2.3 Ticketing系统

  • Jira
  • Bugzilla

2.4 持续集成/持续部署

  • Jenkins
  • Azure DevOps Server

2.5 构建工具

操作系统流程层次监测您的构建系统来获得每一个操作的清晰视图,展现您的软件。

Gradle/Ant/Maven/CMake/Make等

2.6 合作伙伴集成

REST api可用于支持其他构建自动化解决方案,以及将分析结果导入其他企业或自定义工具。

3. 检查能力

3.1 支持的语言

Coverity为 21 种语言提供广泛的安全和质量检查支持。

语言

3.2 支持的框架

Coverity支持Java、JavaScript、c#和其他语言的70多个不同框架。Coverity还支持与AWS服务(EC2, S3, DynamoDB, IAM)和谷歌云存储API (GCP)交互的云本地JavaScript应用程序的主要云提供商API框架的安全建模。
语言FrameworkFrameworkFrameworkFrameworkJavaAndroid SDKGWTVert.xJSP and JSP Standard Tag Library(JSTL)JavaApache ShiroHibernateJAX RSReactiveX (RxJava, Reactor)JavaAxisiBatisJAX WSEnterprise Java Beans (EJBs)JavaDWRJava FrameworksJEEJava Persistence API (JPA)JavaRestletSpring BootJSF/FaceletsSpring FrameworkJavaStrutsTerasolunaTilesJavax.websocketJavaWS XML-RPCC#ASP.NET Web FormsIdentity ServerMassTransitASP.NET Core MVC/ASP.NET MVCC#ASP.NET ASMX Web ServicesRazor templatesWCF ServicesASP.NET Core MVC/ASP.NET MVCJS/TS:Client-sideAngularApache CordovaBootstrapHTML5 DOM APIs/AjaxJS/TS:Client-sideAngular JSBackboneEmberReact/ PreactJS/TS:Client-sidejQueryMithrilSocket.IOSwigJS/TS:Client-sideVueJS/TS:Server-sideExpressFastifyHapiAngular server-side rendering (Express and Hapi engines)JS/TS:Server-sideKoaMean.ioNodeReact server-side rendering (Next.js)JS/TS:Server-sidePassportRestifySocket.IOSAP XS Classic and AdvancedJS/TS:Server-sideVue server-side renderingJS/TS:Template enginesConsolidatedoT.jsEJSHandlebarsJS/TS:Template enginesHoganJadekoa-viewsLodash (templating)JS/TS:Template enginesMarkoMustacheNunjucksPugJS/TS:Template enginesSwigTwigVisionUnderscore (templating)JS/TS:Major librariesAxiosRequestSequelizeGoogle Cloud APIs (Storage)JS/TS:Major librariesUnderscore / LodashSwashbuckleSqlxMongoose / MongoDBGOEchoPHPSymfonyPythonFlaskDjangoRubyRuby on Rails

3.3 支持的平台

主机操作系统主机操作系统和/或内核版本AIXv6.1 适用于 PowerPC 处理器AIXv7.1 适用于 PowerPC 处理器FreeBSDv8.4(32 位)on i386 (x86) 或 v8.4(64 位)on amd64 (x86_64)FreeBSDv11.1(32 位)on i386 (x86) 或 v11.1(64 位)on amd64 (x86_64)FreeBSDv11.2(32 位)on i386 (x86) 或 v11.2(64 位)on amd64 (x86_64)FreeBSDv12.0(32 位)on i386 (x86) 或 v12.0(64 位)on amd64 (x86_64)LinuxLinux Kernel v2.6.32+(32 位)on x86 和 glibc 2.12-2.27(32 位)on x86LinuxLinux Kernel v2.6.32+(64 位)on x86_64 和 glibc 2.12-2.27(64 位)on x86_64macOSv10.12macOSv10.13macOSv10.14NetBSDv6.0(32 位)on x86 或 v6.0(64 位)on x86_64NetBSDv6.1(32 位)on x86 或 v6.1(64 位)on x86_64NetBSDv7.0(32 位)on x86 或 v7.0(64 位)on x86_64NetBSDv7.1(32 位)on x86 或 v7.1(64 位)on x86_64NetBSDv7.2(32 位)on x86 或 v7.2(64 位)on x86_64NetBSDv8.0(32 位)on x86 或 v8.0(64 位)on x86_64Solarisv10和 v11 适用于(64 位)x86_64 处理器Solarisv10 和 v11 适用于(64 位)SPARC 处理器WindowsWindows 32 位工作站发行版、Windows 7 及更高版本(Windows 8.0 除外)WindowsWindows 32 位服务器发行版、Windows Server 2008 及以上版本WindowsWindows 64 位工作站发行版、Windows 7 及更高版本(Windows 8.0 除外)WindowsWindows 64 位服务器发行版、Windows Server 2008 及以上版本

3.4 支持的编译器

优点:支持编译兼容性
CompilerCompilerCompilerCompilerCompilerAnalog Devices BlackfinARM C/C++ClangFreescale CodeWarriorHI-TECH PICCSynopsys MetaWare C and C++Borland C++Cosmic CAnalog Devices SHARCIAR C/C++Analog Devices TigerSHARCCEVA-XC4500IBM AIXGreen Hills C/C++/EC++IBM XLCTasking for ARM Cortex and TriCoreJDK for Mac OS XKeil compilersMarvell MSAMPLAB XC8Nvidia CUDA Compiler (NVCC)OpenJDKQNX C/C++Renesas C/C++SNC C/C++STMicroelectronics GNU C/C++SNC GNU C/C++Intel C++SONY PS4 SDKSun/Oracle JDKSTMicroelectronics ST Micro C/C++Sun (Oracle) CCGNU GCC/G++TI Code ComposerVisual StudioWind River C/C++

3.5 支持的业界标准

通过广泛的安全、质量、数据保护和安全标准全面跟踪和管理合规性,轻松按类别筛选已识别的问题,查看趋势报告,根据严重程度确定漏洞修复优先级,管理团队和项目的政策符合性。

  • OWASP Top 10:了解 Coverity 如何支持 OWASP Top 10 实现 Web 应用安全。
  • OWASP Mobile Top 10:了解 Coverity 如何支持 OWASP Mobile Top 10。
  • CWE Top 25:了解 Coverity 如何覆盖 25 个最关键的软件漏洞。
  • PCI DSS合规性:遵守必要的信息安全标准以保持合规性。
  • CERT C/C++/Java:遵循开发安全、可靠和稳妥系统的规则。
  • MISRA C/C++:解决编码标准问题并强制执行 MISRA C 和 MISRA C++ 规则。
  • AUTOSAR:确保采用 C++14 编写软件的安全性、可靠性和稳妥性。
  • DISA STIG安全指南符合性:确保美国国防部信息系统的安全性、可靠性和稳妥性。
  • ISO/IEC TS 17961:了解构建以 C 语言编写的安全应用程序的最佳实践。
  • ISO 26262:符合 ISO 26262 软件测试和应用程序安全要求。

3.6 可扩展检测能力

Coverity Extend是一个易于使用的软件开发工具包(SDK),它允许开发人员检测独特的缺陷类型。SDK是一个用于编写程序分析器或检查器的框架,用于识别自定义的或特定于领域的缺陷。CodeXM是一种特定于领域的函数式编程语言,它使开发人员能够轻松地开发自己的自定义检查器。这些定制的检查器支持符合公司安全需求和行业标准或指导方针

标签: 安全 coverity

本文转载自: https://blog.csdn.net/baidu_31295661/article/details/122367838
版权归原作者 bulabula2022 所有, 如有侵权,请联系我们删除。

“Coverity 代码静态安全扫描工具 : 认识Coverity”的评论:

还没有评论