GPT:OpenAI 推出“王炸”产品 GPT-4,能不能完整检测智能合约漏洞?

作者:Beosin

北京时间3月15日凌晨,人工智能初创公司OpenAI正式公布最新一代人工智能语言模型GPT-4。

OpenAI在当天的声明中称,GPT-4的诞生,是OpenAI在放大深度学习方面的最新里程碑。

那现在进化后的GPT-4,又会带给我们哪些惊喜?

进化后的GPT-4,到底有多「炸」?

根据OpenAI官方的介绍,GPT-4是一个超大的多模态模型,也就是说,它的输入可以是文字,还可以是图像。

其AI能力的恐怖之处体现在哪呢?比如下面这张照片。

你问它下图中手套掉下去会怎样?

它会回答:它会掉到木板上,并且球会被弹飞。

甚至只需要简单在纸上画一个网站的草稿图,他就可以识别该网站。

拍一张照片上传给GPT-4,它就可以立马生成网站的HTML代码!

可见,GPT-4比GPT-3.5,更可靠、更有创造力,能够处理更细微的指令。

除此之外,ChatGPT-4在内容准确性以及逻辑能力相比上一代也要提升不少,在统一律师考试中,GPT-4成绩超过90%其它人,而GPT-3.5的成绩只超过10%的人,GPP-4在SATMath获得700分,GPT-3.5的成绩为590分,提升了110分。在其它标准化考试中,GPT-4的成绩也都比GPT-3.5优秀不少。

在官方演示中,GPT-4几乎就只花了1-2秒的时间,识别了手绘网站图片,并根据要求实时生成了网页代码制作出了几乎与手绘版一样的网站。

除了普通图片,GPT-4还能处理更复杂的图像信息,包括表格、考试题目截图、论文截图、漫画等,例如根据专业论文直接给出论文摘要和要点。

这么强,是不是你也感觉快要失业了

GPT-4可对论文进行解读来源:OpenAI官网

用ChatGPT4审计智能合约会发生什么?

我们曾在去年12月发了一篇ChatGPT的研究文章,看看它审计智能合约会发生什么,扩展阅读:风靡全网的「最强AI」ChatGPT,能不能检测智能合约漏洞?

3月15日,Coinbase主管ConorGrogan在社交媒体发文称,他已在ChatGPT-4中插入了一个实时以太坊智能合约,结果AI瞬间就找到了安全漏洞,甚至还展示了如何利用这些漏洞进行攻击。

ConorGrogan表示,该合约的确在2018年被黑客利用漏洞攻击,此外他还透露也尝试了Euler的智能合约,但由于合约过长而无法被chatGPT-4处理,ConorGrogan坦言AI最终将是智能合约更安全、更容易构建。

也有群友说,ChatGPT似乎可以审计前两天EulerFinance约2亿美元被盗案的漏洞。相关事件阅读:复盘EulerFinance2亿美元被盗案的来龙去脉,本次事件带给我们哪些启示?

但是,真的有这么简单吗?

图源网络

其实与早期的GPT模型一样,GPT-4仍然存在一定的局限性。

OpenAI官方称,它并不完全可靠,可能会出现推理错误,「GPT-4缺乏对绝大多数数据切断后发生的事件的了解,并且无法从中吸取经验教训……它有时会出现简单的推理错误,它会轻信用户明显的虚假陈述,有时它会像人类一样在难题上失败,例如在它生成的代码中引入安全漏洞。」

基于此,OpenAI提醒,用户在使用语言模型时应格外小心,最好辅助以人工审查、附加上下文、或完全避免在高风险情况下使用它。

ChatGPTVSBeosinVaaS,审计合约谁更强?

Beosin的形式化验证专家说道:「ChatGPT可以学习合约的复杂模式,从不同维度对合约进行理解分类,可帮助静态检测技术增强专家模式,增加可识别漏洞的种类,降低漏报率和误报率,可辅助面向属性的测试验证技术与领域属性库进行有效链接,通过自动合约识别与属性插入,实现全自动化的测试验证。但是ChatGPT难以识别日新月异的特定领域深层逻辑漏洞,这种漏动通常是与项目需求紧密结合,需要领域安全专家作为裁判,不断归纳总结形成领域属性库对合约的安全性进行裁定。」

我们也发现ChatGPT并不能解决所有的问题,比如很多漏洞还是需要审计专家严苛审计,或者使用形式化验证工具BeosinVaaS才能发现问题。

BeosinVaaS作为一款全球领先的「一键式」智能合约形式化验证平台。检测准确率高达97%以上,精确定位风险代码位置并给出修改建议,自动检测智能合约80余项的常规安全漏洞及功能逻辑缺陷。BeosinVaaS可自动发现智能合约中存在的常规漏洞、业务逻辑错误等安全问题,并给出专家的修复意见。同时支持evm,wasm的所有公链的智能合约的上百种常规安全漏洞和业务逻辑缺陷检测,能精确定位风险代码位置,帮助开发者提高智能合约的安全能力。

形式化验证工具BeosinVaaS:https://vaas.beosin.com/

比如我们在3月15日预警的PoolzFinance的LockedDeal合约遭到攻击事件里,攻击者调用了LockedDeal合约中存在漏洞的函数CreateMassPools,并且在参数_StartAmount中触发了整数溢出的漏洞,我们测试了这个漏洞能通过VaaS工具检测出来,ChatGPT却不行。

同时,k值校验的深层逻辑问题ChatGPT也检测不出。

由于Uniswap这类DEX的实际的兑换转账操作在Pair的swap()函数中实现,为了防止攻击者越过Router合约直接调用Pair合约进行swap()转账,需要在Pair合约的swap()函数中进行K值校验,即swap之后pair中的K值仍然守恒。如果K值检验相关代码存在安全漏洞,那么攻击者能够以极少量的代币兑换出Pair中大部分代币。

合约未检查k值的cheapSwap函数

我们通过对K值校验问题的研究,总结了该问题的特点,提取出了该问题的通用属性供VaaS工具使用。在此之后,我们通过节点信息的分析,提取了ETH和BSC上共14W个地址的合约信息。这些地址合约全部都是相似的业务合约,均可能存在K值校验问题。

除了使用形式化验证工具VaaS,Beosin形式化验证专家还会将安全审计专家凝练出的安全问题利用严格的数理逻辑抽象成可重用的安全属性不变量,并交给混合机器引擎进行自动化检测、测试、验证,实践证明这些可重用的安全属性不变量可有效发现智能合约中新的微妙漏洞。这些都是像ChatGPT这类AI无法代替的部分。

不过在美国《纽约时报》网站3月8日刊登题为《ChatGPT的成功假象》的文章里,作者写到:「今天,我们在人工智能领域取得的所谓革命性进展的确让人既乐观又担忧。令人乐观是因为智慧是我们解决问题的手段;令人担忧是因为我们害怕最流行和最时髦的人工智能会像病株一样将有根本缺陷的语言和知识概念融入我们的技术,从而降低我们的科学水平并降低我们的道德规范。」

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

链链资讯

[0:15ms0-7:913ms