Checkmarx是一家以色列高科技软件公司,是世界上著名的代码安全扫描软件Checkmarx CxSAST的生产商,拥有应用安全测试的业内前沿解决方案-CxSAST、CxOSA、CxIAST。分别对应的SAST、SCA和IAST三类应用安全测试类型工具。
Checkmarx CxSAST主要功能是查找安全漏洞、质量缺陷、逻辑问题和后门代码。是一个独特的源代码分析解决方案,该工具可用于识别、跟踪和修复源代码中技术上和逻辑上的缺陷,比如软件安全漏洞、质量缺陷问题和业务逻辑问题等。
Checkmarx使用 .net开发,必须安装在Windows上,它的规则也是类似.net语言的语法。其安装通常使用sql server数据库。
Checkmarx:订阅式和永久式。订阅式每年付费、永久式一次性付费。订阅式缺点是如果不续费,产品无法继续使用。订阅式每年的价格大约在50万人民币左右。还有一种方式按照用户数进行收费,不过用户可以同时登入。
Checkmarx提供了一个针对静态代码安全审计的解决方案,帮助企业在软件开发过程中查找、识别、追踪绝大部分主流编码中的技术漏洞和逻辑漏洞,帮助企业以低成本控制应用程序安全风险。CxSAST无需搭建软件项目源代码的构建环境即可对代码进行数据流分析。通过与各种SDLC组件的紧密集成,CxSAST可实现分析过程的完全自动化,并为审计员和开发人员提供对结果和补救建议的即时访问。
优势:
劣势:
支持的24种开发语言:
Java、JSP、JS、SQL、VB.NET、H5、Kotlin、Ruby、ASP.net、TypeScript、Scala、ASP、C++、VB、PHP、Apex(AppExchange platform)、Stroooy、C#、ES5/ES6、Python、Go、visualForce、Swift、C
支持产生检测报告格式:
支持PDF、Excel、RTF、CSV和XML形式。
关于自定义规则说明:
Checkmarx把词法分析、语法分析的结果保存在数据库中,用户可以基于开放式查询语言(其内置查询语言CxQL允许对查询进行添加、修改和分组)编写查询语句,也就是通过类似SQL语句编写,完成自定义规则。一般用户是很难添加自己的定制查询语句,也很难使用自己定制的语句发现深层次的安全漏洞。
对编译型语言是针对源代码本身进行检测的解释:
Checkmarx CxEnterprise通过自行研发的综合词法分析、语法分析等分析技术,自动对软件源代码分析,并直接建立了代码元素及代码元素之间关系的逻辑图。然后Checkmarx CxEnterprise对这个内部代码图进行查询。
其缺陷模式匹配原理:
Checkmarx CxEnterprise包含针对所有编程语言已知数百个安全漏洞和质量缺陷问题预先设定好的查询(query)列表。可以查询全面而又广泛的代码安全和质量缺陷,同时使用Checkmarx CxEnterprise CxAudit 审计工具,您可以根据您自己的软件安全、质量保证和业务逻辑需要配置并自定义的查询(Query),以满足公司或者个人特定的代码安全策略及代码安全基线标准要求。
checkmarks的缺陷规则就是一个一个的查询,这个查询定义了如何从数据流网中找到我们关心的数据流。
checkmarks内置了100多个函数,客户可以利用这种函数找到关心的数据流的起点,终点。当然也可以定义净化点,比如设置某个API调用作为一个净化点,就不会报出经过该净化点的安全漏洞。
Checkmarx CxSuite插件组成:
CxManager - 直观的源代码安全扫描结果管理。
CxDeveloper –扫描源代码,定位安全缺陷。
CxViewer - 审查代码扫描结果以便于安全缺陷修复。
CxConsole- 命令行接口实现团队项目集中扫描和自动化。
CxAudit - 调查或者研究源代码,分析技术和逻辑安全问题,定制代码安全查询规则。CxAudit是Checkmarx产品套件CxSuite的一部分。该产品的设计旨在帮助安全风险管理人员编写具体的查询程序来加强公司的最佳实践和遵循标准安全规范,实现和制定公司安全策略,然后将其分配给开发团队进行统一的安全扫描。
支持检测的安全漏洞主要包括:
SQL注入、跨站脚本、代码注入、缓存溢出、参数篡改、跨站请求伪造、HTTP响应拆分、日志伪造、拒绝服务、会话固定、未处理的异常、未释放的资源、未经验证的输入、危险的文件、硬编码密码等等。
Checkmarx的深层次不足:
(结束)