主页 > imtoken官网地址在哪里 > 赵赫:区块链现在是黑客的提款机,变现很容易|ISC2018

赵赫:区块链现在是黑客的提款机,变现很容易|ISC2018

imtoken官网地址在哪里 2023-07-11 05:19:12

ISC2018上,在中象比特主办的区块链与安全论坛上,中科院赵鹤博士分析了近年来多起著名的区块链安全事件背后的原因。 赵鹤本人不仅从事区块链的学术研究,也在行业深耕。 现任中科智联联合创始人。 他那天的演讲是那个分论坛上最受欢迎的演讲之一。 对于读者。

以下为雷锋网小编整理的赵鹤(钟印)在ISC2018区块链与安全论坛的演讲。

首先,让我自我介绍一下。 我是中国科学院的研究员。 2013年开始从事区块链和加密数字货币领域。

什么叫比特币_比特币程序员叫什么_什么叫挖比特币

开门见山。 为什么很多人说区块链技术很安全,属于一种数据安全保护,或者说是一种软件系统安全架构的技术。

比特币程序员叫什么_什么叫挖比特币_什么叫比特币

很多人可能都听说过,包括数据公开透明,记录不可篡改,还有常说的分布式共识,对代码的信任,对数学的信任,对组织的信任。 今天,很多老师和同学都分享了。

我们的重点是谈论它的不安全性。 为什么说区块链还不是很安全呢?

什么叫比特币_什么叫挖比特币_比特币程序员叫什么

其实是区块链的现状造成的。 区块链的现状相当于黑客的提款机,很容易套现。 之前的老师也说过,跟钱基本是一样的东西,很难追踪。 我们将区块链中的各种攻击和各种形式的漏洞分为三类,和大家一起讨论和分享,最后给出我们的建议或者一些最佳实践的内容。

什么叫比特币_什么叫挖比特币_比特币程序员叫什么

首先第一个是应用层攻击,主要是说钱包符合智能合约,比如这两个范围的攻击方式。

二是与区块链相关的交易所和在线服务商。

第三种是专门针对区块链本身的攻击手段。 比如共识算法、密码学基础、P2P网络等等。

第一部分是应用端的攻击。 这可能是最具爆发力的,也是普通用户最容易体验的。 有一种强烈的威胁感。 这种货币怎么可能存在? 保存它并丢失它是可能的。

什么叫挖比特币_什么叫比特币_比特币程序员叫什么

这是以太坊中非常受欢迎的钱包。 攻击的方式有很多种,比如被域名劫持,因为是在线的情况。 token可以收发,很方便,但是黑客也抓住了这个方便,安全的话很容易把token转给他。 例如,有钓鱼事件的统计数据。 攻击次数超过5000次,其中针对在线钱包的攻击次数超过1000次。

第二种也是最古老的攻击方式是本地钱包地址替换的情况。 大家可能听说过2014年的好莱坞色情事件比特币程序员叫什么,黑客在网上发布了很多好莱坞的私照,最后还留下了一个地址,希望大家给他打赏。 结果这个地方出了问题,很多人把地址都改了,最后我也没拿到多少币。 对于用户来说,我们可以看到代码的逻辑很简单,直接监听内存,直接更换钱包。

最新的360安全卫士增加了预警功能,值得点赞。 如果发现钱包地址被更改,会提示,黑客会继续收币。 比较常见的方法是手机邮箱,它是基于社会工程学的。 2016年底,国内区块链大V手机被黑。 当时,他不仅赔了很多钱,还造成了市场的剧烈波动。 智能合约攻击我就不多说了。

再说第二部分,系统级攻击。 比如交易所被攻破,这个也是听的很多,怎么比特币又被黑了,比特币又被盗了,比特币本身没错,交易所被黑了。 第二种比较大的类型是自我窃取、内幕犯罪,这种犯罪在中国也有出现。 应该是2014年,早点进入这个圈子的应该知道有比特币存钱罐,可以存一个比特币。 币一年给你1.1或1.2个币,过段时间你存几千个币就跑了。 第三种是旨在利用区块链底层漏洞的攻击。 门头沟盗币属于自我盗窃,一小部分是利用比特币交易的可延展性进行攻击,盗取数以千计的比特币。

再看第二类,针对非交易所的,是一些网络服务商的安全事件,这种类型很多。 去年一个ICO项目之所以被攻击,是因为服务器上有个网站,很多程序员都知道,但是没有打好补丁。 有人发现了漏洞,上传了木马,获得服务器权限后,就把所有的币都转走了。

