风靡全网的“最强AI” ChatGPT,能不能检测智能合约漏洞?_GPT:ATG

作者:Beosin

一夕之间,ChatGPT突然火了,并在互联网上掀起了一场“AI风暴”

所谓ChatGPT,是在今年11月30日,由人工智能实验室OpenAI上线的新模型。

目前用户与ChatGPT之间的对话互动包括了普通聊天、信息咨询、撰写诗词作文、修改代码等,甚至令用户产生ChatGPT能否取代谷歌等搜索引擎的疑虑。

今天,我们就来研究一下爆火的ChatGPT究竟是什么?以及能不能检测智能合约漏洞?

在互联网上掀起了一场“AI风暴”的ChatGPT究竟是什么?

据官网介绍,计算模型GPT-3.5支持的通用聊天机器人ChatGPT,能回答连续性的问题、承认自己的错误、质疑不正确的假设,甚至拒绝不合理的需求。

从写剧本、写诗、设计游戏,到给程序找bug,乃至制定一份“毁灭人类”的计划,这个AI能做的事情超乎想象。

美国企业家马斯克询问了ChatGPT如何设计Twitter,AI回答称:“为了使用户更容易查看线程互联网对话并与之交互,你可以将线性一维界面转换为二维无限网格。”

12月5日,OpenAI创始人兼CEO阿尔特曼(SamAltman)发布推文表示,ChatGPT用户数已突破了100万。

许多人已经测试了聊天功能,并一直在社交媒体上分享他们的交流。ChatGPT似乎也给科技亿万富翁埃隆·马斯克留下了深刻印象,他在推特上写道:“ChatGPT好得吓人。我们离危险的强大人工智能不远了。”

技术公司Replit的创始人AmjadMasad还给ChatGPT发了一段JavaScript代码,让它找到里面的bug,并表示:“ChatGPT可能是一个很好的调试伙伴,它不仅分析了错误,还修复了错误并进行了解释。”

一位用户甚至要求ChatGPT从AI的角度写一封信,目标是控制世界。

结果简直令人震惊。它引起了久负盛名的人工智能的人们的回应,接管了科幻小说的世界概念,向现实迈出了一步。

拥有如此强大而惊艳的语言能力,一时间,ChatGPT悄然走到了话题中心,成为了引发热议的新晋网红。

目前ChatGPT仍处于免费测试阶段,不限量向公众开放,基于其破百万的用户数,平台所花费的成本不算小。不过,在使用过程中,用户提供的反馈对OpenAI也是最有价值的信息,可以不断训练语言模型,修正错误答案。

“新晋网红”ChatGPT,可以写智能合约或者检测合约漏洞吗?

我们注册并体验了一下ChatGPT对话,我们首先让AI自我介绍。

他回复道,“我是Assistant,一个由OpenAI训练的大型语言模型。我的工作是帮助人们回答各种问题,尽可能提供准确和详细的信息。我可以回答各种问题,无论是关于历史、科学、人文还是其他话题。”

作为一家区块链安全公司,我们有了另一种想法,那就是让他来写一份智能合约。

写一份简单的合约,对ChatGPT而言好像没有太大的难度。因为代码太长,我们截取部分截图展示,可以看到,他还是懂一些基础知识的。

接下来,我们丢给ChatGPT一个相对简单的但是有漏洞的智能合约,让他检测一下,我们截取部分截图展示。

好家伙,不简单,ChatGPT竟然还是能检测一些简单的问题。

看这情况,是有“两把刷子”,来,继续上难度!

本以为他会继续给我们惊喜,他却来一句:“我看不懂这份这份代码”。

然后我们加了一些注释,让他重新检测。

他说了一些什么,又像什么都没说。

然后建议我们使用专业的安全审核工具或者请求专业人员进行审核。

好吧,那我们先派出我们的智能合约形式化验证工具BeosinVaaS,将刚刚测试的那几份合约检测了一下,可以看到,VaaS能很快检测出合约的漏洞。

BeosinVaaS产品截图

要知道,VaaS作为Beosin的王牌产品之一,可自动发现智能合约中存在的已知、未知漏洞及业务逻辑问题,并给出专业的修复建议,帮助开发者提高智能合约的安全能力。大家感兴趣可以检测对比一下,VaaS试用链接:https://vaas.beosin.com/

除此之外,经过我们的多轮对比,我们发现ChatGPT并不能解决所有的问题,比如很多漏洞还是需要审计专家严苛审计,才能发现问题。

比如下面这份合约的问题,设置手续费没有限制,可能导致用户高额手续费,ChatGPT并没有意识到这些。

还有下面这个,在_transfer函数中,如果_trAmount=2被触发,10秒内所有的传输地址都是dev地址。ChatGPT依然不能识别。

毕竟做安全,必须要有严苛安全审计流程,才能筑牢安全防线。

Beosin的审计流程的规范性上,包含5个环节以上的审计步骤,自动化代码安全扫描与安全专家和形式化验证专家的人工审计结合。每一步均由多名安全专家和形式化验证专家交叉操作,尽量避免因为人为因素导致的遗漏。

完成一轮审计后,Beosin会出具所发现问题的Feedback,里面包含漏洞描述,复现方式,修复建议等,然后提交给项目方并协助项目方完成漏洞修复。我们有着海量的安全漏洞库的积累,结合安全专家的丰富的代码安全审计经验,能够直接告诉项目方应该怎么修改代码。这个可比ChatGPT强多了哦!

最后,形式化验证专家又将安全审计专家凝练出的安全问题利用严格的数理逻辑抽象成可重用的安全属性不变量,并交给混合机器引擎进行自动化检测、测试、验证,实践证明这些可重用的安全属性不变量可有效发现智能合约中新的微妙漏洞。

看来我们还暂时不会被ChatGPT的机器人代替。

当然,当我们在关注chatGPT的时候,更需要思考和探索的是,他火爆背后所透露出现的信息,它所呈现出来的人工智能或许已进入到了一个全新的发展阶段,科技正在慢慢改变世界。

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

金智博客

[0:0ms0-4:130ms