热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

安全漏洞、黑客攻击之下,智能合约安全如何保障?

智能合约是促进区块链发展的核心要素之一,其应用范围广泛,有许多交易用例和各类应用程序。金融服务、供应链管理、物联网网络等各行各业中都能找到智能合约的具有前景的用例。同时,智能合约不是绝对安全的。行业中

智能合约是促进区块链发展的核心要素之一,其应用范围广泛,有许多交易用例和各类应用程序。金融服务、供应链管理、物联网网络等各行各业中都能找到智能合约的具有前景的用例。

同时,智能合约不是绝对安全的。行业中所频频发生的智能合约安全事件中可以看出,智能合约的安全需要维护和保障。TinTin Meeting 第十六期便将针对“智能合约安全”这一话题进行讨论和开展。在这之前,让我们先来了解智能合约安全的定义及与智能合约安全相关的显著问题。

什么是智能合约安全?

智能合约安全是指开发者、用户和交易所在创建智能合约或与智能合约交互时使用的安全原则和实践。计算机学报发布的《智能合约的合约安全和隐私安全研究综述》研究中定义了智能合约的安全有两个维度:合约安全和隐私安全

  • 合约安全主要针对合约设计文档、合约代码、合约运行状态等,要求智能合约不存在设计缺陷、代码漏洞等不足,涉及智能合约的设计、实现、测试、运维及部署等多个阶段;

  • 隐私安全主要针对智能合约代码隐私及合约执行过程中涉及的相关数据隐私,要求保护程序代码以及程序执行过程中的交易数据不会被非授权节点获取,主要体现在区块链系统的合约代码和合约数据两方面。

智能合约安全事件

今年一个重大安全事件的案例是在 2022 年 11 月 2 日, Derbit Exchange 的热钱包漏洞事件。漏洞所导致的私钥泄露可能导致以太坊和比特币链上的 USDC、ETH 和 BTC 损失约 2800 万美元。Derbit Exchange 在事件发生后公开表示,损失将由公司储备金弥补。为了解决此类事件,Derbit Exchange 也提出“99% 的用户资金存放在冷藏库中,以限制此类事件的影响”。

安全漏洞和安全事故等在行业中并不少见,智能合约安全问题需要得到重视。以下是近期与智能合约安全相关的重大事故:



  • 2022 年 8 月,由于与导入账户相关的问题,数千个 Solana 钱包损失了约 800 万美元。

  • 2022 年 2 月,在虫洞跨链桥攻击中,以太坊和 Solana 损失了近 3.2 亿美元。

  • 2021 年 8 月,黑客通过 Poly Network 的智能合约漏洞成功实施了价值 6.13 亿美元的加密货币抢劫。

  • 早先的智能合约安全问题的例子,例如 Parity technologies 被盗 1.5 亿美元,Genesis DAO 被盗 5000 万美元。

  • ······

智能合约技术的基础之一是其不变性。部署后不可更改是一项出色的安全功能,但这也使得部署后出现的已知错误难以修补。常发生的一些安全事故往往出自几类重复的安全漏洞,这些安全漏洞主要有:

重入(Reentrancy Attack):当利用者在第一次调用完成之前重复调用函数时,就会发生重入漏洞。利用此漏洞的攻击者可以在余额设置为 0 之前多次提取余额。

Over/Under Flows:以太坊虚拟机对所有整数使用固定大小的数据。如果整数变量只能存储 0-255 之间的数字,则尝试存储高于或低于可接受值的整数将导致上溢或下溢。这些漏洞允许攻击者创建意想不到的逻辑流。

抢先交易:抢先交易攻击利用了区块链技术处理交易的方式。由于交易被收集到区块中并作为各个区块的一部分添加到分类账中,不良行为者可以购买大量资产以响应将波动资产价格的大笔交易。通过增加比他们所针对的大笔交易更高的费用,他们可以保证他们的交易将被首先处理。在大笔交易使资产价格出现波动后,剥削者出售他们购买的资产。

