分享
基于抽象语法树裁剪的智能合约漏洞检测研究_刘泽润.pdf
下载文档

ID:2373788

大小:1.66MB

页数:6页

格式:PDF

时间:2023-05-10

收藏 分享赚钱
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
基于 抽象 语法 裁剪 智能 合约 漏洞 检测 研究 刘泽润
h t t p:/ww w.j s j k x.c o mD O I:1 0.1 1 8 9 6/j s j k x.2 2 0 3 0 0 0 6 3到稿日期:2 0 2 2-0 3-0 7 返修日期:2 0 2 2-0 8-2 3基金项目:国家自然科学基金(6 1 4 7 2 1 3 9);产学研项目:区块链关键技术研究(H 3 0 0-4 1 8 1 9)T h i sw o r kw a s s u p p o r t e db y t h eN a t i o n a lN a t u r a l S c i e n c eF o u n d a t i o no fC h i n a(6 1 4 7 2 1 3 9)a n d I n d u s t r yU n i v e r s i t yR e s e a r c hP r o j e c t:R e s e a r c ho nK e yT e c h n o l o g i e so fB l o c k c h a i n(H 3 0 0-4 1 8 1 9).通信作者:郑红(z h e n g h o n g e c u s t.e d u.c n)基于抽象语法树裁剪的智能合约漏洞检测研究刘泽润郑 红邱俊杰华东理工大学信息科学与工程学院 上海2 0 0 2 3 7(z e r u n l i u q q.c o m)摘 要 随着区块链技术的发展,智能合约在不同领域都得到了广泛的应用,以太坊成为了最大的智能合约平台。同时,频发的智能合约漏洞造成了巨大的经济损失,智能合约漏洞检测成为了研究焦点,而以往的智能合约漏洞检测工具不能很好地利用合约源代码的语法信息。针对智能合约的可重入漏洞,首先,提出了一种基于深度学习的漏洞检测工具 S C D e f e n d e r,以智能合约S o l i d i t y源代码的抽象语法树形式作为研究对象,使用基于树的卷积神经网络进行漏洞检测。其次,提出了抽象语法树裁剪算法以去除与漏洞检测任务无关的节点,保留抽象语法树中的关键信息。S C D e f e n d e r漏洞检测的精确度、召回率和F1值分别为8 1.4 3%,9 2.1 2%和8 6.4 5%,具有较好的漏洞检测效果。消融实验表明,抽象语法树裁剪算法对S C D e f e n d e r的漏洞检测任务具有重大贡献。关键词:区块链;智能合约;漏洞检测;抽象语法树;深度学习中图法分类号 T P 3 0 9 S m a r tC o n t r a c tV u l n e r a b i l i t yD e t e c t i o nB a s e do nA b s t r a c t S y n t a xT r e eP r u n i n gL I UZ e r u n,Z HE N G H o n ga n dQ I UJ u n j i eS c h o o l o f I n f o r m a t i o nS c i e n c ea n dE n g i n e e r i n g,E a s tC h i n aU n i v e r s i t yo fS c i e n c ea n dT e c h n o l o g y,S h a n g h a i 2 0 0 2 3 7,C h i n a A b s t r a c t W i t ht h ed e v e l o p m e n t o fb l o c k c h a i nt e c h n o l o g y,s m a r t c o n t r a c t sh a v eb e e nw i d e l yu s e d i nv a r i o u s f i e l d s,a n dE t h e r e u mh a sb e c o m e t h e l a r g e s t s m a r tc o n t r a c tp l a t f o r m.A tt h es a m et i m e,t h ef r e q u e n ts m a r tc o n t r a c tv u l n e r a b i l i t i e sh a v ec a u s e dh u g ee c o n o m i c l o s s e s.T h ev u l n e r a b i l i t yd e t e c t i o no f s m a r t c o n t r a c t h a sb e c o m e t h e f o c u so f r e s e a r c h,w h i l e t h ep r e v i o u s s m a r t c o n t r a c tv u l n e r a b i l i t yd e t e c t i o n t o o l s c a nn o tm a k eg o o du s e o f t h e s y n t a x i n f o r m a t i o no f t h e c o n t r a c t s o u r c e c o d e.A i m i n ga t t h e r e-e n t r a n-c yv u l n e r a b i l i t yo f s m a r t c o n t r a c t,f i r s t l y,t h i sp a p e rp r o p o s e sS C D e f e n d e r,av u l n e r a b i l i t yd e t e c t i o nt o o lb a s e do nd e e pl e a r n i n g.T a k i n gt h ea b s t r a c t s y n t a xt r e e f o r mo f t h eS o l i d i t ys o u r c ec o d eo f s m a r t c o n t r a c t a s t h er e s e a r c ho b j e c t,t h e t r e e-b a s e dc o n v o l u-t i o n a l n e u r a ln e t w o r k s i su s e df o rv u l n e r a b i l i t yd e t e c t i o n.S e c o n d l y,a na b s t r a c ts y n t a xt r e ep r u n i n ga l g o r i t h mi sp r o p o s e dt or e-m o v e t h en o d e s i r r e l e v a n t t o t h ev u l n e r a b i l i t yd e t e c t i o nt a s ka n dr e t a i nt h ek e y i n f o r m a t i o n i nt h ea b s t r a c t s y n t a xt r e e.T h ea c c u-r a c y,r e c a l l r a t ea n dF1v a l u eo fS C D e f e n d e rv u l n e r a b i l i t yd e t e c t i o ni s8 1.4 3%,9 2.1 2%a n d8 6.4 5%r e s p e c t i v e l y,w h i c hh a sag o o dv u l n e r a b i l i t yd e t e c t i o ne f f e c t.A b l a t i o ne x p e r i m e n t ss h o wt h a t t h ea b s t r a c ts y n t a xt r e ep r u n i n ga l g o r i t h mh a sa ni m p o r t a n tc o n t r i b u t i o nt ot h ev u l n e r a b i l i t yd e t e c t i o nt a s ko fS C D e f e n d e r.K e y w o r d s B l o c k c h a i n,S m a r t c o n t r a c t,V u l n e r a b i l i t yd e t e c t i o n,A b s t r a c t s y n t a xt r e e,D e e p l e a r n i n g 1 引言智能合约(S m a r tC o n t r a c t)1是2 0世纪9 0年代由计算机学家N i c kS z a b o提出的构想。但直到近年来,区块链技术2的诞生为其提供了一个去中心化平台,智能合约才得到了广泛应用。目前,智能合约体现为一段具有状态、由事件驱动、运行在区块链系统上的程序,用户人数最多的智能合约平台为以太坊(E t h e r e u m)3。与此同时,针对智能合约发起的攻击也越来越多。智能合约作为一段自动执行的代码,一经发布就不可修改,且智能合约总是管理着大量的数字代币资产,攻击 者对 其 进行 攻击 可以 获 得 巨 大 的 收 益。2 0 1 6年,攻击者利用T h eD AO众筹合约的可重入漏洞对其发起攻击,导致了约6 0 0 0万美元的损失4-6。2 0 1 7年,以太坊P a r i t y电子钱包因多重签名漏洞而损失约3 0 0 0万美元7。2 0 1 8年,美链公司发行的B E C代币合约出现整数溢出漏洞,导致其市值几乎归零8。由于智能合约具有独特的运行环境、程序特性和生命周期,现有的 软件 缺陷 检测 工 具 难 以 直 接 应 用 于 智 能 合 约。针对智能合约的漏洞检测,越来越多的检测工具被提出。例如,K E VMf r a m e w o r k9利用K框架对E VM(E t h e r e u m V i r-t u a lM a c h i n e)字节码进行形式化定义,采用形式化验证的方法进行程序分析,但其自动化程度不高,需要研究人员花费大量精力进 行 推 理 和 建 模 工 作。M a i a n1 0采 用 符 号 执 行的方法,通过探索 合 约的 调用 路 径进 行漏 洞检 测,但 其待探索的路 径 数 量 随 分 支 状 态 的 增 加 呈 指 数 增 长。C o n-t r a c t F u z-z e r1 1采用模糊测试的方法,通过生成大量的测试用例来检测智能合约在运行时是否出现异常,但其会产生大量无 用 的 测 试 用 例,检 测 所 花 费 的 时 间 也 较 长。C o n-F u z z i u s1 2采用混合 模 糊 测 试 的 方 法,将 符 号 执 行 和 模 糊测试进行结合,以改 善深 层 错误 的检 测效 果。可见,当 前智能合约的漏洞检测工具主要存在自动化程度较低、效率较低、检测时间较长等缺点。近年来,随着深度学习领域的快速发展,使用深度学习技术对程序代码进行处理成为了研究热点。基于深度学习的代码漏洞检测技术可以弥补上述自动化程度低、效率低、检测时间长等不足。为了更好地利用智能合约源代码的语法特征,本文提出了一个基于深度学习技术的智能合约漏洞检测工具 S C-D e f e n d e r,它将合约代码的抽象语法树形式作为研究对象,并针对智能合约可重入漏洞的特性进行裁剪优化,通过词嵌入方法将抽象语法树节点转化为向量,使用基于树的卷积神经网络(T r e e-b a s e dC o n v o l u t i o n a

此文档下载收益归作者所有

下载文档
你可能关注的文档
收起
展开