织梦CMS - 轻松建站从此开始!

我的网站

当前位置: 主页 > 竞争币 > 以太坊

详解以太坊智能合约安全性漏洞,如何有效减少 DeFi 攻击?(3)

时间:2021-03-08 14:54来源:未知 作者:admin 点击:
共识层:确保区块链的状态一致。在撰写本文时,以太坊大约需要 12-14 秒来创建一个区块,这意味着多个矿工可以同时创建有效的区块,并且可能有许多

共识层:确保区块链的状态一致。在撰写本文时,以太坊大约需要 12-14 秒来创建一个区块,这意味着多个矿工可以同时创建有效的区块,并且可能有许多区块。以太坊使用 GHOST 共识协议的变体来选择「最重」分支作为主链,其中「heaviest」分支是根植于所讨论的分叉的子树,并且具有最高的累积区块难度,同时注意到陈旧区块不在主链上。但注意,以太坊用权益证明(PoS)替代其当前使用的工作量证明(PoW)。

网络层:管理节点或客户端的以太坊点对点(P2P)网络,以使节点始终可以从某些活动节点获取区块链的更新状态。以太坊网络是一个结构化的 P2P 网络,其中每个节点(即客户端)存储整个区块链的副本。为了进行节点发现和路由,每个节点维护一个动态路由表,其中包含 160 个存储桶,每个存储桶最多包含 16 个其他节点的 ID,IP 地址,UDP / TCP 端口条目。以太坊使用 RLPx 协议发现目标客户端,并使用以太坊有线协议来促进客户端之间以太坊区块链信息(例如交易,区块)的交换。

以太坊区块链环境:运行在如下四层的环境中:用户与以太坊区块链进行交互的 Web 界面 ; 以太坊客户的数据库,用于存储区块链数据 ; 出于安全目的的加密机制;以及支持以太坊节点之间的区块链通信的互联网基础设施。我们将以太坊区块链架构与环境区分开来,因为针对以太坊区块链的攻击可能来自环境,并且这些攻击可能在环境中得到更好的解决,而不是由以太坊解决。

以太坊智能合约漏洞

重点介绍了以太坊体系每一层的智能合约漏洞,如图 2 所示。

详解以太坊智能合约安全性漏洞,如何有效减少 DeFi 攻击?图 2:以太坊各层漏洞的分类

以太坊应用层

  • 重入性:此漏洞最初是从 DAO 攻击中发现的 [1],当外部被调用方合约在用方合约完成之前(即某种意义上是循环调用)在调用方合约中回调函数时,会发生此漏洞。这使攻击者可以绕开适当的有效性检查,直到调用者合约被耗尽以太币或交易用完为止。

  • 委托呼叫注入:首先从对 Parity 钱包的攻击中发现了此漏洞 [2]。为了促使代码重用,EVM 提供了一个操作码委托调用,用于将被调用方合约的字节码插入到调用方合约的字节码中。结果恶意的被调用方合约可以直接修改(或操纵)调用方合约的状态变量。此漏洞是由于被调用方合约可以更新调用方合约的状态变量而导致的。声明旨在通过委托调用作为库共享的无状态合约,可完全防此漏洞。

  • 冻结以太:首次从对 Parity 钱包的攻击中发现了此漏洞 [3]。该漏洞产生由于用户无法将钱存入其合约帐户,而无法从这些帐户中支出资金,从而有效冻结了他们的资金。 (责任编辑:admin)

织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
推荐内容