- 简介智能合约存在各种安全问题,其中访问控制漏洞是尤为关键的。虽然现有研究已经提出了多种检测工具,但智能合约中访问控制漏洞的自动和适当修复仍然是一个挑战。与现有修复工具通常支持的漏洞类型(如重入)不同,这些漏洞通常可以通过基于模板的方法进行修复,访问控制的主要障碍在于在非访问控制相关源代码的长列表中识别适当的角色或权限,以生成适当的补丁代码,这需要人类级别的智能。 利用最近大型语言模型(LLMs)的进展,我们采用最先进的GPT-4模型,并使用一种名为ACFIX的新方法进行增强。关键洞见是,我们可以挖掘常见的访问控制实践,针对主要的代码功能类别进行分类,然后使用它们来指导LLMs修复具有类似功能的代码。为此,ACFIX包括离线和在线两个阶段。首先,在离线阶段,ACFIX从344,251个链上合约中挖掘常见的基于角色的访问控制(RBAC)实践的分类法,并将1,000个最常见的角色-权限对进行分类。其次,在在线阶段,ACFIX跟踪合约中的访问控制相关元素,并使用这些上下文信息以及一条思路链来指导LLMs识别主题合约的最适当的角色-权限对,并随后生成适当的补丁。然后,这个补丁将经过有效性和效果检查。为了评估ACFIX,我们建立了第一个由118个真实世界访问控制漏洞组成的基准数据集,我们的评估结果显示,ACFIX成功修复了94.92%的漏洞。这相比于基线GPT-4的52.54%表示了显著的改进。
- 图表
- 解决问题本文试图解决智能合约中的访问控制漏洞问题,提出一种自动修复访问控制漏洞的方法。
- 关键思路本文提出了一种基于GPT-4的自动修复访问控制漏洞的方法ACFIX,该方法通过离线和在线两个阶段,挖掘智能合约中常见的基于角色的访问控制实践,并使用这些实践来指导GPT-4模型修复漏洞。
- 其它亮点本文的亮点包括:提出了一种新的自动修复访问控制漏洞的方法ACFIX,建立了一个包含118个真实世界访问控制漏洞的基准数据集,评估表明ACFIX成功修复了94.92%的漏洞,明显优于基线模型GPT-4的52.54%修复率。
- 最近的相关研究包括:基于模板的漏洞修复方法,基于符号执行的漏洞检测方法,基于机器学习的漏洞检测和修复方法等。
沙发等你来抢
去评论
评论
沙发等你来抢