月亮链 月亮链
Ctrl+D收藏月亮链

区块链:区块链安全100问 | 第八篇:智能合约自动化审计介绍_DECODE价格

作者:

时间:1900/1/1 0:00:00

前言

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

PART01-智能合约自动化审计介绍

随着区块链技术越来越火,并在不同的行业有所应用,如金融、游戏、版权、溯源等;其中出现过不少的安全问题,尤其是区块链的智能合约发展至今,暴露出的问题不少,智能合约的正确性和安全性面临着巨大的问题;在海量的智能合约中,最好的一种设想就是通过自动化审计来降低人工审计的复杂度。同时市场上有安全公司,也推出各自的智能合约自动化安全审计平台,那么今天我们就来介绍一下智能合约自动化审计。

中制协:“南海平台”区块链互动分账核心中台已开发成功:6月22日,中国电视剧制作产业协会发布通知称,“南海平台”区块链互动分账核心中台已开发成功,制作、分发、播送、收费、收看各资源整合正顺利进行。协会成员和行业伙伴都已积极进行组合,今年四季度将以经典老剧免费试链运行,年底拟首轮剧独家上链运营,正式推出。

据中国电视剧制作产业协会介绍,“南海平台”是一种新型的数字化集发平台。它以首轮剧为主要传播内容,采用全新的区块链分账模式,彻底铲除“高片酬”、“假收视”、“拖欠款”三座大山;数据实时上链,可追溯但不可更改,真正实现公正、公开、透明、互动、实时的制播生态模式。(界面新闻)[2022/6/23 1:25:17]

我们把自动化审计分为三个部分:

第一种就是特征代码的匹配;第二类就是基于形态化验证的自动化审计;最后一类是基于符号执行和符号抽象的自动化审计。

动态 | 日本前足球代表本田裕介宣布成立区块链基金:据coinpost 5月31日消息,前足球队代表本田裕介在区块链企业家大邱圭佑的广告周亚洲会议上宣布成立新的区块链基金。会上并没有详细介绍区块链基金和投资的未来计划等。[2019/5/31]

1)特征代码匹配

首先特定代码匹配。大家从名字上来看应该就能理解到,其实就是对恶意代码进行一些提取抽象,像我们之前做的代码静态检测,我们抽样成一种语义匹配,然后再去匹配它的静态源代码。

这种审计的方法的优点是显而易见的,比如说速度很快,因为它就是对源码进行一个字符串的匹配。第二是它能够迅速地响应新的漏洞,因为这种审计方法大部分是以插件形式开发,比如出现了一个新的漏洞,我们就可以快速提交一些新的匹配模式。

动态 | “明镜台”区块链平台今日正式发布:今日,和信汇通召开“明镜台”新品发布会,“明镜台”是借助区块链技术的可溯、防篡改、强身份标识、可靠信用传递等特性开发的区块链落地项目,是独立开发的分布式营销云平台。“明镜台”可提高企业商品的流动性,使企业掌握直接触达终端消费者的途径,提升企业营销效率和营销质量,可广泛应用于生产型企业、销售渠道、媒体、电商、微商等商业环境。[2018/11/27]

那么它的缺点在哪里呢?我们所理解的现在的区块链都应该是公开透明的,但实际情况并不是这样,我们大概做了一个统计,目前在以太坊上其实有超过一半的智能合约是不开源的,只暴露一个OPCODE。

OPCODE的分析对于安全人员来说也面临着巨大的挑战,有些人费了十分大的力气,去逆向OPCODE,这就导致了它的适用范围极为有限。

金色独家评论 黄震:推进区块链产业发展不可碰触金融监管红线:6月14日13:59,重庆市经济和信息化委员会在其官网发布《我市五大举措积极推进区块链产业发展》一文。“组建区块链数字资产交易所”是官方第一次表态将组建区块链数字资产交易所,消息立即在圈内引爆。当天晚上18:32,有消息称,央行总部刚刚发出内部通知,将马上与地方政府沟通,立即叫停该项目,据称该决策来自顶层决议,消息可靠性很大。金色财经查询发现,在重庆市经济和信息化委员会官网上,该内容已经删除。中央财经大学教授、金融法研究所所长、中国首个区块链技术与应用协会副会长黄震分析称:“前段时间习总书记讲话提到两次区块链,重庆经信委本想趁势而起,加大区块链技术和产业的支持力度。但数字资产交易所涉及金融监管问题,去年以来中央已不断申明:所有金融业务必须纳入监管;所有的金融机构必须牌照管理。正当央行互联网金融风险整治将重点放在清理数字货币交易所之际,重庆经信委的原有设想和表述与中央金融监管政策有所冲突,涉及碰触红线,有关方面应该是及时认识到了这一点,应该会做出更准确表述。”[2018/6/15]

