作者:慢雾安全团队
当我们谈论区块链时,总是离不开这些技术:分布式存储、P2P网络和共识机制,本次我们要谈的问题就是出现在P2P对等网络协议上。
异形攻击实际上是一个所有公链都可能面临的问题,我们用以太坊为例子说明。以太坊的P2P网络主要采用了Kademlia(简称Kad)算法实现,Kad是一种分布式哈希表(DHT)技术,使用该技术,可以实现在分布式环境下快速而又准确地路由、定位数据的问题。
什么是异形攻击?
首先,我们先定义一个同类链的概念,是指使用了和其它区块链相同或兼容协议的区块链系统。
异形攻击又称地址池污染,是指诱使同类链的节点互相侵入和污染的一种攻击手法,漏洞的主要原因是同类链系统在通信协议上没有对非同类节点做识别。
Binance已拒绝投资Genesis,因担心部分业务会产生利益冲突:金色财经报道,Watcher.Guru发推特透露,“Binance拒绝投资Genesis。”
知情人士透露,Genesis已与加密交易所币安接触,希望获得投资,并竞购其贷款账目。币安决定不投资,因为担心Genesis的一些业务可能会在未来产生利益冲突。[2022/11/22 7:55:00]
以太坊异形攻击是指,以太坊同类链由于使用了兼容的握手协议,无法区分节点是否属于同个链,导致地址池互相污染,节点通信性能下降,最终造成节点阻塞的一种攻击方式。
1.正常的节点发现过程
以太坊同类链节点间通过4个UDP通信协议来完成节点发现,消息结构如下:
英国金融时报:乌克兰和俄罗斯起草中立计划以结束冲突:3月16日晚间消息,乌克兰和俄罗斯起草中立计划以结束冲突。 乌克兰和俄罗斯在暂定的15点和平计划上取得了重大进展,其中包括停火以及如果基辅宣布中立并接受对其武装力量的限制,俄罗斯将撤出乌克兰。(英国金融时报)[2022/3/17 14:01:10]
ping:探测一个节点是否在线
pingstruct{VersionuintFrom,TorpcEndpointExpirationuint64Restrlp.RawValue`rlp:"tail"`}
pong:响应Ping命令
pongstruct{TorpcEndpointReplyTokbyteExpirationuint64Restrlp.RawValue`rlp:"tail"`}
巴以冲突已造成至少65名巴勒斯坦人死亡:12日,随着巴以双方冲突进一步升级,双方人员伤亡数字上升。据巴勒斯坦加沙地带卫生部门发布的最新消息,自10日以来,以色列的空袭已经在加沙地带造成至少65名巴勒斯坦人死亡,其中包括16名儿童;另有300多名巴勒斯坦人受伤。另据以色列方面消息,截至目前,冲突已造成以境内6人死亡,100多人受伤。(央视新闻)[2021/5/13 21:56:41]
findnode:查找与Target节点异或距离最近的其他节点
findnodestruct{TargetNodeIDExpirationuint64Restrlp.RawValue`rlp:"tail"`}
动态 | ADA项目内部出现冲突和分歧:据nulltx报道,ADA项目内部出现冲突和分歧,ADA创始人Charles Hoskinson指责其基金会成为项目进展的绊脚石。在一封公开信中,Hoskinson指责基金会主席Michael Parsons项目松懈、裙带关系和挪用资金。他进一步呼吁ADA社区签署一份请愿书,将其赶下台。[2018/10/17]
neighbors:响应FindNode命令,会返回一或多个节点
neighborsstruct{NodesrpcNodeExpirationuint64Restrlp.RawValue`rlp:"tail"`}
2.攻击过程
https://github.com/smartheye/EthStaticNodesTool/blob/master/MainNet/static-nodes.txt–第一步:发起恶意握手。
攻击者A模拟整个握手过程,主动发起ping操作,并利用协议的第4步neighbors,将返回的邻居表修改成我们收集到的以太坊节点地址,推送给受害节点B。由于单次通信只能推送16个地址,我们需要多次推送以达到攻击效果。
–第二步:污染地址池。
B收到大量A返回的邻居表,尝试跟这些节点握手,并将这些节点加入了自己的地址池。
–第三步:污染自动扩散。
让人意外的是,不同链的节点居然互相握手成功了,更为可怕的是,它们把各自地址池里已知的节点推送给了对方,导致更多的节点互相污染,最终扩散致整个网络。
漏洞危害
受异形攻击的同类链节点无法找到真正可用的节点,无法建立TCP数据同步通道,导致节点被攻击离线。
对于矿池或者出块节点,异形攻击可能导致广播延迟甚至失败,造成收益损失。
异形攻击可以使所有以太坊同类链地址池相互污染,导致节点通信效率全面下降,对整个区块链系统造成长久的伤害。
影响范围
我们对知名公链QuarkChain进行安全审计时发现,QuarkChain的节点在遭受异形攻击后,节点性能严重下降,外部节点需要很长时间才能与受害节点建立连接。QuarkChain团队随后修复了该问题。
理论上所有使用了以太坊discv4协议的区块链都可能受此漏洞影响,在发起测试后的一段时间,我们观测到EtherNode的监测节点也已经被污染了,污染的扩散速度似乎比想象中的要快。
也许,以太坊需要来一次清洗。
后记
1、此漏洞对以太坊是否有影响?
以太坊的节点数量远大于其它同类链节点,并且节点间已经建立了稳定的连接,影响不明显。但对于其它的同类链节点,却会受到来自以太坊节点的强势侵入,导致通信阻塞。
2、很多朋友关心除了以太坊之外,其它的公链是否有此问题,比如比特币和它的山寨币,比如使用了libp2p协议的公链,这些问题我们将在后续文章中披露!
十分感谢QuarkChain团队大力协助本次测试!
据统计,2019年4月,全球区块链领域共斩获37笔融资,项目数量接近3月份,但融资总额仅为13.39亿元,环比下降了69.7%.
1900/1/1 0:00:00尊敬的ZT用户:根据客服反馈ZT.COM的C2C充值情况,为了您的购买可以快速到账,ZT.COM在此温馨提示,请按以下正确操作方式进行购买1、用户C2C买入下单.
1900/1/1 0:00:00Gate.io新品发布GT空投活动已顺利结束,我们已经按照活动规则为参与活动的用户发放了奖励,获奖用户可以到以下账单明细中查看详情:https://gateio.co/myaccount/myp.
1900/1/1 0:00:00金色财经比特币5月6日讯对于致力于推动以太坊下一次升级——以太坊2.0的核心开发人员来说,他们已经编写了帮助客户端开发人员测试本次升级工作的代码,让他们可以在迭代之前了解升级效果.
1900/1/1 0:00:00作者/晓通几个小时之前,属于全球金融人士的嘉年华刚刚落下帷幕。北京时间5月4日22点,来自全球各地的4万多名金融行业投资人齐聚在美国奥马哈,参加每年一度的伯克希尔·哈撒韦股东大会.
1900/1/1 0:00:00尊敬的用户:K网国际站将开启首期“Stellar”认购,首期项目IPWeb将于新加坡时间2019年5月7日10:00正式开始,具体认购规则如下:认购细则:代币名称:IPWT代币总量:10.
1900/1/1 0:00:00