ART:区块链安全100问 | 第七篇:智能合约审计流程及审计内容_Idle Treasure Party

零时科技区块链安全100问正式上线,以通俗易懂的语言形式为大家讲解区块链行业知识,以及区块链生态应用存在的安全问题,让更多人了解区块链及区块链安全。

前言

当前区块链技术和应用尚处于快速发展的初级阶段,面临的安全风险种类繁多,从区块链生态应用的安全,到智能合约安全,共识机制安全和底层基础组件安全,安全问题分布广泛且危险性高,对生态体系,安全审计,技术架构,隐私数据保护和基础设施的全局发展提出了全新的考验。

美股开盘:美股区块链概念股涨多跌少:美股三大股指全线高开,道指涨0.29%,标普500涨0.31%,纳指涨0.55%。美股区块链概念股涨多跌少,柯达下跌1.36%,埃森哲上涨0.28%,overstock.com上涨4.18%;RiotBlockchain上涨0.31%,MarathonPatent上涨0.88%,Square上涨1.47%。[2020/8/28]

PART01-智能合约审计流程介绍

为了检查合约的安全性,一般会测试多种攻击,模拟多种攻击场景,通过标准审计流程进行安全审查,以确保合约是否安全。

声音 | 学习时报:增强数据观念 有效运用物联网及区块链等技术:学习时报今日发表文章《数联网发展的挑战与出路》,文章指出,“数联网”是大数据时代信息技术发展的重要产物,是大数据时代朝着数据融合方向发展的重要标志。从数联网建设着手推进数字中国建设的路径,要遵循数据行为规律,加强数据标准建设;培育理性的共享观念,营造和谐的数联网生态;融合法律法规与技术制度,构建数据安全保障机制;建立数据合作关系,促进数据社会成长。文章中表示,加强思维创新,增强数据观念,有效运用物联网、区块链等技术,将数据集中、分权管理、社会参与融入大数据治理的全过程。积极构建国家下一代大数据的基础架构,使得信息资源共享的理念成为全社会的共识,逐渐实现全社会信息资源的高质量共享,有效发挥数联网平台的高效网络价值。[2020/2/14]

正常审计流程应包括前期应用审计的需求沟通,比如审计合约内容、审计时间、审计预算等;确定审计需求后需要签订协议、达成共识;然后安全团队开始安全审计,以及审计报告的输出,开发团队针对报告中的安全问题进行修复,安全团队协助修改后的复测,确保安全问题已修复,提升合约的安全性。

动态 | 雄安将基于区块链等金融科技推动先进金融产品和技术落地:今日,“雄安发布”微信公众号发表了主题为支持民营经济发展的文章,在金融领域,中国工商银行河北雄安分行相关负责人表示,将不遗余力地支持实体经济发展。对一心一意做实业的企业,优先配给信贷资源。同时,还将基于区块链、网贷通、票据池等金融创新成果,推动最先进金融产品和技术在新区落地,更好地服务企业。[2018/11/21]

智能合约代码审计方式:

政策 | 杭州市政府办公厅:杭州都市圈应超前布局谋划区块链等未来产业:7月5日,杭州市人民政府办公厅答复浙江省政协十二届一次会议上提出的《关于加强杭州智慧都市圈建设的建议》(第48号),答复指出,杭州都市圈要全面对接国家数字经济发展战略,创建“互联网+”创新创业中心。聚焦新一轮产业科技革命,超前谋划布局虚拟现实、区块链、量子通讯、增材制造、商业航天、生命健康等一批重量级未来产业。[2018/7/5]

-了解智能合约协议的逻辑运转流程

-分析智能合约逻辑设计规范和设计目的

-工具测试智能合约存在的安全风险

-测试针对智能合约的常见攻击手法

-根据项目流程进行模拟算法漏洞测试

PART02-智能合约常规漏洞有哪些?

1)以太坊智能合约

重入攻击浮点数和数值精度非预期的Ether整数溢出重入攻击浮点数和数值精度默认可见性Tx.origin身份验证错误的构造函数未验证返回值不安全的随机数时间戳依赖交易顺序依赖Delegatecall调用Call调用拒绝服务逻辑设计缺陷假充值漏洞短地址攻击未初始化的存储指针代币增发冻结账户绕过合约Gas优化变量覆盖恶意后门2)EOS合约

权限校验漏洞转账通知伪造漏洞Apply函数权限校验漏洞整数溢出漏洞权限校验漏洞转账通知伪造漏洞Apply函数权限校验漏洞弱随机数种子漏洞冻结账户绕过漏洞拒绝服务漏洞代码逻辑漏洞假币攻击回滚攻击重放攻击恶意后门

PART03-智能合约审计报告的结构

1)审计报告的封面:

审计报告的封面中体现审计对象的名称、审计团队及报告的发布日期。

2)审计概述及项目背景:

概述和项目背景进行细致划分,使得审计报告更加清晰明了,其中项目背景对项目简介和审计范围做了详细介绍。

3)合约架构分析:

通过目录结构和合约详情说明该项目合约文件及对应合约的主要方法参数等。

4)审计详情:

在审计详情中通过风险分布、风险审计详情重点介绍合约审计过程中存在的相关风险,其中包括风险名称、漏洞描述、风险等级、安全建议、修复状态及审计结果等信息。

作为关心项目方安全的投资者,通过以上几个部分基本可以了解到如何审阅项目;剩下的部分则是审计团队安全审计的工具介绍、免责声明及安全审计团队的基本信息。

智能合约审计报告不是验证代码安全的法律文件;没有人能100%确保代码在未来不会发生错误或产生漏洞。审计团队对项目的审计报告只表示审计团队对项目进行过安全评估,这仅仅是保证你的代码已被专家校订过,基本上是安全的。选择权最终掌握在项目方及投资者手中。

区块链安全100问正在持续更新,欢迎大家后台评论留言自己的观点。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

区块博客

[0:31ms0-6:468ms