开源=安全?RVN 盗币事件复盘

原创 矿池中转  2022-12-01 22:08 

@知道创宇404区块链安全研究团队(ACce1er4t0r)

日期:二零零一年七月二十二日

七月十五日,V2ex上有一篇类似的文章:三条线就能卖4000万 RMB,还有这种操作?[1][[1]]

在这个帖子中,黑客只是用了一段简短的文字,就赚了一百万 RMB。

让我们回头看一看这个事情。

*事件综述

在今年一月十六日,一个开放源代码的团队收到了这样的消息。

在这个过程中,提交人会将一个模糊的数据进行分类,让所有人都明白,到底哪里出了问题,看似对工程进行了最好的改造,但实际上,真的是如此吗?

一名 Solus Explorer开发小组的一个程序员,在修复 bug的时候,在对数据进行同步的时候,他在查看 RVN的时候,发现 RVN的数量增加了275,000,000,并且有很多的可疑的地方被找到,并且得到了 RVN。当他意识到这一情况时,立即向小组汇报。

在2020年7月3号,该小组将一个应急的升级通知给了该团体

在2019年七月四日13:26:27 (UTC),该小组强迫对该区块进行了一次新的升级,并且证实了总计301,804,400 RVN的增长,也就是3.01亿 RVN.

在今年七月五日,该小组声明了该紧急情况的终止

队伍宣布了一项活动

*活动原则

在说明原则之前,我们可以再来看一下所提交的代码

这是一个逻辑程式码,用以进行确认。

简而言之,提交人修改了 Asset确认的判定,将原来的标准修改成如下:

1.2.

该程序自身就充分发挥了开放源码社群 PR的特点(在开放源码社群中,若开发人员发现 PR与真实的逻辑并不相关,就不会过多考虑其对代码的作用),这似乎仅仅是简化了交易中出现的错误信息,方便了那些有能力的交易员找到自己的失误,而事实上,由于忽视了这些声明,一个共同的约束被简化成了两种常用的 nType。

在您的程式码中,有以下几个数值:

因为编码发生了变化,所以在那个时候,它可能不是0。

我们还可以将普通的和有问题的交易进行比较来检验这个想法。

在普通的 Reissue运算中,我们必须先付款给 Address RX ReissueAssetXXXXXXXXxxXXXXXXXX XXXXXX Wu。

由于攻击者改变了判定的标准,使得在时无法被发现,因此,当 Address的 Amount值为0时,可以进行判定,从而达到 RVN的目的。

在阅读了这个密码之后,我们打开了这个名为 GitHub的用户的首页。

本文地址:https://91eth.top/2022/12/30955.html
关注我们:请关注一下我们的微信公众号:扫描二维码区块链十大正规数字货币交易平台的公众号,公众号:gyuuoo
版权声明:本文为原创文章,版权归 矿池中转 所有,欢迎分享本文,转载请保留出处!

评论已关闭!