国际顶级学术会议ISSTA召开,中山大学与微众银行联合发表区块链最新研究成果

美国当地时间7月17日,软件工程领域顶级会议ISSTA 2023在西雅图正式召开。ISSTA (The 32nd ACM SIGSOFT International Symposium on Software Testing and Analysis )是软件测试与分析方面最著名的国际会议之一,也是中国计算机学会推荐的A类国际学术会议(CCF-A)。在本次会议中,中山大学软件工程学院与微众银行联合发表了区块链最新研究成果,该研究针对智能合约中的状态不一致所导致的逻辑漏洞,提出了一种新型模糊测试框架。

参与本次研究的成员包括中山大学博士生叶铭熙、硕士生吴东鹏,指导教师为中山大学教授郑子彬、副教授南雨宏以及微众银行区块链底层平台研发负责人李辉忠。该研究同时得到了国家重点研发计划、国家自然科学基金及微众学者计划等项目的支持。

其中,微众学者计划是由微众银行发起成立的高标准、高规格的创新研究项目,以金融业务实际需求及未来技术发展方向为依托,旨在通过与高校实干型优秀青年学者合作,储备学术界及企业科研力量,聚焦实际产业痛点问题,在真实商业场景中进行科研实践。郑子彬教授凭借在区块链领域的卓越研究及杰出贡献入选首批微众学者计划,承担区块链方向课题,基于FISCO BCOS开源区块链底层平台的智能合约场景,构建易于使用的智能合约一致性验证及高效的安全性验证平台。

研究介绍

近年来,区块链技术快速发展,智能合约作为一种新型基础软件被广泛应用在金融、艺术品以及游戏等领域。目前,每天有数万名用户使用智能合约,日均交易量可达50亿美元。

然而,区别于传统领域中的程序漏洞检测,智能合约中的漏洞通常是更难检测的逻辑错误及缺陷,且所导致的后果更加严重。在状态不一致漏洞中,攻击者通过操纵区块链上智能合约的程序状态,使得程序的执行结果与用户的预期结果产生不一致。通过利用这一类漏洞,攻击者可以抢跑或影响程序的执行流,从而影响程序的正常执行并从中获得不正当的收益。

现有状态不一致漏洞检测方案主要面临两个问题:(1)由于缺少准确的上下文信息导致的高误报率。由于无法准确地恢复智能合约运行过程中的上下文信息,静态分析方法可能引入无法执行的程序路径,导致误报;(2)由于缺少有效的测试准则导致的高漏报率。现有模糊测试方法需要依赖专家知识设计测试准则,高度依赖现有的攻击模式,导致无法识别新的攻击手段。

在这里插入图片描述

因此,中山大学软件工程学院与微众银行开展联合研究,提出了一种新型模糊测试框架IcyChecker,并以 “Detecting State Inconsistency Bugs in DApps via On-Chain Transaction Replay and Fuzzing” 为题在ISSTA 2023发表。

针对上述问题,IcyChecker首先通过重放历史数据,获取历史函数调用以及对应的细粒度上下文信息。随后,IcyChecker基于收集的历史信息进行模糊测试,生成新的函数调用序列触发程序漏洞。最后,IcyChecker通过差分分析,识别对等交易序列执行结果的不一致性,从而发现漏洞。

基于链上历史数据收集丰富的上下文信息,IcyChecker检测的准确率提高到80%以上。研究首次引入差分分析技术识别智能合约中的逻辑漏洞,实现了无需依赖专家知识的漏洞检测。

猜你喜欢

转载自blog.csdn.net/webankblockchain/article/details/132237620
今日推荐