关于这一点,我想多说一点。 很多人认为区块链写完代码就OK了,人为因素攻击还是相当严重的隐患。 BTP是硅谷知名公司,属于支付提供商。 如果你用比特币在网上买东西,比如海淘支付,有可能你用的支付是他们提供的。 他们的首席财务官有一天收到一封来自黑客的电子邮件,他当然不知道。 他说我们是币圈的人或者是链圈的媒体,需要他提供答案,所以他居然点开了邮件里的链接。 事情并不那么简单。 点击链接后,他被要求输入一个账户密码。 进入后,黑客得到了邮箱的登录账号。 拿到邮箱登录账号后,黑客很贼。 首先,了解邮箱里所有的软件,邮件内容是什么,有什么规则。 掌握之后,黑客又模仿了CFO的身份,给CEO发了一封邮件。 我们现在有一个大客户,为什么要转100个比特币,我查过没有问题,请指点一下。 他没有多想就批准了。 黑客拿到币后,分两三次偷走3次,共盗走5亿元。 这是对人的攻击。 最终,BTP向保险公司提出索赔,但并未得到赔偿。

什么叫挖比特币_比特币程序员叫什么_什么叫比特币

第三种是针对云平台或云服务器的攻击,也是较早发生的案例。 国外有云平台,类似阿里云、腾讯云。 当时世界上有很多矿池云平台服务。 当时拿到了它的管理权,抢走了几个早期的创业公司。 超过 20,000 个比特币。

让我们关注第三部分。 许多人认为这项技术就像比特币。 多年来没有出现过重大的安全问题,所以这个数字货币是非常可信的。 其实这个数字并不是特别严谨,也不是没有出现过,而且出现过不止一次,各种因素都化险为夷。 在第一个案例中,德国一位码农在比特币脚本程序中发现了一个具有潜在破坏性的BUG。 这个BUG的基本内容就是右上角是原代码的逻辑。 在这种情况下,黑客可以利用BUG来调用语句,从而可以使用之前钱包中的比特币。 如果我能花你钱包里的钱,这笔钱值不值?

这个BUG并没有第一时间公开。 程序员给比特币的创始人发了一封邮件。 他在邮件中说,不知道BUG的朋友,请不要提BUG的名字。 如果是熟悉它的人,一听就知道怎么称呼这个BUG,可以想想当时的影响有多大。

这个BUG没有公开,悄悄修复了。 悄悄的来,悄悄的我又走了,这个BUG背后的比特币升级了其他内容,也就是在更新常规内容的时候,悄悄修复了问题,修复完成后,大部分节点都被公开了更新。 所以这个程序员也是比特币或者说区块链历史上最鲜为人知的救世主。 他第一次保存了比特币。 还有一种说法是因为他自己持有很多比特币,不想自己的币贬值,所以写了这封邮件。 这也是从加密经济学的角度考虑的。

比特币巨额刷币的漏洞。 半年到一年前比特币诞生的时候,第二个bug仅仅在一个月之后就出现了。 是美国的一个码农(Jeff)。 7400多个区块出现非常异常的交易。 接收地址一共有三个,其中两个接收了超过900亿个比特币,共计超过1800亿。 了解比特币的同学都知道,在求和的逻辑中,有一个求和溢出,当时没有处理。 发现这个BUG后,此时比特币已经在运行了,属于比较严重的BUG。 因此,社区表现出相对强大的能力。 开发者发布修复bug的版本后,号召大家赶快上Node版挖矿。 哪条链最长的就是最终获得批准的链。 结果打了补丁的区块链水平终于赶上来,超越了有BUG的原链后,终于得救了。

说完核心代码的一些漏洞,再来说说共识机制。 先说一件事,大家可能都知道,51%攻击的问题现在被发现是现实了,原本以为是理论上的存在。 我们提出一个他可以避免双花的方案。 通过什么? 通过 PUW 有先决条件。 恶意用户不能超过50%。 比特币的历史上就有过这样的担忧。 2014年有一个矿池一直在增长,几乎达到甚至超过了一半。 结果就是大家不要在这里挖了。 我的地方变了。 现在已经变成中心化矿池了,我会增加手续费,慢慢就不会有51%攻击的隐患了。

什么叫挖比特币_什么叫比特币_比特币程序员叫什么

