-
-
[分享]区块链安全的攻防:安全是重中之重,需要各方企业加入促进生态健康发展 | 区块链P.O.D大会
-
发表于: 2018-9-20 19:43 4004
-
9 月 5 日,由 Odaily星球日报主办、36Kr 集团战略协办的 P.O.D 大会在北京举行。当日下午,在主题为 “区块链安全的攻防” 的圆桌论坛上,星球日报资深分析师李雪婷担任主持人,库神 CTO 叶飞、看雪 CEO 段钢、慢雾科技安全负责人郭阳、北大区块链技术小组负责人任昆鹏共同探讨区块链安全的重要性、区块链领域的攻防技术、区块链游戏的安全建设以及安全服务公司在区块链生态扮演的角色。
如何看待区块链安全的重要性?
目前,区块链还处于一个相对早期的阶段,安全问题却屡报不止,人们就会质疑区块链技术是否具有安全这个特点。究竟应该如何看待区块链安全的重要性?对此,嘉宾们一致认为安全是区块链领域的重中之重。
库神 CTO 叶飞表示,安全毫无疑问是区块链领域的核心问题。目前区块链的安全问题主要集中在共治机制安全、私钥安全以及智能合约安全等方面。
看雪 CEO 段钢补充道,区块链项目的成与败,安全起到一票否决制。如果一个项目在开始之初没考虑到安全,那么有可能导致安全成为其失败最关键的一个因素。
区块链领域的攻防技术是否有创新?
安全也是互联网领域的一个永恒主题,互联网安全主要是从逻辑正确、技术计算结构来解决逻辑缺陷和被利用的问题,解决这些攻防问题。而针对区块链领域的攻防问题,嘉宾们表示,区块链没有绝对安全,需要从不同方面去解决问题。
段钢认为,区块链企业的安全建设和传统企业类似,最关键的是企业员工的安全意识和安全技能建设。企业需要建立安全规章制度,为员工提供安全意识和技能培训,提升技术人员的安全编码能力,才能从源头上解决企业安全问题。此外,可以邀请第三方企业对业务进行安全测试。
针对智能合约、DApp 安全问题,北大区块链技术小组负责人任昆鹏表示,区块链创业公司可能不具备足够的财力支持,就会用开源的智能合约形式化验证工具,或者开源工具检测 DApp 或者智能合约的安全。可是区块链技术不像一些传统的开发框架,具有很强的安全编码规范,因此推动开发者的安全编码意识是特别重要的。另外,DApp 需要完全审计程序的逻辑问题。
从私钥的角度来看,叶飞认为,针对私钥级别的攻击通常是以下几种情况:直接获取私钥文件、钓鱼网站、种子文件存在邮箱等中心化系统等。而防的方面,核心是要做冷存储、冷签名。这是降维的解决方案,想尽办法防御,还不如直接断网。
如何做好区块链游戏的安全建设?
最近热门的 Last Winner、Fomo3D 等区块链游戏存在一些漏洞,这类安全问题是否有解?对此,嘉宾们的看法不尽相同。
任昆鹏表示,如果公链安全技术能发展到一个很强的可信安全保障,这些安全问题就完全可以解决的。
另一方面,慢雾科技安全负责人郭阳认为,Fomo3D 等区块链游戏已经完全上升到人性层面,存在很多诱惑,不再是安全公司披露后能阻止的事情。很多仿 Fomo3D 游戏存在严重的问题,比如合约权限被项目方直接控制,存在提币跑路的可能性,建议大家不要去碰这类资金盘游戏。
叶飞表示,智能合约的安全是无止境的,有可能是程序问题,也可能是虚拟机问题。
那么区块链游戏应该如何提高自己的安全系数?嘉宾们认为开发者需要保持良好的编码习惯,项目方则需要做好审计工作。
任昆鹏认为,开发者要比黑客更了解底层的运行机制,平常需要注意编码习惯。段钢建议,区块链游戏公司在游戏上线之前做好代码审计,同时提高开发人员的安全意识和编码水平。
安全服务公司在区块链生态扮演什么角色?
现在区块链行业有各种各样的安全漏洞,一些技术安全公司也致力于生态安全的布局,为用户提供安全解决方案和服务,但是不同的公司有不同的切入点。
对此,段钢认为,越来越多的公司关注安全,以及各方面公司的加入,有利于区块链生态健康发展。他还表示,未来整个区块链行业安全发展,人才是至关重要的因素。
任昆鹏表示赞同。他认为,如果更多传统安全企业能够加入到区块链安全行业中,肯定能壮大安全力量。区块链安全还是需要借助原来的力量,不仅包括原来的传统安全力量,还有人工智能和大数据分析的力量去保证其安全建设。
圆桌论坛实录
主持人李雪婷:谢谢大家今天来参加我们这个会议,我先做一个自我介绍,我是星球日报研究院分析师李雪婷,我们今天圆桌论坛的主题是区块链安全的攻与防,是这样的,我们请各位嘉宾先做一个自我介绍,从叶总开始。
叶飞:大家好,我是库神的 CTO 叶飞,库神钱包的基本情况我们袁总刚才已经大概介绍了,总体而言,我们团队专注于存储环节,是国内最早专业做冷钱包的团队。我个人也比较早进入这个行业里面,一直在做技术,我是一个不折不扣的比特币脑残粉,自从看到中本聪论文之后就为之着迷,希望今天我的分享对大家有帮助。
段钢:大家好,我是看雪创始人段钢,看雪是一个开发者社区, 创建于 2000 年,历经 18 年的发展,现在专注于 PC、移动、智能设备、区块链安全研究及逆向工程,欢迎大家多多参与。
郭阳:大家好,我是慢雾科技安全负责人郭阳,叫我海贼王也可以,因为在安全行业大家都会有个花名。我们慢雾科技专注于区块链安全领域,本身基于传统安全,但是相对于传统安全,我们觉得区块链安全领域有更多的发展空间和想象力,所以我们慢雾决定专注于区块链安全领域。不管是比特币、以太坊、EOS,这块的安全我们都保持持续的关注,包括国内的公链唯链、本体和我们都有具体的合作,如果有项目方或者其他合作伙伴需要提供安全服务可以到厦门来参观一下慢雾顺便谈谈业务,毕竟厦门的海鲜很棒。
任昆鹏:大家好,我是北大区块链技术小组的研究负责人,北大区块链技术小组也是正在筹办北大区块链协会,我们研究小组方向分为公链开发还有链上数据安全分析两个方向,我们小组开发了一款针对 BCH 的交易安全分析系统,我本人也对 Web 包括二进制安全有点研究。
李雪婷:谢谢各位嘉宾介绍,现在讨论开始,我们大家都知道区块链作为一种新兴技术,发展势头非常迅猛,但是不够安全,我们认为现在这个行业正处于一个薛定谔的现状,区块链似乎也在一个成功被黑、还没有出事之间徘徊,区块链安全似乎也一直在攻与防中前进,今天请到各位专家和我们一起探讨这个话题。首先我们知道区块链还处于一个相对早期的阶段,但是安全问题却屡报不止,人们就会质疑,区块链技术是否具有安全这个特点了,请问现场这四位嘉宾,如何看待区块链安全的重要性?
叶飞:安全毫无疑问是区块链领域的核心问题。不过这个议题有点大,可以简单分类,首先是区块链层面,共识机制的安全问题其实一直存在,现在有很多链容易受到 PoW 攻击;在数字资产层面,核心安全问题是私钥的保管问题;另外,近期还有一类安全问题经常被提及,就是智能合约的安全问题。无论是个人还是企业,如果想进入这个行业,都需要优先考虑安全问题,安全一出问题搞不好就是玩完的结局。
段钢:安全来说,在计算机所有系统,所有应用都会存在一个安全问题,区块链安全本质,就是传统计算机网络或者一些应用安全的综合体现,黑客之所以对区块链安全比较重视,一个重要原因是利益,传统一些安全漏洞的挖掘,那些黑客要变现,他们要找一个靠谱买家才可以变现。区块链有一个特殊性,这些黑客通过一些技术,利用交易所或者漏洞,或者矿基直接获得虚拟币,这个给他经济上的刺激是很大的。另外还有就是法律上来说,比如像我们银行系统,也是会有安全问题,但是为什么我们很少听说银行有什么漏洞曝出来,或者造成一些损失,因为大家不敢越雷池一步,有可能会有刑事犯罪问题。区块链是跨国、无政府无趋势性质,造成犯罪成本低,所以那些黑客由于利益,或者这方面风险评估,在这方面进行一个大的精力投入,安全在区块链之中,像刚才叶飞总说的,是重中之重,区块链一个项目的成与败,安全起到一票否决制,如果这个项目开始之初安全没考虑到,有可能会导致这个安全成为这个项目的失败的最关键的一个因素,谢谢。
郭阳:我非常认同前面两位前辈的观点,安全是重中之重,我举个例子,比如说在现实工作中,你在银行说你账户上有一百万,丢了,这时候你可以找银行,银行可以说帮你把这个记录追踪回来找到。在区块链的世界中是几乎不可能找回的,比如某人丢了几万枚比特币,我觉得目前没有任何一个公司或者个人敢站出来说他一定能把这个币找回来,对任何人来说你拥有的比特币,其他人在没有你的私钥的时候都无法转走,当然对受害者和攻击者都是如此,都很难找回。所以这个例子一举大家就明白了:安全重中之重。
任昆鹏:从一个开发者角度来看,我们是希望区块链系统会变得越来越安全,我们开发者的资产,包括用户的资产都在链上保持,如果黑客会发现一个漏洞,他们就可能很轻易把我们和用户的资产转移出去,而区块链本身是建立在完整的密码学基础上,但是有一些去中心化、安全、不可篡改的优点,就是这些优点成为这些漏洞的曝露点,包括数据隐私性暴露出来,我认为区块链技术发展,安全是放在第一位,因为在互联网兴起之前,如果没有公钥密码的发展,互联网也不能走到今天,所以我感觉安全的区块链发展是重中之重的。
李雪婷:谢谢四位嘉宾,四位专家都在各自领域术业有专攻,大家都达成一个共识,就是安全这一环节对于区块链发展至关重要,区块链的安全问题解决确实是迫在眉睫,刚才任总也提到了互联网的发展,我们知道在互联网领域,安全也一直是一个永恒的主题,互联网安全主要是从逻辑正确、技术计算结构来解决逻辑缺陷和被利用的问题,解决这些攻防问题。在区块链领域,作为一个新兴领域,在攻防的环节有什么技术创新,也想请各位老师分享一下。
叶飞:攻防这个议题也很大,我还是针对自己比较熟悉的私钥保管,简单说一下,针对私钥的攻,如果是针对个人,一般来说,有直接拿走私钥的,或者间接盗走助记词,比如用户不注重备份,放在邮箱等中心化服务器;再一个就是钓鱼网站,对交易平台进行攻击,也有直接攻击热钱包的,或者攻击平台数据库,制造虚假提现,间接盗走资产。
我们发现以上这些问题有一个共同点,就是私钥触网,所以基本上这个行业到 2014 年的时候,大家有一个共识,就是要做冷钱包、冷签名,保证私钥彻底不触网,这就是我们防的核心思路。但是彻底冷就比较难,因为当我们发起一笔交易的时候,无论如何都会有联网的环节。因此我们想到了冷热分离架构,硬件冷钱包负责管理私钥,比如生成私钥,签名,联网端 App 负责查询网络信息、广播交易等,两者通过二维码交互信息。
我们将这个方案跟传统的密码学专家讨论,他们觉得很有意思,认为这是一种降维的解决方案,与其保持联网,然后想尽办法架起一道坚固的防线,努力防御,还不如直接断网,这就是库神钱包的防的核心思路。
段钢:区块链企业的安全建设和传统企业类似,大部分企业在发展初期,往往把用户量和业务发展速度放在第一位,常常会忽视了企业的安全建设,从而带来了大量的安全问题。从企业内部,把企业安全规章制度建立起来,特别是员工意识和安全技能进行一个培训,这方面是一个比较重要的,还有一些企业的规章制度,包括代码的审计,安全编程的技能,从内进行一个提高,从源头上解决企业安全问题。包括区块链本身也是这样。
这个做好了以后,可以邀请第三方企业对这个平台或者这些交易所进行一些安全性测试,从内跟外进行配合,可以把安全做到一个新的台阶上。最关键就是员工安全意识和安全技能和安全制度。
郭阳:我这边观点跟两位不谋而合,做安全做到最后就是人的问题了,但是有句话先放在这里,没有绝对的安全。不管做什么,做传统行业也好,区块链行业也好,安全没有绝对。但是当黑客来攻击的时候,我们慢雾相当于在帮客户做防守,但是未知攻焉知防,所以我们在对一个项目提供安全服务的时候,首先我们会以黑盒的方式从外围模拟黑客攻击,找到系统的薄弱点和存在的安全隐患,然后以灰盒方式配合项目方从内部做好防御措施。之前北京有一个事件是运维盗取公司比特币,这种属于内部的攻击需要做好内部风控和建立一套完善的安全体系,一个是来自外部的黑客攻击,如果你没有做过专业的安全审计,或者本身员工安全意识不够高,交易所很容易就成了受害的一方。
针对不同的项目有不同的安全解决方案,比如做一款钱包你的私钥该如何在用户手机中存储,比如交易网站你的私钥签名服务该如何设计等。核心思想就是保证私钥安全和数据的安全。
最近爆发一个漏洞,我们发现有很多黑客拿恶意构造的图片,去所有可以上传图片的交易网站上上传恶意构造的假的身份证 “图片”,身份证” 图片“一上传过去整个服务器触发恶意命令执行,黑客就拿到这个服务器的 SSH 连接,进一步拿到数据库用户名密码,黑客就可以直接改数据库,给账上加点钱直接交易,完成了交易之后,黑客会删除数据库所有关于他的操作记录,把对应的账平上。交易网站这边对账是很难查到异常情况的,除非说发现了服务器异常的进程,或者发现一些恶意脚本,这种情况下如果不是专业安全的人员,或者运维没有安全意识根本查不出来。我们在为客户提供安全服务的时候会提供对应的解决方案,比如如何防御,以及出问题后如何迅速止损,引导客户复盘如何避免下次不再发生类似安全事件。
当然做安全一定是建立在双方互相信任的基础上,如果客户不信任你,那么你的安全是很难进行下去的。目前来看,我们服务的客户对我们慢雾是非常信任的,因为我们能给他们带来安全感,安全感很重要。
任昆鹏:我这边特别同意前面三位前辈的看法,因为我本身是做区块链开发,对区块链安全比较感兴趣,我们这边开发平常可能会遇到一些智能合约包括 Dapp 的安全问题,我从这两个方面简单讲一下我对区块链攻防的看法。
首先在传统行业,传统安全可能大家如果想保证自己的网站安全,会买一些防火墙、入侵检测系统,可能还有一些渗透测试,代码审计服务,但是对于现在一些区块链的创业公司,或者技术团队,往往没有这么大的财政支持,他们可能就会去用一些开源的智能合约形式化验证工具,或者一些开源工具检测他们的 DApp 或者智能合约安全,我非常同意段前辈的看法,我们开发者首先要培养一个安全编码的意识,因为区块链技术才有几年时间,不像一些传统的开发框架,他们都有很强的安全编码规范,在区块链这方面,我感觉推动这种安全编码规范是特别重要的。
从攻击而言,我本身不是专门做攻防的,像做攻击的,我感觉 DApp 开发者这边要完全审计自己程序的逻辑问题,因为可能现在形式化验证工具会发现一些溢出漏洞,或者一些危险函数漏洞,但是如果一个 DApp 本身应用逻辑有问题,本身可能会损失很大一部分资产。我这边的观点大概就是这些。
李雪婷:好的,各位嘉宾从不同的维度,包括个人跟用户钱包,还有用户的意识,还有一些制度技术方面维度来讲安全,所以说互联网跟区块链没有绝对安全,我们需要从不同方面解决这个问题,因为区块链技术运用有不同的业务场景,我们知道有金融有法律,有一些版权,还有一些医疗领域,我们最近比较追捧的就是区块链的游戏,我们熟知的 Last Winner、Fomo3D 这些游戏之后也存在一些漏洞,我就想问一下像这种区块链安全问题有解还是无解,区块链游戏应该注重哪些方面建设提高自己的安全系数,我们先从这边开始。
任昆鹏:这个有解和无解是一个很难回答的问题,但是针对 Fomo3D 那两个漏洞我感觉是有解的,我个人的畅想它是以太坊自身一个安全缺陷,如果我们公链安全技术能够发展到一个很强的可信安全保障,这些安全问题就完全可以解决的。另外一个就是我们怎么在这一个不完全完善的区块链底层技术之上开发出安全的区块链程序,我们就要去比黑客更要了解底层的运行机制,比如你以太坊的敏感函数、Gas 机制,这些我感觉是更像是我们一些开发者和黑客之间进行较量。
因为我们技术小组也有开发过一些以太坊上面的游戏,包括其他公链层面的游戏,我们这边可能针对在游戏上线之前会邀请一些测试,包括我们本身请一些比较有名的安全团队,我们自己用一些开源的测试框架,包括小组内部测试,我感觉区块链本身现在安全问题支撑不了游戏,我们开发者如果注意一些平常的编码习惯,还是能解决这些问题。
郭阳:站在我们安全公司的角度,我们发现有一个很奇怪的现象,就是我们慢雾披露出来说这个游戏存在漏洞或者不安全建议大家不要去玩的时候发现里面钱越多,越来越多人去玩了,这个时候我们就会思考到底该不该披露 Fomo3D 这种游戏,报出来以后有更多的人学习如何复现攻击,成为攻击者。由此可见,像 Fomo3D 已经完全上升到人性层面,不再是安全公司披露后能阻止的事情了,有时候我们知道并不一定会中奖,但是有一个侥幸心理,安全可以解决技术上的问题,但是归根到人性本身是没办法的。所以说对于这个资金盘游戏,建议大家不要去玩。并且像 Fomo3D 这个设计还算良心的,我见过很多仿 Fomo3D 的,权限全在项目方手里控制,里面的以太坊完全由他控制,存在随时跑路的可能,建议大家不要去碰这种游戏,谢谢大家。
段钢:就是刚才说的区块链游戏有解还是无解问题,因为随着区块链技术发展,目前这些游戏主要是合约,由于这个特性决定,游戏上线以后代码没法修改,所以在游戏上线之前做好代码审计,以及提高开发人员的安全意识和编码水平,成为了区块链游戏公司必须要面对的问题。
叶飞:这是智能合约的安全问题,智能合约的安全是无止境的,有可能是程序开发的问题,也有可能是底层虚拟机的问题。一个现在看来没有问题的合约,可能过一段时间就会发现问题,所以说安全是无止境的。往前有什么样的坑我们是不知道的,但过往的别人踩过的坑,应该尽量避免,能做到这一点已经是非常不错的了。我们看现在链上很多有问题的合约,其实大部分是一样的问题,现在有很多人发布合约,还是随便找一份源码、或者自己搞一搞就发布,这就容易踩前人的坑,最好的办法是找专业的团队提供一份,或者写好的合约交由他们审核。
李雪婷:好的,就像叶总刚才说的,比如说区块链游戏项目开发方,如果他要开发这个智能合约,一些游戏智能合约之前,需要一些安全审计,因为像 Fomo3D 这种区块链游戏影响范围比较大,一旦发生被攻击的事件损失是比较严重的,也呼吁这些广大的用户开发者也谨慎。 由于时间的关系,我们最后一个问题,是这样的,现在我们区块链行业在这个生态领域有各种各样的安全漏洞,因为我们一些技术安全公司也致力于生态安全的布局,为用户提供一些安全解决方案跟服务,但是不同的公司有不同的切入点,有的像比较重视形式化验证,有的提供一些安全审计,有的提供一些专业的安全顾问这些服务。有的也比较重视一些隐私性跟可用性,还有一些公司比较重视全球社区的一些建立,吸引更多的极客加入社区,所以我想问一下各位嘉宾,在整个区块链生态中,这些安全服务公司在扮演着一个什么样的角色,在未来这些角色是否会有延伸或者变化?
叶飞:我们知道现在行业已经形成一个生态链了,比如上游的挖矿,在这个环节有专门做矿机、专门做矿池、或者部署矿场的;挖出资产后,有交易环节,这一直是最热闹的一个环节;也有专门做支付的团队、或者金融衍生产品方向的。库神从事于存储环节,我们的使命是做区块链资产的保护神,再具体一些就是提供私钥安全保管解决方案。我们公司现在是一家金融科技公司,现在最核心的是专注于做好硬件冷钱包。
段钢:区块链安全行业和技术的发展,离不开行业上的每一家公司的共同努力,更多专业公司和团队进入这个领域是好事,可以让这个领域更加健康发展。看雪的思路就是为大家提供安全理念和技能的学习和交流。安全这个环境跟别的领域不太一样,安全的环境是靠人解决,不像有些领域是靠一些自动化机械,通过一些规则就能解决问题,而安全这个领域必须靠人才去解决,而人才现在来说竞争是很激烈的,BAT 基本把核心人才抢跑了。那些中小的创业公司,包括一些新的公司安全人才这方面是很困难的,一个是你不一定能找到合适的人,另外一个薪水待遇成本也上去了,我觉得未来整个区块链行业安全发展,人才是一个起着至关重要的因素。接下来我觉得各行各业企业会进入这个领域,大家共同推进这个生态发展,大家一起把区块链安全市场越做越大、越做越好。
李雪婷:我们区块链行业希望越来越多的力量加入安全行业。
郭阳:在回答这个问题前我先问个问题,有人知道慢雾这个名字来自于哪里呢?恭喜那边两位小伙伴答对了,我等一下送出小礼品。在公司成立之初命名为慢雾科技,慢雾的灵感来自于科幻小说《三体》中的迷雾森林,所有的魔法攻击进入这个森林都失效了,这里是一个安全区域,我们慢雾就是要成为区块链世界里的安全区域,不管是做钱包也好,做 DApp 也好或者其他项目方,我们都能为你们带来安全和安全感,当然我们欢迎更多做安全的前辈,比如 TK 教主和袁哥等大牛进入区块链安全这个领域。包括我们在做一些项目审计的时候,有的客户对安全比较重视需要多家安全公司审计,我们也会推荐优质的同行,比如国内的知道创宇等,或者国外的 Cure53 等,包括后面段老师这块有什么合作我们非常欢迎。我们以非常开放的心态去面对这些,在我们慢雾科技官网所有审计的关键点包括一些技能全部对外开放,毕竟区块链世界就要以区块链的玩法去玩、去拥抱整个生态,谢谢大家。
任昆鹏:首先作为一个区块链开发者,我非常感到欣慰,因为听了几位前辈的介绍,我感觉现在区块链安全建设对以后区块链安全技术发展特别重要,慢雾包括看雪还有库神,可能看雪对区块链安全技术爱好者是一个很好的交流平台,我也看了慢雾他们公开一些开源项目,也是一个很好学习的途径,库神能够保证我们个人钱包的安全是特别重要的。我这边感觉如果更多的传统安全企业能够加入到区块链安全行业中,肯定能壮大这方面安全力量,我本身也是原来在 360 做 Web 安全,后面是跟着研究生导师转做区块链技术,我们北大区块链技术小组这边和区块链安全方面可能做的比较多的是区块链链上数据安全分析。我感觉区块链本身是一个很大的数据库,而且公开透明查询的。但是很多安全事件,包括交易所被盗事件,往往很难去溯源,因为本身区块链安全分析是必须要用数据分析,靠工具来进行分析,如果只有代码级的安全是无法做到链上数据分析的,这也是安全的两个方面,一个是代码级安全,另外一个数据级安全,在数据级安全方面,我认为区块链本身还是一个没有很多人探索的区域。我认为区块链安全还是需要借助原来的力量,不仅包括原来的传统安全力量,还有人工智能的力量去保证它的建设。
李雪婷:正如各位嘉宾所说的,相信未来攻防将会是区块链发展常态,区块链复杂性跟潜在的经济价值将会使得区块链安全日趋激烈,如何采取新的安全机制和发展新的安全手段,并且让这些技术和手段运行安全,将是区块链发展的下一个风口,我们也期待未来更多的力量加入到区块链安全行业内,为我们区块链发展保驾护航,也谢谢各位嘉宾分享,由于时间关系我们分享到此为止,谢谢大家。
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课