4.2不受限制的传入连接:此漏洞在版本1.8 [18]之前的Geth客户端中。 每个节点在任何时间点可以具有总数为maxpeers的连接(默认值为25),并且可以与其他节点发起多达1(1 + maxpeers)/2⌋个出站TCP连接。 但是,其他节点启动的传入TCP连接的数量没有上限。 通过为maxpeers建立与没有出站连接的受害节点的许多传入连接,攻击者有机会使受害者黯然失色。 在Geth v1.8中,通过对到节点的传入TCP连接的数量实施上限,默认值为⌊maxpeers/3⌋= 8,消除了此漏洞。 4.3公共对等体选择:在Geth客户端1.8之前的版本中检测到此漏洞[18]。 4.4对等体选择:该漏洞指的是Geth客户端在从其路由表中选择节点以建立出站连接时,总是获取随机选择的桶的头部。由于每个存储桶中的节点都是按活动排序的,因此攻击者可以通过定期向Geth客户端发送消息来使其节点始终位于其他节点之前。通过在路由表中所有节点的集合中随机选择统一的节点,而不是仅从每个存储桶的头中随机选择节点,在Geth v1.9中已消除了此漏洞。 4.5独立块同步:它允许攻击者对以太坊P2P网络进行分区,而不会垄断受害者客户端的连接。回想一下,每个块标题都包含一个难度字段,该字段记录了该块的挖掘难度。区块链的总难度用totalDifficulty表示,是直到当前区块的难度之和。 4.6 RPC API暴露:此漏洞最初是通过对Geth和Parity客户端的攻击发现的[19]。 引用: [1]https://www.coindesk.com/ [2]https://www.freecodecamp.org/ [3] https://medium.com/ [4] https://nvd.nist.gov/ [5]https://medium.com/ [6] https://eprint.iacr.org/2016/1007.pdf [7]https://www.reddit.com/ [8]https://github.com/ [9]https://medium.com/ [10]https://medium.com/ [11]https://medium.com/ [12] https://blog.ethereum.org/ [13] https://blog.comae.io/ [14] https://dl.acm.org/doi/10.1145/3149.214121 [15]https://medium.com/ [16] https://dl.acm.org/doi/10.1145/3212998 [17] https://dl.acm.org/doi/10.1145/2810103.2813659 [18]https://ljk.imag.fr/membres/Jean-Guillaume.Dumas/Enseignements/ProjetsCrypto/Ethereum/236.pdf [19] https://mp.weixin.qq.com/s/ia9nBhmqVEXiiQdFrjzmyg [20] https://dl.acm.org/doi/fullHtml/10.1145/3391195 (责任编辑:admin) |