计算不正确:由于智能合约处理大量资金,偶尔还会处理各种类型的资产,因此所有数学计算都必须正确。不正确的小数处理和费用计算可能导致资金损失或资金被无限期锁定。

如何保障智能合约的安全?

以太坊在官网上展示了其定义的智能合约的最低安全限度其中包括:


  • 所有代码应该被存在于一个版本控制系统当中,例如 git

  • 所有的代码修改都应该通过拉取请求来进行

  • 所有的拉取请求都应该有至少一个审核员。如果这是一个个人项目,请考虑寻找另一位个人作者和一个交易代码审核员。

  • 使用开发以太坊环境(请参阅:Truffle),只需一个命令就可以编译、部署和运行一套针对您的代码的测试

  • 已经通过 Mythril 和 Sliter 等基本代码分析工具运行了代码,最好是在合并每个拉取请求之前,比较输出中的差异。

  • Solidity 代码编辑器不会发出任何警告

  • 您的代码有据可查

这是从开发过程中能够定义的最低限度的安全标准,也是智能合约开发者行之有效的安全指南。然而,保障智能合约的安全的复杂度是远高于最低安全限度的。


除了在开发过程中遵守有效的安全标准之外,智能合约还需要有一个深思熟虑的错误修复升级路径。例如,添加速率限制和最大使用量功能是管理风险金额的绝佳方式;同时安全类工具也提供了一定帮助,智能合约审计环节也应该慎重对待;在测试网上发布智能合约并向用户和其他开发者提供漏洞奖励是另一种发现潜在漏洞的好方法。

纵然这些都是被例证了有效的智能合约安全方法,但安全事故依旧频出。为此,在 TinTin Meeting 第十六期中我们邀请到了行业中对智能合约安全有研究和造诣的安全工程师、技术研究员、信息安全专家、智能合约安全审计专家等专业人士,针对智能合约安全进行一场圆桌会议,旨在为正在被智能合约安全问题所困扰的开发者提供最新的行业资讯和安全方法。以下是本场活动的详细信息:

活动时间

2022 年 12 月 24 日(周六)11:00 UTC+8

活动主题

黑客事件频发,智能合约安全的出路在哪里?

活动流程

11:00-11:40 圆桌讨论

11:40-11:50  Q&A

参与方式

1、关注 TinTin 推特账号:@Tintinland2021。

2、在 Twitter Space 中观看活动直播 :https://twitter.com/i/spaces/1YpKkgjVZgmKj

活动嘉宾

  • 圆桌嘉宾:Yuki Pan -- Moonbeam 中文社区经理

  • 圆桌嘉宾:Daniel Tong -- Verilog Solutions Co-Founder

  • 圆桌嘉宾:Yety -- Armors Head of North America

  • 圆桌嘉宾:Adam -- SharkTeam Tech VP

  • 圆桌嘉宾:Larry Yang -- CertiK Security Engineer

  • 圆桌嘉宾:Rivaill -- Supremacy Co-Founder

区块链技术的未来取决于构建其中的开发人员。智能合约安全某种程度上被广泛认为是区块链安全,因此独立开发者的行为也会影响公众对区块链的认知。频发的安全事故势必会伤害到用户的信任和信心,2022 年 12 月 24 日(周六)11:00 参与进我们的 TinTin Meeting,和安全专业人士一起圆桌热聊智能合约安全的出路和解决方式在哪里?


关于我们

ABOUT US



TinTinLand 是赋能下一代开发者的技术社区,通过聚集、培育、输送开发者到各开放网络,共同定义并构建未来。


Discord: https://discord.gg/kmPnTDSFu8

Twitter: https://twitter.com/Tintinland2021

Bilibili: https://space.bilibili.com/1152852334

Medium: https://medium.com/@tintin.land2021

YouTube:https://www.youtube.com/channel/UCfHiMcFt-4btbC75FsReQhQ


