GitLab 13.3开始提供模糊测试,可发现Go和C/C++应用程序bug

程序代码托管平台GitLab发布最新13.3版本,这个版本的最大亮点在于使开发者能够在开发工作流程中,更简单地对软件进行安全性测试,不只导入覆盖率指引模糊测试(Coverage-Guided Fuzz Testing),还让用户按需执行动态应用程序安全性测试(Dynamic Application Security Testing,DAST),另外,在GitLab 13.3中,用户也能更全面监控Kubernetes Pod的状态,仪表板现在会呈现所有Pod原始健康状态。

GitLab 13.3是第一个导入模糊测试的版本,用户可以开始对Go和C/C++应用程序执行模糊测试,官方提到,模糊测试能够发现其他安全扫描程序,或是传统QA遗漏的安全性问题和bug,因为模糊测试使用应用程序相关的上下文信息,随机产生输入,借此尝试触发程序崩溃或是错误,让问题真正影响用户之前,可以先被发现并修复。

模糊测试新功能来自于GitLab近期收购的两间模糊测试公司Peach Tech和Fuzzit,而模糊测试的主要方法有两种,分别是覆盖率指引模糊测试,另一种则是行为模糊测试,GitLab 13.3加入的是覆盖率指引模糊测试,是利用应用程序的源码和测试版本,在程序执行过程或是动态地执行新测试,以观察应用程序各部分的表现,借此找出bug。

官方提到,过去模糊测试不只困难也很难获得有效的结果,但GitLab将Peach Tech和Fuzzit模糊测试技术,加入到现有的GitLab工作流程,可让用户方便地对Go和C/C++应用程序执行测试,尽早发现漏洞。

在这个版本,所有用户都可以免费使用静态应用程序安全性测试(Static Application Security Testing,SAST)功能,同时,ULTIMATE/GOLD等级的用户,现在可以按需执行DAST安全性测试。GitLab的DAST集成到了DevOps工作管线中,在特定步骤便会触发扫描,但官方提到,在没有程序代码变更或是创建整合请求的情况下,有时候用户也有对已部署应用程序执行DAST扫描的需求,因此现在不需要由程序代码更改等事件触发,用户就能够按需进行扫描,这版本GitLab UI提供扫描配置选项,在扫描时不会对程序性能或是安全性造成影响。

而在GitLab 13.3中,用户可以在Pod执行状况指标仪表板中,简单地查看Kubernetes Pod的状态,官方提到,无论用户使用托管的Prometheus执行实例,或是在自有的集群中执行Prometheus执行实例,只要连接到了GitLab,就能从内置仪表板查看CPU、内存和网络等重要指标。