9月5日,在由Odaily星球日报主办、36Kr集团战略协办的P.O.D大会安全论坛上,PeckShield研发副总吴家志发表题为《区块链智能合约及公链安全》的演讲。在演讲中,吴家志指出,整个区块链生态存在的安全问题包括智能合约、基础设施、钱包问题、矿池问题等。他还表示,因为区块链相关的项目方众多,有各种公链,公链有各种实现,智能合约也有各种实现,这些安全问题不是一家公司可以搞定的,需要更多的人来共同做好这件事,所以PeckShield与白帽汇旗下的BCSEC共同成立了DVP漏洞平台。该平台在7月24号上线,目前收到1700多个漏洞,相关的厂商已经有705个,总共注册白帽子1万多。PeckShield希望跟所有相关方合作,把整个生态做得更好。以下为吴家志演讲全文,enjoy:
各位嘉宾下午好,我是吴家志,我来分享一下PeckShield的研究成果,我们公司是从今年年初开始区块链研究的,算起来到现在,差不多有半年的时间。最早从代码开始研究区块链相关的信息,到现在研究范围扩大到整个区块链生态的各个环节。大家知道我们名字可能从是智能合约问题曝光开始,后来我们也做了很多跟公链相关的漏洞披露,也有做像前面嘉宾所说数据分析方面的研究,发了一些跟数据有关的快讯,还有热门游戏相关的漏洞分析等等。我们有一个目标就是希望整个生态能够在一个安全的状态下运转。我们认为区块链某一定程度会取代人类的一些经济行为,跟以往的经济行为很大不一样的是“去中心化”。所以没有这种机构保证你的资金安全,你钱丢了是没办法找一个法院或者银行帮你追回来的,在这样环境下,整个生态安全问题就显得至关重要。先做一下自我介绍。最早之前是在学校,2015年来到北京工作,在360。如果说你们从2013年开始到2015、2016年,有用安卓手机的话,可能里面就有我写的一些代码。今年之前,我都是以系统安全研究白帽子的身份,在做一些事情,后面开始做区块链相关的安全研究。
PeckShield:Hashflow 疑似遭遇与授权有关的攻击:6月14日消息,PeckShield 发推称,Hashflow 疑似遭遇与授权有关的攻击,目前损失金额约为 40 万美元,其中 19.5 万美元的损失发生在 Arbitrum 上,21.5 万美元的损失发生在以太坊上。[2023/6/15 21:37:20]
我最近也在做一些数据分析,这是一个比较大的趋势图。我第一次看这个图怎么这么大,你可以看到,我们现在在这,9月初是在这,去年的时候是在这里,有两条线,蓝色是我们监控上面每个月新增的合约数,可以看到蓝色的波动,绿色是我们监控到的数,可以看到去年这时候是有一个下滑,这个原因大家应该也知道。到年底的时候,有各种包括以太猫在这个时间点,有一个攀升。7月份稍微有点返升,上个月又稍微凉了一点,大家也明白。
刚才那个图是比较简单的数据,我们统计每个月的量,看他的情况是怎么样。下面这个图就比较有趣,我来解释一下。Homestead,这个阶段是到155万个blknum,一个圈代表一万个区块,所以这个图上有115个圈。再来是X坐标,意思是说这一万个区块里面存在一个以上交易的块数,举个例子,这一块可能差不多是8200,这一万个块里面有82%左右不是空块。所以就你可以理解为这个圈如果在图的越右边的话,就表示这个网络是满载的情况。
ApeCoin基金会特别委员会和治理工作组管理员候选人第二阶段提名流程正式启动:金色财经报道,ApeCoin官推发布信息,ApeCoin基金会特别委员会和治理工作组管理员候选人第二阶段提名流程已正式启动并提供了为期两周的讨论期,社区成员可以在此期间与提名人交流沟通并访问特别委员会和工作组管理员的ApeCoin Discourse,讨论期将于6月11日结束。此外,ApeCoin还公布了后续流程时间:6月15日至21日ApeCoin DAO社区将投票选出候选人、6月22日至28日启动选举、7月1日新任期开启。[2023/5/30 9:50:09]
再来看Y坐标,就是这一万个块里面的平均TX数,最大的值是200多,为什么是这个值,原因是每一个块是有gas上限的,你可以理解为每一个块承载的TX数是有限制的,最一开始状态是点都是在很低的地方,但是有一个往右边的增长,一开始可能很多都是空块,像创世块就在左下角,就是没有任何TX,进入下一个阶段可以看到这个图开始有一些往上增长,但也有往左的,还是属于一个网络不是太拥塞的情况。
ApeCoin DAO将为Apes和Otherdeeds推出定制的NFT平台:金色财经报道,ApeCoin DAO 将为 Apes 和 Otherdeeds 推出定制的 NFT 平台,该市场将出售 Bored Ape Yacht Club、Mutant Ape Yacht Club、Bored Ape Kennel Club 和 Otherdeed NFT。市场将兑现创作者的版税,并将每笔交易的一半卖家费用返还给 ApeCoin DAO 社区。[2022/11/24 8:02:04]
到拜占庭这个时间点往右边的圈越来越多了,整个网络变得比较拥挤。
到最近这一年以来,基本就是贴到最右边去,可能是由于各种现象级的游戏,还有包括黑客攻击什么的,所以现在,可能随便出来一个现象级事件,包括Fomo3D这一类游戏,都可能导致这种结果。这个是我们PeckShield从数据方面观察到一些现象。
接下来分几个层面去讲整个区块链生态的一些安全问题,这里面大家可以看到,比如智能合约,有infrastructure,还有钱包问题等其他环节,我们都有一些研究。
ApeCoin DAO新提案提议开发第三人称射击游戏《Ape Worlds: Shooter Edition》:9月17日消息,ApeCoin DAO 社区已发起一项新提案 AIP-103,旨在创建一款第三人称射击游戏《Ape Worlds: Shooter Edition》,吸引更多人进入 ApeCoin 生态,该提案投票截止时间是 9 月 22 日,但目前社区似乎对开发这款游戏的热情不高,反对票比例达到 75.27%。[2022/9/17 7:03:25]
首先我先讲一下智能合约的问题,这个跟大家最早知道PeckShield的美链事件是类似的一个问题,代码在这个地方,这些value加起来之后出现一个溢出的数,导致amount检查会被绕过,我们看画面右边有一个案例,右面可以看到两个手机的样子,旁边是我攻击的流程,等一下你会看到右边我更新的一下会凭空造出两个很大的数字,后面的零数不过来,就是通过这种方式,我们生成两个不同地址,分别是那两个手机的钱包地址,造成这个地方溢出,然后这个检查绕过,这边就等于看到生成很多数字资产的地方,就是在balance+=value这个地方,空手套白狼,这是一个挺严重的问题。这样的问题有一个比较公认的解决方法,就是在这个地方,是一种比较严谨的计算函数库,叫Safemath。
PeckShield:BSC链上Merlin Lab遭攻击源于收益逻辑漏洞:PeckShield派盾安全人员定位发现,BSC链上收益聚合器 Merlin Lab 遭到黑客攻击源于 MerlinStrategyAlpacaBNB 中存在的逻辑漏洞,合约误将收益者转账的 WBNB 作为挖矿收益,使得合约增发更多的 $MERL 作为奖励。[2021/6/29 0:14:46]
这边是一个allowance的运算,它可以保证你不会溢出,那为什么你看我标题写的是Unsafemath呢?我们最近发现一个很有趣的现象,在你右手边,这里safeSub的实现里,用assert确保B小于或对于A,也就是说你不能用一个比较小的数减一个比较大的数。assert这个方法可以保证你这边错的时候,会可以把你的gas烧完,让这个TX结束,这也是刚刚郭老师讲的攻击里面的细节。就是说本来架构里面有一个这样的机制存在,但他的这个safeMath实现里,多加了一个assert函数,在发生错误的时候直接return。所以选择你的安全函数库的时候也要注意一下。
再来我讲一下关于infrastructure的研究,左边这个截图是漏洞奖励计划的网站,PeckShield现在是暂时排名第五,目前已公开有三个比较早期提交给基金会的漏洞,都是跟公链有关。我今天稍微介绍一下其中的一个,已经修复的,大家不用担心,如果你把Geth升级到最新的,这个漏洞不存在。
这个漏洞简单说一下,我们命名为叫做EPoD,只要发一个数据包给你,你笔记本现在跑一个客户端,我知道你的IP,直接发给你,你收到后,你的客户端就会崩溃,这个崩溃听起来好像没什么,但是我直接广发这个数据部就直接死一片,你其实可以很简单联想到这个可以拿来做算力的攻击。代码的细节不讲太多,简单说就是我把某一个数据弄成负1,这边代码实现是把这个数+1,当你要分配内存大小,负1+1就是零,我又去access负1这个地方的位置,最终导致越界访问,程序就崩溃了。我们直接看案例比较简单一点。
右边这个就是我运行的客户端,这边先去证明一下我客户端是从官网上面下载,保证说这个客户端不是我自己修改过的,是官网直接下载的。等一下检查完之后左边会出现两个窗口,左上角是攻击代码运行情况,左下角是一个抓包的画面,刚刚我做了一个操作,就是先把网关掉,确保这个机器已经没有网了,所有网络测的数据包都是来自本机的包。看到最右边已经把Geth客户端领跑起来了,这边是我刚才抓到的UDP包,如果你们有了解,这种包不需要建立连接,我可以在网关或者什么地方,可以扩散我的攻击,左上角是我攻击代码,我攻击的目标是127.0.0.1,这我们本机的IP,这个是攻击的包,所以只要在某一个版本以下的Golang客户端收到这个包就会崩溃。这样的漏洞其实我们有一整个系列,这是最早被公开的一个,我们在明天的互联网大会上会讲,这整个系列会有好几个类似这样的案例。以上是我针对公链还有智能合约的安全问题简单做的两个案例,大家理解一下就可以,如果真的要看代码,可以关注下PeckShield的官网。最后,我要说是我们最近跟白帽汇旗下BCSEC合作的一个项目,我们感觉区块链相关的项目方实在太多了,有各种公链,公链有各种实现,智能合约有各种实现,所以我们就开始觉得说,这个安全的问题其实不是我们一家公司可以搞定的,我们需要更多的人同时来把这件事做的更好,所以我们成立一个平台叫做DVP漏洞平台。最右边是漏洞提交的情况,简单说我们就是利用一种众测方式,集合所有有安全能力的研究人员或者白帽子,让项目方把他的项目在我们平台上面悬赏。比如说我现在要测试1.0版本,你找到一个什么样等级漏洞给你怎么样的报酬,通过这样方式鼓励白帽子帮我们把整个生态做的更好。这个平台是在7月24号上线,目前收到1700多个漏洞,相关的厂商已经有705个,总共注册白帽子一万多。这些是已经入驻这个平台的厂商,包括我们自己公司网站也放在上面做悬赏。PeckShield其实希望跟所有项目方合作,把整个生态做的更好,一开始我也讲到这件事情,最右边是我们公司的官网,我们会不定期在上面发布我们最新的研究成果,大家可以关注一下。以上就是我今天的分享,谢谢。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。