现在有很多批评说国内几个矿池的组合也可以完成51%的攻击,理论上也是可以的。 但是比特币从来没有被51%攻击成功过。 有一个例子,为什么说安全没有被51%攻击过,因为它的成本太高了,如果有足够的挑战给它。 之前看过一个数据,需要国内前500的怪物级超分散产品,包括中国的神威和美国的泰坦,才能发起一定威胁的攻击。 现在差距可能更大了。

51% 攻击的风险在于其他货币,而不是比特币。 这种攻击是史诗般的或毁灭性的攻击。 其中大部分是所谓的空气币或山寨币。 BitcoinGold、Zencash、Vnrge,这些币种比较小,没有特别强的保护措施,很容易让人租用云算力,租用大量算力就这么小的比例冲进去挖,超过了原来的全部网络算力,一口气造成51%攻击双花。 我们预计未来可能会越来越多。 也有学者做过研究,ETC采用的共识算法和挖矿机制与以太坊完全相同。 巴西学者研究发现,一次超过5000万的攻击成本可能会带来10亿的利润。

刚才说门头沟被盗,其实有一部分是被交易延展性比特币的BUG给骗了。 按照这个基本约定,我不是确认了吗? 黑客的部分交易确认后,我会重新重新发币,因为发币过程有问题。 影响还是挺大的,比特币协议升级解决了这个问题。 二是日蚀攻击,也是一种很常见的手段。 比特币和以太坊的节点都发现了BUG,已经修复了。 原理也很容易理解。 节点连接到区块链网络中,需要有很多连接才能看到,比如当前区块高度是多少,现在网上有哪些交易已经确认,相关交易是否已经确认,什么是交易,你连接的节点都是黑客 控制节点可以告诉你,某笔交易根本没有时间,当前高度是某个区块高度。 其实你根本不在这个高度,浪费你的算力,告诉你时间仓促也是不对的等等,问题是如果说我们写一个新系统的时候,比特币和以太坊都有这样的错误。

下面说说漏洞算法。 这个漏洞的过程也很有意思。 2017年5月,IOTA是一个用DOT构建的区块链系统。 请麻省理工学院的研究团队审核代码是一件好事。 麻省理工学院的研究人员进行了检查。 两个月后,他们发现确实不错。 它仍然存在问题。 我一开始也被骗了。 IOTA的创始人和我们都被Curl骗了比特币程序员叫什么,这是加密(Hash)值的漏洞。 我可以构造两个不同的原始数据。 什么(Hash)想避免的,这里面就有这样的问题。 显然,无法保证数字签名的安全性。 9月,MIT因为这个BUG已经修复,发布了漏洞审查报告。 没想到,戏剧性的一幕发生了。 IOTA随即表示强烈抗议。 麻省理工违背了学术道德,我们故意装在你身上。 我放在你里面是为了防止别人抄袭我们的代码。 这个也很有意思,区块链漏洞系统中的历史事件。

二是共识机制中的攻击。 这称为 IOTA 缠结拼接攻击。 Tangle 是区块链的一个术语。 今年有一部科幻电影《湮灭》。 IOTA经历过这样的事情。 垃圾交易,链条在两条链条之间不断连接。 结果是什么? IOTA当时的共识算法是不需要手续费的。 交易的确认需要前两笔交易的打包。 这样一来,普通用户在确认的时候,基本上大家都是在确认大量的垃圾交易,而黑客也在确认垃圾交易,这样就会导致整个网络长期无法使用,整个系统都无法使用。 后来通过共识机制的升级,解决了这个问题。

其实我们谈了很多,还有很多事。 今天因为时间关系没办法跟大家分享和讨论。

什么叫挖比特币_什么叫比特币_比特币程序员叫什么

什么叫比特币_什么叫挖比特币_比特币程序员叫什么

让我们回到区块链安全的话题。 区块链正在重新定义安全性吗? 我们认为区块链技术并不是安全的万能钥匙。 区块链系统仍然会继承现有的互联网安全、软件安全等问题,同时也会引出新的攻击方式。 向量。

区块链确实在某些方面显着提高了安全性。 比如这里提出两点,一些节点是可以容忍的,但是系统还是不受影响。 还有一个没有列出来,可以抗审查,微博微信上的东西可以删,但是存在于这个上面的东西是删不掉的。 要实现显着提高安全性的目标,有一个先决条件。 在其设计、开发和运行过程中,必须充分重视问题,未雨绸缪。 我们觉得现有的安全技术和区块链技术是相辅相成的,是一个良性循环的过程。 区块链技术在很多方面弥补了现有安全技术的不足,但现有的安全技术又可以反过来促进区块链的技术提升,两者相互促进形成良性循环。

