币圈子-中国领先的数字货币/区块链用户平台
比特币24H 最新价格 : 涨额 : 涨幅 : 成交量 :
big
当前位置:首页 > 币圈百科 > 区块链知识>正文内容
exitscams 火币 gate

区块链智能合约漏洞又是怎么回事?如何解决智能合约漏洞

全文导读

智能合约本质是一段运行在区块链网络中的代码,它完成用户所赋予的业务逻辑。以以太坊体系的代币为例,其业务逻辑是代币发币和交易。以太坊在设计之初,将智能合约设计成了一旦部署就不能修改的模式。这种设计有可能是为了

智能合约本质是一段运行在区块链网络中的代码,它完成用户所赋予的业务逻辑。以以太坊体系的代币为例,其业务逻辑是代币发币和交易。以太坊在设计之初,将智能合约设计成了一旦部署就不能修改的模式。这种设计有可能是为了提高智能合约的可信性。但是我们知道,只要是由人编写的程序,就一定会出现错误和缺陷。以太坊这种设计本身就违背了程序设计的一般规律,在智能合约出现漏洞的时候可能会造成无法弥补的损失。我们可以看到,近期出现的以太坊体系智能合约的漏洞,造成了巨大的影响,有的代币也因此毁灭。

目前以太坊体系区块链智能合约的机制设计,加之漏洞可能带来的毁灭性影响,使得已上线智能合约的漏洞的报告和处理变得非常棘手。360代码卫士团队在近期的研究中发现了以太坊体系下多个已上市交易的代币的智能合约安全漏洞,并已第一时间报告厂商,但到目前为止厂商尚未作出任何回应。对于厂商来说,由于智能合约不可修改的特性,要对上线后发现的漏洞进行有效修复,只能选择重新部署新的合约,这将付出巨大的代价,因此有的厂商可能会选择不响应,不处理。

而对于安全研究者来说,也面临尴尬的境地,左右为难。在厂商修补漏洞前公开漏洞细节对于厂商不利,有悖漏洞披露的一般原则,但如果厂商迟迟不修补漏洞,公众对于漏洞的存在不知情,风险会随着时间的增长迅速膨胀,漏洞一旦爆发可能会造成更大的危害,波及更大的人群,可能会造成很多人的投资瞬间化为乌有。接下来360代码卫士团队还将与厂商保持积极的联系和沟通,以期帮助其修复漏洞。

智能合约漏洞,如何应对?

在一些联盟链中,智能合约的设计是可以在部署之后更新的,当然这种更新需要一定的线下协商流程。要应对区块链智能合约的安全漏洞问题,未来需要普遍考虑设计相应的智能合约协商更新机制,降低漏洞修复的成本。

但现在,我们需要面对现实,做出几乎唯一可行的、切实有效的努力——在智能合约上线之前,对其进行全面深入的代码安全审计,尽可能的消除漏洞,降低安全风险。

360代码卫士团队安全专家表示,当前区块链智能合约中可能出现的漏洞至少有20余种。以下列举一些常见的区块链智能合约的漏洞类型及其可能造成的风险,这些漏洞在智能合约上线之前,都应该进行详细的排查。

整数溢出

◆智能合约中危险的数值操作

◆可能导致合约失效、无限发币等风险

越权访问

◆智能合约中对访问控制处理不当

◆可能导致越权发币风险

信息泄露

◆硬编码地址等

◆ü可能导致重要信息的泄露

逻辑错误

◆代理转账函数缺失必要校验

◆可能导致基于重入漏洞的恶意转账等风险

拒绝服务

◆循环语句、递归函数、外部合约调用等处理不当

◆可能导致无限循环、递归栈耗尽等拒绝服务风险

函数误用

◆伪随机函数调用和接口函数实现问题

◆可能导致可预测随机数、接口函数返回异常等风险

漏洞永远都会存在。未来区块链行业一定会出现更多的安全问题,之前传统互联网领域里面遇到的安全问题,区块链行业里面一定也会遇到。区块链行业要能够与网络安全行业做到协同开放,才能使行业更加健康稳定安全的发展

分享一下
区块链智能合约漏洞又是怎么回事?如何解决智能合约漏洞
我们关注币圈最新动态,欢迎加入官方QQ群:593564733,请猛戳这里→ 点击入群
币圈首页»
交易平台 数字货币 钱包 百科知识 资讯中心

前一篇:一个简单的智能合约模型,看完秒懂智能合约

下一篇:区块链智能合约是什么?智能合约有什么用?

0 条评论

发表评论共计xxx条评论
↖评论举报×
你认为的言论有什么问题?
币圈广告

热门交易平台

所有平台
  • Bakkt

    3星
    美国
  • BTTEX

    3星
    阿联酋
  • 海特币

    3星
    新加坡
  • CoinCat

    3星
    中国香港

热门数字货币

所有币种
  • BUC

    BUC |
    3星
  • 比特元

    BTY |2014-01-28
    3星
  • BTXC

    BTXC |2018-09-15
    3星
  • BTX

    BTX |2018年
    3星