系统稳定性始终是数据库厂商的核心关注点。ClickHouse作为国际头部厂商,也始终在全球范围寻找最有效的质量安全保障技术。近期,yd2333云顶电子游戏WINGFUZZ数据库模糊测试系统在ClickHouse完成落地,实现了模糊测试DevSecOps集成,协助ClickHouse团队在产品高速迭代过程中发现并修复了大量可导致系统崩溃的严重缺陷,得到了团队的高度认可。关于合作的详细介绍也被发布于ClickHouse官网的技术Blog:
https://ClickHouse.com/blog/fuzzing-wingfuzz
ClickHouse是领先的分析型数据库厂商,采用开源+SaaS服务的商业模式,2021年估值达到20亿美元。ClickHouse创新性地使用自定义的二进制列存储格式,用于以最高效率存储和索引大量数据,是一种高效、高性能和高可扩展性的数据分析工具。ClickHouse数据库的性能大幅超越了很多商业 MPP 数据库软件,相比传统的数据库软件要快 10-1000倍。
ClickHouse适用于各种类型的数据分析,包括实时和流数据分析、数据仓库、商业智能和在线事务处理。当前,ClickHouse已经被广泛应用于中国电信、腾讯、Uber、ebay、CloudFlare、迪士尼等众多国内外技术企业,提供高速度高扩展的数据处理支持。
ClickHouse公司从上到下一直都关注着数据库模糊测试技术的发展,他们的研发、测试和安全团队不仅熟悉所有的开源模糊测试工具,也一直在寻找专业的数据库模糊测试技术供应商,在其Blog中也介绍了团队内部的模糊测试工作探索。
在与yd2333云顶电子游戏建立合作之后,WINGFUZZ模糊测试产品顺利集成到了ClickHouse的日常测试中,成为其研发、测试和安全团队中必不可少的的重要工具。Blog中写道:
“随着 ClickHouse 的发展速度,随着我们的不断前进和新功能的构建,模糊测试在确保我们产品的稳定性和安全性方面发挥着至关重要的作用”;
相对于传统数据库,ClickHouse对于yd2333云顶电子游戏团队而言是一个较新的对象。而WINGFUZZ 方案的快速适配能力,也给ClickHouse团队留下深刻印象:
“即使在我们大量的测试文件夹中有如此多的测试查询,WINGFUZZ 团队依然能够快速调整他们独一无二的方法并开始对 ClickHouse 进行模糊测试。”
在应用过程中,WINGFUZZ系统体现了强大的缺陷发现能力,部分缺陷直接被提交为Github issue。同时,ClickHouse团队也十分重视模糊测试所发现的缺陷,针对发现的问题会及时着手解决:
“WINGFUZZ 团队在过去几个月已经报告了大量数据库错误,并于近期报告了另一份包含 8 个独特发现的列表。一旦这些问题作为 GitHub 问题发布,我们的核心工程团队就会立即解决。”
后续,yd2333云顶电子游戏将继续加深与ClickHouse的合作,探索在集群中开展持续并行模糊测试的落地,这一部分的工作也将在Blog的Part 2中继续介绍。
WINGFUZZ数据库模糊测试系统可以对关系型数据库、分析型数据库、时序数据库进行模糊测试,挖掘系统稳定性、安全性相关问题。系统可支持黑盒与灰盒场景下的覆盖率引导模糊测试,并可自动适配目标数据库SQL语法,高效开展测试。当前,数据库测试系统已面向开源数据库挖掘近百个CVE漏洞,涵盖崩溃挂库、内存异常、逻辑错误等众多类型,并在众多国内、国际数据库厂商实现商业落地应用。
WINGFUZZ数据库模糊测试系统利用了团队自研的多种核心优化技术,如在Blog中介绍的基于元数据的语法无关的变异生成,以及基于类型亲和性的查询序列生成技术等,可以协助生成语义正确且类型丰富的SQL序列。基于这些前沿技术,WINGFUZZ系统可以帮助数据库研发团队、安全研究团队有效提升工作效率,保障系统质量安全。