其次就是漏报率高。因为它的一些静态审计方法其实并不和传统的静态代码审计方法一致,传统的静态审计方法,比如说APP检测,会调用库里面,确定稳定的一些函数,来对它进行审计,但智能合约里面它的一些函数、它一些特征等等,还是变化性比较多的,所以说它的漏报率会比较高。

2)基于形式化验证的自动化审计

使用形式化验证来审计智能合约安全,将EVM编译后的一些OPCODE,通过特定描述语言转化成了一个形式化的model,然后通过形式化model的验证来去判断它代码中的逻辑是否存在问题。

3)基于符号执行、符号抽象的自动化审计

基于符号执行、符号抽象的自动化审计检测出来的数据还是需要人工进行二次确认,这个工作其实是非常繁琐。

PART02-一个出色的智能合约自动化审计系统该满足什么条件?

1)自动化

要求对智能合约的安全审计,要全自动,或者至少是半自动的,即上传合约源代码或提供智能合约的token地址,即可由系统,自动化进行合约的安全扫描。并且能够按需要配置为周期调度自动进行调度审计。

2)准确性

要求对智能合约的安全审计,误报率低。

3)高效率

要求对智能合约的安全审计必须是高效的,即要求审计的时间不能太长,越快越好。

4)无风险

要求对智能合约的安全审计不会破坏或修改原有的合约的功能。

只有做到了以上4点,才是一个基本合格的智能合约自动化审计系统。

除此之外,如果要做得更加的专业,更出色,还需要满足下面的四个需求:

第一、系统具有智能合约的当前标准规范管理;这样一来,使用者可以在系统上传,下载标准规范进行参考。如果说审计出来的安全问题,能与标准规范相对应,并定位到标准规范是最好的,但是当对智能合约安全审计的标准规范不细或缺乏,做到这一点太难了。

第二、系统的使用操作体验要好;简单举例:

可以采用向导式,引导用户熟悉系统的功能操作。

具备用户自定义合约的行业分类以及所属厂商分类等。

审计出来的安全问题,能定位到行列,并至少能提供此安全问题的修正安全,当然,有自动化修正更好,具备自动化修正功能,相应提供保留原内容的版本,以便可进行回退和比较。

第三、易扩展;当前,区块链的平台技术以及安全专家针对区块链智能合约发现的安全问题的checklist是不断演进的,系统应很好的解决这方面的需求,就需要系统有一个很好的易扩展的设计要求。

第四、对安全审计结果报告展现丰富;能导出PDF,EXCEL,WORD,HTML格式是必需的,报告的展现应有图表,表格元素的体现,当然,要做好这点,需要你对系统的使用方有更多的了解,针对用户做些定制他们关注的报告就更出彩了;报告出彩的功能还可以是报告中有审计历史对比趋势分析等。

标签:区块链ODEPCOCODE区块链域名是什么意思RODEO价格SteepCoinDECODE价格

比特币交易热门资讯
比特币:如何跨越比特币的认知障碍?_区块链

昨天回到母校,和学校老师的交流过程中,突然有老师提到比特币,马上大家的话匣子就打开了。一位老师说他始终不明白比特币的价值在哪里?另外有两位老师平时相互交流比较多,并且有多次机会接触比特币.

1900/1/1 0:00:00
MET:元宇宙的新局,为何解不了Meta的旧困?_META

文章来源:凤凰网科技链接:https://tech.ifeng.com/c/8DNjnsStnX2采写/邓小轩编辑/陈纪英这个春节,MetaCEO扎克伯克的日子不好过.

1900/1/1 0:00:00
BTC:Willy Woo抨击Peter Schiff不涉足加密市场就像柯达没有选择拥抱数码时代_LSH

EuroPacificCapital首席执行官、比特币反对人士PeterSchiff发推文称:CNBC的观众正以33%的溢价来抢购GBTC,为了支付2%的BTC管理年费,这样一来.

1900/1/1 0:00:00
PRO:ProShares将于下周在美国推出首个比特币期货ETF,交易代码为BITO_RIF

据Coindesk10月16日消息,在美国证券交易委员会的五位委员举行会议后,SEC于周五首次批准了比特币期货ETF。据悉,ProShares于夏天申请的比特币策略ETF预计将于下周启动交易.

1900/1/1 0:00:00
ETH:ETH周报 | 开发者已针对信标链停止出块故障发布补丁;Direxion、Valkyrie向美SEC提交以太坊ETF申请(5.8-5.14)_UNI

一、整体概述ETF?发行商?Direxion?已向美国SEC?提交以太坊?ETF?申请。根据其分享的招股说明文件图片,该基金名为“DIREXIONETHERSTRATEGYETF”,计划在纽约证.

1900/1/1 0:00:00
PIC:不依赖人类反馈来评估反应?一文浅谈 Anthropic 的“宪法 AI”技术_Phantasia

来源:ArsTechnica编译:巴比特 图片来源:由无界AI工具生成周二,人工智能初创公司Anthropic详细介绍了其“宪法AI”训练方法的具体原则.

1900/1/1 0:00:00