近期ChatGPT爆火,其对传统文字工作的效率提高及总结能力让使用者惊艳。紧随其后CodeGPT这样基于GPT的插件出现,也充分体现了其对代码编写效率的提高。而最新GPT-4的发布,是否可以应用到对区块链、Solidity智能合约的审计中呢?
基于这样的疑问,我们进行了多种可行性测试。
测试环境及测试方法
测试使用的对比模型对象:GPT-3.5(Web),GPT-3.5-turbo-0301,GPT-4(Web)。
代码片段使用Prompt:HelpmediscovervulnerabilitiesinthisSoliditysmartcontract.
漏洞代码片段的检测对比
在此部分,我们分三次测试,使用历史上常见的漏洞代码作为测试一和测试二的用例,来验证其对基础漏洞的检测能力,测试三中使用中等难度的漏洞代码作为测试用例。
测试一
用例:《智能合约安全审计入门篇——Phishingwithtx.origin》
彭博社:8月加密市场因DeFi火爆增加超500种新代币:由于DeFi热潮涌动,2020年8月加密货币市场已经增加超500种新代币,或导致加密泡沫再次变得越来越大。在投机欲望激增的推动下,猪排(Porkchop)、Davecoin、意面(PASTA)、寿司(Sushiswap)Newtonium等新代币纷纷登场,许多项目没有实际效用,但投资者已经投入数十亿美元。根据DeFi市场数据提供商DeFi Pulse数据显示,截至9月2日,用户向所有DeFi应用程序投入的资金超过94.6亿美元。(彭博社)[2020/9/2]
漏洞代码:
对GPT进行提问:
GPT-3.5(Web)answer
GPT-3.5-turbo-0301answer
AMD季报亮眼 GPU随区块链火爆而热销:美国半导体公司AMD季度财报非常亮眼,业界的焦点从芯片销售转移到了区块链技术提供商的身份上面。区块链的应用范围已经不仅限于虚拟货币,随时有望爆发。市面上发行流通的虚拟货币大多都需要“挖矿”,即虚拟货币矿工利用运行速度极快的GPU解决区块链中复杂的数学难题,然后获得新的数字货币作为奖励。作为供应商,GPU价格上涨势必将让AMD和英伟达获得巨大的收益。分析师预计,随着全球越来越多的公司计划进军比特币市场或者区块链,GPU销售将有望进一步增长。[2018/2/2]
GPT-4(Web)answer
可以看到结果:3个测试版本都发现了关键的tx.origin相关问题。
测试二
用例:《智能合约安全审计入门篇——溢出漏洞》
漏洞代码:
比特币火爆:Coinbase去年营收超10亿美元:随着加密货币的价格暴涨,美国比特币交易平台Coinbase也实现了快速发展,并因此遭遇了硅谷创业公司难得一遇的烦恼:有太多投资者想要入股该公司。知情人士透露,这家成立6年的公司去年的营收突破10亿美元大关,主要是因为人们对比特币和其他虚拟货币的兴趣激增所致。该公司去年8月估值为16亿美元,现在至少翻了一番。知情人士表示,Coinbase截至去年9月30日仅能实现约6亿美元的年营收,但感恩节和圣诞节期间的比特币交易将其全年营收提升到10亿美元以上。[2018/1/23]
对GPT进行提问:
GPT-3.5(Web)answer
GPT-3.5-turbo-0301answer
GPT-4(Web)answer
区块链概念行情火爆 区块链概念股掀涨停潮:受外围市场区块链概念股持续大热影响,A股市场上区块链概念近日表现抢眼。区块链指数昨日放量大涨5.88%,创该指数近一年来最大单日涨幅,同时成交量创历史新高。区块链概念股全线飘红,18只个股涨幅在5%以上,其中10只个股相继涨,包括广电运通、远光软件、四方精创、易见股份、新晨科技、高伟达、飞天诚信、安妮股份等。从资金流向看,主力资金抢筹迹象较为明显,昨日区块链概念股整体主力资金净流入16.03亿元,7只个股主力资金净流入逾亿元,分别是利欧股份、恒生电子、广电运通、游久游戏、浙大网新、飞天诚信、赢时胜。其中,利欧股份主力资金净流入1.78亿元,位居首位,该股昨日午后被拉升至涨停板,最新股价逼近60日线。[2018/1/11]
可以看到GPT-3.5(Web)、GPT-3.5-turbo-0301都发现了关键的Overflow漏洞,出乎意料的是GPT-4(Web)居然没有相关提示。
测试三
用例:《空手套白狼——Popsicle被黑分析》
漏洞代码:
比特币期货上市后反应火爆 还有很多投资者难以进入市场:全球最受欢迎的加密货币的期货在CBOE首次交易中上涨了26%,引发了两次暂停交易,旨在平息市场。DV Chain首席执行官Garrett See表示,一些想要交易比特币期货的人很难进入这个市场,因为并不是所有的经理人都在最初支持它。[2017/12/12]
对GPT进行提问:
GPT-3.5(Web)answer
GPT-3.5-turbo-0301answer
GPT-4(Web)answer
对比结果,我们可以看到3个版本都未发现关键的漏洞点。
代码片段的检测总结
可以看到GPT模型对简单的漏洞代码块的检测能力还是不错的,但是对稍微复杂一点的漏洞代码暂时还无法检测,并且在测试中可以看到GPT-4(Web)的整体上下文可读性很高,输出格式清晰、舒服,但是其对代码的审计能力暂时没有远超GPT-3.5(Web)、GPT-3.5-turbo-0301,甚至在部分测试中由于Transformer输出存在一定的不确定性反而导致GPT-4(Web)遗漏了一些关键问题。
对比已知漏洞的全量合约检测
为了更加契合普通项目方在合约审计中的简单操作需求,这里我们提高些难度,针对代码量大的合约进行全量导入上下文,让GPT-4模型进行审计。
用例:《千万美元被盗——DeFi平台MonoXFinance被黑分析》
整份合约分批输入,在对话最后提出检测漏洞请求
这里使用Prompt:
Hereisasoliditysmartcontract
Contractcode
Theaboveisthecompletecode,helpmediscovervulnerabilitiesinthissmartcontract.
可以看到,GPT-4虽然在OpenAI公布的信息中其单次输入字符总数已经是当前最高,但还是会由于文本超长导致在最后提问时GPT会上下文缺失而只识别到部分内容,所以这样对大型合约而言就无法进行完整的上下文审计。
拆封整份合约,分批输入分批检测
这里使用Prompt:
对话1:
Helpmediscovervulnerabilitiesinthissoliditysmartcontract.
分段内容1
对话2:
Helpmediscovervulnerabilitiesinthissoliditysmartcontract.
分段内容2
对话3:
Helpmediscovervulnerabilitiesinthissoliditysmartcontract.
分段内容3
总结
GPT当前是否适合合约分析
优点
GPT对合约代码中基础的简单的漏洞具备部分检测能力,并且在检测出漏洞后会以很高的可读性来解释漏洞问题,这样的特性比较适合为初级合约审计工作者前期训练提供快速指导和简单答疑。
存在的问题
a.每次生成内容波动
GPT对每次对话的输出存在一定的波动,可以通过API接口参数进行调整,但是依旧不是恒定的输出,虽然这样的波动性对语言对话来说是好的方式,大大提高了对话给人的真实感。但是这对代码分析类的工作来说是一个不好的问题。因为为了覆盖AI可能告知我的多种漏洞回答,我需要多次请求同一问题并进行对比筛选,这无形中又提高了工作量,违背了AI辅助人类提高效率的基准目标。
例如这里再次运行"漏洞代码片段的检测对比测试二:
可以看到其输出结果比之前测试又多了一些额外内容。
b.漏洞分析能力依旧有很大的提高空间
对稍微复杂的漏洞进行检测即会发现当前的训练模型不能正确的分析并找到相关关键漏洞点。
GPT辅助合约审计的可行性和潜力分析
虽然当前来看GPT对合约漏洞的分析及挖掘能力还处于相对较弱的状态,但它对普通漏洞小代码块的分析并生成报告文本的能力依旧让使用者兴奋,在可预见的未来几年伴随这GPT及其他AI模型的训练开发,相信对大型复杂合约的更快速,更智能,更全面的辅助审计一定会实现。当科技发展可指数级提高人工的效率时就会发生质变,我们非常期待AI对区块链安全的助力,我们会持续关注新AI产品对区块链安全的影响。最后可见的将来我们必将与AI在一定程度上进行融合,愿AI和区块链与你同在。
标签:GPT区块链APIGPT价格GPT币区块链工程专业学什么区块链存证怎么弄区块链技术发展现状和趋势API价格API币
近期FCoin暴雷,一石激起千层浪。FCoin事件涉及金额巨大、直接/间接受损人数众多,FCoin知名度极高,以及由于FCoin是直接关闭,没有缓冲余地,所以FCoin事件造成的影响极大.
1900/1/1 0:00:00网易恶意裁员事件一大早占据各大平台头条,随后网易发出“道歉信”,再次引爆舆论,质疑其道歉毫无诚意。事件起因是网易被裁员工对网易的一篇控诉文章,详细描述了网易的诸多恶行,短时间内形成刷屏效应.
1900/1/1 0:00:00ETF,全称交易型开放式指数基金,对于许多投资者来说一定并不陌生。在传统金融市场,ETF作为一种低价透明的投资工具,随着时间的沉淀已被大量的用户所接受.
1900/1/1 0:00:00一、去中心化交易协议 简介:通过链上或链下撮合引擎,撮合买家和卖家进行数字货币交易,去中心化撮合交易引擎,就是服务于去中心化交易所的撮合交易程序.
1900/1/1 0:00:00一位加密行业的首席执行官认为,比特币的价格将在某个时候创出历史新高,因为对比特币完全有利的环境会促使比特币的上涨.
1900/1/1 0:00:00文章作者:JustinPeyton主张内容主要突出了3个点,1)向人们和品牌宣传Web3和元界技术将为企业、营销以及人们、社区和世界提供的价值。2)突出可能推动规模和采用的用例.
1900/1/1 0:00:00