第一,如果你是区块链资产的持有者(使用者),私钥还在,你之前的法币资产,或者东西丢了,去警察局报案,去银行冻结谁动了你的银行卡是好的。 这是币圈还是老哥的一句话。 如果你买了一个货币,第一时间把它放出来,不要放在交易所。 交易所中的货币是借据。 你并不真正拥有这些硬币。 一个符号。 不要重复使用密码,尽量使用自动生成的密码,很多人的密码都是几位数,最好通过软件自动生成,启用短信验证,这是比短信验证码更安全的机制,学会识别各种促销友情链接、百度的、谷歌的,仔细阅读安全提示的相关内容。 建议您离线存储大量资产,或者考虑硬件钱包。 当然,硬件钱包不一定安全。 这可能比直接将它们存储在计算机上更好。 被盗的概率较低,最好是硬件存储。 我的一个老朋友,老手,把私钥保存在记事本里,上传到云盘,本地删除文件,一步步同步删除到云盘。 非常危险。 确保您的电子邮件帐户安全是显而易见的。 最后,建议大家优先使用苹果手机。 我也喜欢用安卓,但是因为这几年安卓碎片化严重,除了刚出的第一年的安全更新,都更频繁,速度更快,略显老旧。 很多更新不到位,不仅钱包有风险,短信验证码,包括两步验证app也可能被盗。

如果你是一个区块链项目的开发者,几个前辈都讲过这个问题,最好去看看里面的代码逻辑,不管是真是假,不要相信某个人或者某个院长,有在数字货币或区块链领域颇具叛逆精神。 里面没有所谓的权威。 这是每个人自己看的最安全的方式。 有了去中心化的思想,没有以前的server-client架构,BS架构,CS架构。 里面可能会出现各种攻击。 你得考虑这方面,不要自己去设计加密算法。 这是一个大坑。 仿佛不知天高地厚,不知天高地厚,唯有我安。

小心基数或时间戳等变量和值,区块链中的此类编程也非常困难。 我也在思考这个问题。 让用户参与提供周围环境信号,包括麦克风或传感器数据,与本地随机数据混合,可能会更安全。 时间戳是一样的,注意安全用例的编写,你必须注意你写的每一个库,即使别人写的智能合约有bug,你的系统还是有可能被发现并被击败。 如果你的工作是基于比特币和以太坊的区块链,你不需要重复发明文字,你必须像比特币和以太坊攻击一样同时更新安全代码。 一般可以比较快速及时的响应里面的安全。 问题,如果你的工作是基于他们的工作,你不去跟进,那无异于告诉黑客,比特币和以太坊无异于告诉黑客,告诉自己智能合约很难写,很难写好要安全地书写,必须谨慎并完成密码学的基础知识。 您开发的系统的安全性取决于您。

第三类,如果你是区块链相关产品的创业者,如果你以前没有做这个,现在你在做这个,我们的建议是,如果你的项目还没有开始,你应该问问自己,是不是使用区块链的必要条件。 第二,如果项目已经启动,可以从安全的角度重新审视各个方面。 要充分认识到,尤其是在区块链领域,投入大量的人力、物力、财力是无形的。 一旦发生意外,影响会很大,后悔也来不及。 对于自己,对于关键团队成员,不管是C还是O,如果关键人物出了问题,也可能会产生影响。 非区块链服务系统中的漏洞也是一个容易被忽视的问题。 把你的代码放在服务器上,何况是操作系统的漏洞,它的问题也会导致你的系统出现问题。 最好有一个单独的基金来分配一个资金池,这样如果更多的放在社区里,就会有更多的参与动力。 他会觉得这个项目比较友好,他会很乐意帮助你,聘请顾问,来审计第三方产品。 推荐使用两组人,两种不同的语言进行开发,约定好协议。 以太坊走的是这条路,所以避免了几个大问题。 同样对于供应链来说,开源是最安全的,但是不要等到明天上线,今天宣布开源。 上线后就是开源产品,这其实是最危险的。 这个问题在今年的几个数字货币中都出现过。 官方钱包出现,第一天就发现了bug。 最后,做好心理准备。 你的系统肯定有漏洞,有漏洞就一定有漏洞。 至少一名安全专家必须制定应急计划。

以上演讲来自雷锋网主办的ISC2018区块链与安全论坛。