Web3门外汉浅谈Web3安全

admin 2024年5月13日02:04:29评论7 views字数 5866阅读19分33秒阅读模式

点击蓝字,关注我们

前言

其实我一直都对区块链感兴趣——在2013年夏天得知比特币这个东西之后就如此……那时的我根本没有想到,在半年后,这东西的价值就翻了十倍……
2018年回国的时候找工作的时候,网络安全、电子游戏、区块链就是我主要找的三个领域——不过感觉五年过去了,好像现在也没啥变化……后来就投入了网络安全的圈子里,那段时间,由于比特币带来的影响依然非常巨大,很多网络安全的话题也多少会带上点区块链的情况,不过几个月后热度就几乎没多少了。
上周的万向区块链周,正好准备换行的我决定先去探探情况。不过,作为之前行业的老习惯,还是会不经意之间就把关注点放在安全上——结果而言,过去一周也确实给自己对区块链安全刷新了一些认知。
这篇文章只是作为我当前对区块链安全的理解,给大家做一些分享。希望我的班门弄斧,能抛砖引玉这个细分领域大佬的指点。

区块链安全?Web3安全?

其实,“区块链”还是“Web3”这个说法,我在各个方面都比较纠结,还比如是“区块链游戏”还是“Web3游戏”——依稀记得,前两年有过小风靡一段时间的养宠物,噱头是“区块链游戏”,而非“Web3游戏”。要放在网络安全层面,那似乎更有一些咬文嚼字的意思:是用区块链来做安全,还是保护区块链的安全?
那在本文里,自然是保护区块链的安全。那区块链安全就等同于Web3安全吗?我觉得多少还是有一些微妙的区别的。从我的角度来看,区块链的底层理念是去中心化,而Web3则偏向于去中心化的生态——也就是说Web3一定要涉及区块链,但是区块链未必是Web3:比如用去中心化的技术来打造一个新的独立产品,这个是Web3吗?反过来说,Web3现在来看能缺少CEX吗?我知道Web3圈内的大佬可能有自己的尖锐的见解,而我也只是从一个前第三方观察者的角度做的一些思考,这个可能圈内都没法有一个统一的回答,正如网络安全圈子里有各种各样的“零信任”和“XDR”一样。
只是出于更准确表述自己理解的目的,我认为区块链安全与Web3的安全区别在于:
Web3门外汉浅谈Web3安全

“区块链安全”侧重于解决区块链技术或者去中心化技术相关的安全问题;而Web3安全则更偏向于解决Web3生态中的安全问题——或者说当前来看,Web3生态中的业务的安全问题。

