再谈 创世攻击 / Genesis Attack

in steem-engine •  2 years ago 

之前在文章 How do we Really Fix the Root Cause of SPORTS issues? | We Need White Hat and Economists to Guard Steem Engine 中提到过关于通过组建白帽安全专家和经济专家团队,来抵御针对 steem-engine 平台的金融安全攻击的提案。我仍然坚持这一观点,并认为目前SE平台的社区和金融风险不应被低估。

在昨天ZZAN空投的过程中,我们发现在 sportstalk.social 平台上出现的“修改标签”以提前获得审查的漏洞仍然存在。已经有部分擅于利用漏洞的作者通过这种方式提前获得了审查(只是数量非常少)。尤其地,在空投的越早期,这种漏洞存在的危险性越大。

这类攻击利用了几个常见的在“创世”、”空投“过程中的常见漏洞,我们在此做一些梳理。



Image Source: Pixabay

“时光穿越”漏洞

打个比方来说,可以“编辑旧帖子”的行为,相当于总有人能穿越回创世之前的时间点,改变过去,来影响现在和未来。这样一来,所谓的创世就不是团队(上帝)计划中的创世了,而是永远被撒旦的阴影笼罩着。

通过编辑旧帖子来获取收益的问题看似在官方握有大量实权的时候,危害不大,但这个口子只要打开着,就存在可乘之机、形成巨大的风险。

“时光穿越”漏洞,是创世攻击的前提条件之一。但在某一些系统内,可能即便没有“时光穿越”漏铜也能成功,但只要这个漏洞存在,哪怕能力很一般的攻击者,也常常能轻易对系统进行侵蚀。

“权力真空”漏洞

宇宙大爆炸理论认为奇点是在极短的时间内完成最初的基本物质的形成的。“创世空投”同样存在巨大的潜在能量和不确定性,而剧烈影响之后的权力格局。

在空投之时,由于各种原因,空投并不是瞬时完成的,空投之后的 stake 的权力兑现也不是同时的,很可能导致某一些账户瞬间拥有绝对的统治力。特别的,如果此时创始团队(“上帝”)的权力还没有被落实,更可能鸠占鹊巢,在一个较短的时间内使得一些账户拥有极高的相对权重。

如果攻击者同时能够有计划地利用“时光穿越”漏洞(如预留发布一系列间隔为15~30分钟的非SCOT帖子),则会瞬间将权力释放为可兑现的财力,进一步影响市场的走向,“潘多拉的墨盒”由此打开,甚至驱逐“上帝”也是有可能的。此一问题在 sportstalk.social 的创世过程中得到了有效的演绎,不过创世团队自身过于弱小,也是问题发生的重要原因。

修复“权力真空”漏洞需要对空投和stake程序进行严密的设计,确保在任意时刻团队都能对权力具有决定性控制权,否则“夺权”之争仍然有可能被激发。

@ericet 村长昨天在通过 @cn-zzang 集中资金的时候,曾经命中了“权力真空”漏洞,一帖点出80万ZZAN。如果当时真正的攻击者已经布置好了“时光穿越”的通道,那么现在有可能ZZAN已经是另一个SPORTS。

“自由平等”漏洞

自由和平等从来都是矛盾的。“自由”的攻击者利用“平等”的漏洞,攫取利益,在社会中也不少见。例如,利用空投设计的漏洞,使用海量小号,占有绝大多数空投资源,也是一种利用“创始团队”的善意的攻击方式。

这一点在 ZZAN 的空投过程中也有较为充分的体现。加上 ZZAN 本身的空投失误,让这一问题可以更明确的被观察到。所以除了创世空投策略设计的问题,创世空投过程的失误也容易引起权力分配的倾斜。

SPORTS 项目的问题之一,也在于过于信任社区的自组织能力,而任意均等空投给一些不熟悉的用户,从而导致了之前的这一出戏剧的上演。

创世攻击 Genesis Attack

类似高频交易对时机的把握,类似皇权交接时的非常时刻,SCOT系统创世之时的混沌系统具备发生意料之外变化的极大可能性。

“时光穿越”漏洞和“权力真空”漏洞,是创始攻击的一种典型范式。“自由平等”漏洞,是创世攻击的诱因之一,与前两者也可以有机结合。

针对“创世”这个薄弱点的攻击方式可能还有许多演绎的手段,例如通过对 ScotBot 进行 DDOS 攻击,阻止空投进程,延长“权力真空期”,借此扰乱市场,等等。

对于这一话题,我们在之后或许将继续关注,欢迎参与讨论。

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

Congratulations @koei! You have completed the following achievement on the Steem blockchain and have been rewarded with new badge(s) :

You distributed more than 900 upvotes. Your next target is to reach 1000 upvotes.

You can view your badges on your Steem Board and compare to others on the Steem Ranking
If you no longer want to receive notifications, reply to this comment with the word STOP

To support your work, I also upvoted your post!

Vote for @Steemitboard as a witness to get one more award and increased upvotes!