推荐阅读
  • 朱晔的互联网架构实践心得S1E7:三十种架构设计模式(上)【下载本文PDF进行阅读】设计模式是前人通过大量的实践总结出来的一些经验总结和最佳实践。在经过多年的软件开发实践之后,回过头 ... [详细]
  • 范式转移:构建超级应用——胖应用 + 胖协议
    范式转移:构建超级应用——胖应用 + 胖协议 ... [详细]
  • 四月份NFT优质榜单
    四月份NFT优质榜单 ... [详细]
  • Harmony 与 Game Space 达成合作,在 Shard1 上扩展 Web3 游戏
    旧金山20 ... [详细]
  • Ansem 最新雄文:软着陆后,加密市场下阶段趋势与核心叙事
    市场最糟糕的时候已经过去,以太坊合并前不太会看到新的低点;但仍需来自关注宏观市场的不确定风险。撰文:Ansem ... [详细]
  • 谁是更好的选择?
    原文作者:DefiSurfer编译:LlamaC ... [详细]
  • ​截至3月5日,NEAR总供给为1,123,870,371,流通供给为865,616,374,交易笔数为283,474,197,突破2亿8千万大关!账户总数为24,16 ... [详细]
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • 加密世界下一个主流叙事领域:L2、跨链桥、GameFi等
    本文介绍了加密世界下一个主流叙事的七个潜力领域,包括L2、跨链桥、GameFi等。L2作为以太坊的二层解决方案,在过去一年取得了巨大成功,跨链桥和互操作性是多链Web3中最重要的因素。去中心化的数据存储领域也具有巨大潜力,未来云存储市场有望达到1500亿美元。DAO和社交代币将成为购买和控制现实世界资产的重要方式,而GameFi作为数字资产在高收入游戏中的应用有望推动数字资产走向主流。衍生品市场也在不断发展壮大。 ... [详细]
  • Google在I/O开发者大会详细介绍Android N系统的更新和安全性提升
    Google在2016年的I/O开发者大会上详细介绍了Android N系统的更新和安全性提升。Android N系统在安全方面支持无缝升级更新和修补漏洞,引入了基于文件的数据加密系统和移动版本的Chrome浏览器可以识别恶意网站等新的安全机制。在性能方面,Android N内置了先进的图形处理系统Vulkan,加入了JIT编译器以提高安装效率和减少应用程序的占用空间。此外,Android N还具有自动关闭长时间未使用的后台应用程序来释放系统资源的机制。 ... [详细]
  • 浏览器中的异常检测算法及其在深度学习中的应用
    本文介绍了在浏览器中进行异常检测的算法,包括统计学方法和机器学习方法,并探讨了异常检测在深度学习中的应用。异常检测在金融领域的信用卡欺诈、企业安全领域的非法入侵、IT运维中的设备维护时间点预测等方面具有广泛的应用。通过使用TensorFlow.js进行异常检测,可以实现对单变量和多变量异常的检测。统计学方法通过估计数据的分布概率来计算数据点的异常概率,而机器学习方法则通过训练数据来建立异常检测模型。 ... [详细]
  • 寻求更强大的身份和访问管理(IAM)平台的企业正在转向云,并接受身份即服务(IDaaS)的灵活性。要为IAM选择正确的场外解决方案,业务管理人员和IT专业人员必须在实施之前评估安全 ... [详细]
  • 智慧博物馆信息系统建设方案
    3.信息化系统建设3.1博物馆RFID藏品管理系统3.1.1系统概述博物馆藏品保管是一项十分复杂又繁琐的工作。从事保管工作除了经常、及时地进行藏品的登记、分类、编目、保养和修 ... [详细]
  • 博客_2018年博客总结
    本文由编程笔记#小编为大家整理,主要介绍了2018年博客总结相关的知识,希望对你有一定的参考价值。前言     ... [详细]
  • 为元宇宙提供动力的 5 项重要技术
    元宇宙是你肯定听说过的东西。在过去的一年里,每个人都在谈论它。这是技术领域的下一件大事。Bloomberg情报高级行业分析师马修·坎特曼(MatthewKanterman)的分析显 ... [详细]
author-avatar
浅蓝色shenjinjin
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有