再说一个例子吧。Casper Labs今年出了个企业对区块链技术部署情况的报告("The State of Enterprise Blockchain Adoption in 2023”,有兴趣的朋友可以留言来拿,虽然自己搜一下也能直接拿到),调研了中英美603家企业(基本平均分布)对区块链技术的应用情况。其中,中国的受访企业里,只有6%的企业没有使用任何区块链技术——而英美都有超过10%的受访企业未使用任何区块链技术。当然,作为国外的区块链公司,Casper Labs对于国内的采访企业的样本可能是有很大偏差的——但是200家的企业仅6%未部署区块链技术,反过来意味着国内很可能有200多家企业已经部署了区块链技术。那么问题来了:这些企业都属于Web3企业吗?他们面临的区块链技术应用导致的安全问题都能被认为是Web3安全问题吗?

Web3门外汉浅谈Web3安全

(图片来源:Casper Labs)

这个问题或许值得深入讨论。但是本文中,我还是会偏向于使用更为贴近业务的“Web3安全”。

Web3安全的特点

很大程度上,资本市场还是很能反映出当前的技术趋势的。在我3月对去年国外网络安全融资的分析中就提到,区块链安全企业主要分为两块:一种是针对区块链应用(application)的安全,另一种则是针对区块链环境下的在线业务安全——当然,现在来看可以直接用Web3生态中的业务安全来表达。
Web3行业可能是我见过的民营行业里,最注重安全的行业了。即使是那些非安全领域的Web3企业,在讲解自己产品或者解决方案的时候,都或多或少会提一嘴安全性的问题——包括隐私安全。原因其实也不难理解:一方面是Web3的业务当前比较国际化,而欧美的合规要求一个比一个严格;另一方面则是,Web3确实已经被黑客当提款机在刷了。
根据Chainalysis的统计,截止2023为止,整个区块链行业因黑客攻击导致的损失就已经达到了75亿美元,仅去年就有38亿美元的损失。就像我一直说的那样,网络安全本质上还是一个数学问题:网络安全的综合投入与收益(比如带动IT能力的提升),和被攻击的预期损失相比,哪个成本更高。在Web3这里,显然被攻击的期望损失更高。

Web3门外汉浅谈Web3安全

(图片来源:Chainalysis)

因此,智能合约乃至区块链应用的安全(当然现在还是智能合约为主)以及Web3的业务安全被尤为重视也就不奇怪了。
从事件层面来看,币安在2018年的那两分钟就是基于对之前窃取的API key进行一系列的操作来套现——不过触发了币安的风控机制,这是业务安全的问题;同样在2018年,美链BEC就因为代码里的一个小小的数据溢出漏洞直接崩盘,这是智能合约安全层面的问题。也难怪从上图来看,2018年的平均单次攻击导致的损失是最高的。
从技术和业务逻辑层面来看,也很合理:智能合约在Web3中承载着业务,而当前Web3业务中很大的一方面其实也就是金融活动——我们也知道,金融活动往往就会伴随着诈骗、洗钱等犯罪行为的到来。相比当前的货币是依靠政府作为背书,Web3中的数字资产的背书来源于大家的共识——毫无疑问,当这个生态中充满了金融犯罪的时候,信心的下降也就直接导致了相关数字资产价值的下降。

Web3安全的门槛

乍一看,Web3的安全似乎并不怎么困难:智能合约的安全不过是代码的安全性,即使衍生到了区块链/Web3应用,也不过就是Web2应用安全的延伸;而Web3中的业务安全,也同样在Web2中已经有了样板。
但事实却并非如此。以上的这些说法,或许在未来的某一天会成为现实——但至少现在来看,Web3安全和Web2的安全,还是有不少的区别。
从智能合约审计的角度来看,最直接的问题就在于当前的Web3可以视为由不同生态组成的——而每个生态都会有自己独特的编程语言:Rust、Solidity、Linea……显然,当前我们的SAST、IAST等工具,并不支持这些语言,也就意味着当前很难有一个产品,可以自动化检测智能合约的安全性——从而更多的是依赖于人力。也难怪,现在比较多的说法都是“智能合约审计”。
在去年做应用安全调研的时候,我就有这个疑问:为什么很多都说“代码审计”,但是AST本身却是application security test——也就是测试?包括Gartner的魔力象限图,也是AST。我当初的猜想,“代码审计”是传统开发模式中,对代码有效性、规范性的人力检查延伸出来的“代码安全审计”,还是没有跳出对人工的依赖。而“测试”就需要自动化的能力,从而提升效率,解放人力。如果是这样,作为刚起步的Web3生态,很显然也正处于这个需要大量依赖人工进行审计的阶段。
另一方面,Web3中的业务逻辑是由智能合约实现的。换句话说,在Web3的安全中,代码层面的安全问题只是一方面,另一方面是“通过代码实现的业务逻辑”是否安全。当前的智能合约安全中,主要还是以逻辑漏洞为主,这其实就对安全人员提出了更高的要求:不仅仅是需要去了解(至少)一门新的编程语言,以及其底层的技术架构,还需要去分析思考代码中所展现的业务逻辑,再思考这些业务逻辑中是否存在漏洞,或者说“代码实现的业务逻辑”是否等同于“需要实现的业务逻辑”。这恰恰是当前Web3安全中的一大难点。
而在业务安全方面,我们确实可以从Web2业务安全里找到Web3业务安全的类似关键点,但是要实现这些能力点,却又是另一回事。比如在Web2业务安全中,我们会去关注一些IP库、设备指纹等信息;在Web3业务安全中,同样会有一些链上的交易信息、某地址钱包的信誉等信息——而这些,就可能需要基于全节点的数据才能真正实现,这并不容易。这也是我在3月,对区块链安全融资进行整理的时候,将Chainalysis列为值得关注融资之一——虽然在统计的时候并没有将它计算在内,因为Chainalysis原本是区块链数据分析的企业,并非是单纯的区块链安全企业。但是,很显然,如果我们要深入Web3的业务安全,离不开对链上数据的分析——这个自然就提高了Web3业务安全的入门门槛。
何况,Web3主打的就是一个去中心化和匿名性,但是监管要求的KYC在可以预见的情况下,并不会降低。相比于Web2世界里相对透明的“实名性”(这里并非说所有地方都是实名制,但是相对而言都多少会贴近“实名”这个概念),攻击者更容易在匿名的Web3环境里浑水摸鱼进行洗钱,或者随便套个马甲就可以进行欺诈犯罪而不被发现。或许犯罪份子并不需要在Web3的环境里做比Web2环境里更多的行动,但是对于安全人员而言,溯源和调查的难度却大幅度上升。

“传统”安全和Web3安全

在和一些Web3安全厂商的人员交流的时候,他们用了“传统安全”来区分Web3安全和当前的网络安全。这个说起来我也多少觉得有些好笑:当我们在将以前的“边界安全”为核心的安全理念叫作“传统安全”的时候,我们也被Web3安全的人称为“传统安全”了——新生事物的迭代就是这样快,但是从实际状况来看,我们当前的网络安全相对Web3安全而言并不传统——传统是针对更新换代的,而不是新出一个事物,就把所有之前的东西称为“传统”。即使Web3代表了互联网的未来(甚至我认为这都未必,我更愿意相信中心化和去中心化共存才是未来),至少也在很长的一段时间里,Web3安全都无法把当前的网络安全挤到“传统安全”的范畴里。无他,仅仅是因为即使从IT侧来看,Web3的技术都远远没到能取代IT基础设施的程度——那又如何将基于当前IT(以及OT和IoT)基础设施的网络安全划分成为“传统”呢?所以,这里只以“传统”安全与Web3安全做个理解上的区分,并不是真的成为了“传统安全”。
从当前Web3安全的两大关注点来看,Web3安全更多还是倾向于“产品安全”的这一领域:要确保产品本身或者产品的使用过程的安全性,也就是比起做“Web3安全”,最终目的是做“安全的Web3产品”。但是,任何一个企业,仅仅输出安全的产品是不够的,还需要自己企业本身各个环节的安全性。Web3当前的底层架构依然离不开像云计算这类的底层技术,那么“传统”Web2安全里面的很多东西依然需要关注:包括云计算、数据安全之类侧重于技术的安全领域,也同样有安全意识方向的“以人为本”安全领域。何况,Web3行业应该是当前最热衷于远程办公的行业,而这种办公模式存在多少的安全隐患,相信“传统”安全的相关从业者都很明白。当然,不同行业有不同行业的技术特性与需求,即使是
因此,Web3行业对安全已经有非常高的敏感性的情况下,更需要再多跨出一步,不仅仅关注于自己产品的安全性,还需要确保自己企业的安全性。不然,做了一个非常安全的产品,却自己后院起火,那就得不偿失了。不过,Web3行业里许多从业者都是非常开放,拥抱新事物的,相信他们对各类的安全内容,也会抱有极大的好奇心和接受度。

从“传统”安全猜想Web3安全的发展

由于痛点和安全需求类似,但是技术不同,有些当前安全产品完全有机会以“Web3形态”出现。Blockchain Application Security Test或者Web3 Application Security Test可能会出现;不过考虑到现在各类AST的使用依然效果存疑,只能说当这种BAST或者W3AST出现的时候,不要成为噱头。
当前的Web3开发项目,很多都是直接fork开源项目,完全原创的不多。不过,好在现在开源的项目也不多——但是,谁能保证以后不会多呢?对接OpenAI的开源项目数量从2月的300个不到,在6月升到了超过900个——有谁知道Web3当中不会出现类似的情况呢?所以,Web3的SCA可能会成为一个方向,但是很可能还有很长的路要走。不过,我对此还是很期待的,因为这意味着Web3生态会迎来一个百花齐放的状态。
另一个则是Web3的威胁情报。“传统”安全的威胁情报发展到现在,其实已经经过了非常多的变化,情报的内容也在不断被丰富——当然,这离不开犯罪份子的“努力进步”。如果Web3行业越发繁荣,那必然会出现更多针对Web3的攻击组织。攻击手段的提升,自然会带动情报的丰富性,那么对于事前的主动防范也会更加重要。相比前两个方向,我更偏向于认为Web3的威胁情报会更快速地发展——毕竟,当前已经有相关的产品与服务出现了。
还值得一提的是,Web3行业可能是除了像谷歌、微软那些大型互联网企业之外,对于漏洞悬赏最为“豪放”的行业了:仅Immunefi就已经支付了超过8,000万美元的赏金,而悬赏中的赏金也超过了1.5亿美元。毕竟,这是一个有钱,还被黑客紧盯,同时暂时又有些进入门槛的安全领域,重赏之下,才有勇夫。至少这块,Web3确实是走在了前沿。
同时,现在一些CTF比赛也已经开始出现了Web3相关的题目——那今后会不会有纯针对Web3的网络安全攻防大赛呢?就像现在的车联网、工业互联网那样?我认为是有可能的,但或许在这之前,我们会有一个Web3的靶场——那又是一个什么样的靶场,也确实令人拭目以待。

结尾

正如开头所说的,这些只是我作为一个“Web3门外汉”的感受。Web3安全其实有很多深入的东西可以探究,比如具体细化到有哪些智能合约的逻辑漏洞、不同攻击事件的具体分析等等。事实上,“传统”安全里同样有很多人都对Web3安全充满了好奇,也希望能够更系统地了解这一个新兴的领域。
在写对Web3安全前景的猜想的时候,后面确实有点放飞自我了——这反过来也说明我对Web3在全球的发展,是看好的:Web3确实能够实现一些重要的价值;但是确保这些价值不会被掠夺,这就是安全的意义。
也非常感谢一些Web3安全领域的老师帮助我沟通解决一些我的疑问。就像标题一样,我的这篇文章只是基于当前理解的“浅谈”,其中自然有不少不足,甚至错误之处,希望业内的大佬指出,修改。同样,也还是希望我的这篇班门弄斧,能引来各路Web3大佬们的深入洞见。

  //  作者:小貂快跑

对各种互联网、IT技术都感兴趣的中年人。

混迹网络安全圈数年,同时是二十多年游龄的多平台游戏玩家,去年开始关注区块链。

日常的兴趣之一就是收集各种资讯,欢迎各路大佬一起交流信息和情报。

原文始发于微信公众号(赛博游民营):“Web3门外汉”浅谈Web3安全

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年5月13日02:04:29
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Web3门外汉浅谈Web3安全https://cn-sec.com/archives/2499311.html

发表评论

匿名网友 填写信息