Appearance
自动化代码安全和规范性审计
主动发现代码的存在规范性、可维护性和安全问题,提出改进建议
1 功能
目前支持13种语言检测:C、C++、Java、C#、Lua、PHP、Python、JavaScript、Golang、Kotlin、ObjectiveC、Swift、Shell
目前已支持的功能:
- 支持代码安全扫描:
- 安全漏洞检测
- 安全缺陷检测
- 支持代码质量扫描:
- 代码规范检测
- 圈复杂度
- 代码重复检测
- 支持组件安全扫描:
- 检测存在漏洞的第三方开源组件依赖,提供相应的修复版本、CVE关联等
- 支持语言:Java、JavaScript、Go、Python、PHP
- 支持预警通知功能:
- 设置告警规则触发条件
- 邮件通知
- IM工具通知(钉钉、飞书等)
2 特性
- 安全性
- 本地部署,所有代码文件、数据文件均在特定网络内部离线完成系统
- 系统不储存源码,扫描结果只保留漏洞片段
- 专业性
- 使用多种扫描器,覆盖常见编程语言
- 代码安全检查类别对齐主流CWE、OWASP安全标准,逐步关联公司制定的安全编程规范
- 代码规范检查类别对齐业界Google、阿里规范标准
- 支持污点分析能力,支持自定义规则、支持离线扫描
- 易用性
- 支持多种接入方式:本地扫描、Git仓库扫描、离线扫描、CI/CD流水线、vscode插件
- 用户多场景适配,可选择合适的接入方式
- 公司业务需求实时支撑
- 可扩展性
- 提供灵活配置功能,安全规则、通用规则支持灵活增删查改
- 具备多节点分布式部署能力
- 后端扫描引擎支持灵活增删和自定义功能实现
- 配合公司SDL方其他业务平台
3 优势对比
- 业界其他竞品:
商用:Sonarqube 专业版、Coverity、Fortify、Xcheck、CodeCheck
开源:Sonarqube Community、CodeQL、Infer、PMD、其他独立扫描工具等
- 竞品分析
| 自研代码审计工具 | Sonarqube Community | CodeQL | Coverity | Xcheck | CodeCheck | |
|---|---|---|---|---|---|---|
| 授权机制 | 自研 | 开源 | 开源 | 商用 | 商用 | 商用 |
| 支持语言种类 | 12 | 17(开源版本不支持C\C++) | 8 | 22 | 6 | 10 |
| 安全漏洞 | 漏洞规则较多支持注入类检查CWE和OWASP关联程度稍弱 | 漏洞规则较少,定义过于简单开源版不支持注入类CWE和OWASP紧密关联 | 业界评价高,主打漏洞扫描以及漏洞挖掘 | 侧重于代码缺陷类 | ✓ | ✓ |
| 代码缺陷 | ✓ | ✓ | 待进一步分析 | ✓ | ✓ | ✓ |
| 代码风格 | 关联业界标准规范 | 未关联业界标准规范 | ✗ | ✓ | ✗ | ✓ |
| 圈复杂度 | ✓ | ✓ | ✗ | ✓ | ✗ | ✓ |
| 重复代码 | ✓ | ✓ | ✗ | ✓ | ✗ | ✓ |
| 组件安全检查 | ✓ | ✗ | ✗ | ✗ | ✗ | ✗ |
| IDE插件 | ✓ | ✓ | ✗ | ✓ | ✗ | ✓ |