Web3对于个人所有权和数据主权的追求,也会引起了各类安全问题(因为个体对安全知识理解和熟悉层次的差异),但这些安全问题,不应该成为阻碍Web3的发展势头。
首先来回顾一下Web2。Web 2 技术和工具的使用有助于更多地参与项目和分享想法,从而理想地导致更好的深思熟虑的设计和更高效的生产,加强与客户的联系并改善与合作伙伴的沟通。安全模型的很重要的一部分是关于响应 。在Web3中,交易一旦执行就无法改变,因此,安全的思路通常是,需要建立机制来验证交易是否应该具备安全的条件,继而进行,也就是说,安全必须在预防方面做得更好。
而在Web3的世界中,我们更应该如何从技术上进行规划,解决系统性的弱点,预防并组织新的攻击载体,这些攻击载体的目标,包括加密原生的问题和智能合约的漏洞等等。
以下是目前 Web3 存在攻击类型的观察统计和未来 Web3 安全发展方向的列表。
APT攻击
APT攻击,即高级可持续威胁攻击,也称为定向威胁攻击,指某组织对特定对象展开的持续有效的攻击活动。
发起APT动机和能力差异较大,常见是以金钱为目的发起攻击,也有可能是其他目的性。需要注意的是,APT攻击者很可能会一直在身边。不同的 APT 运行许多不同类型的操作,但这些威胁参与者往往最有可能直接攻击公司的网络层以实现其目标。
示例:Ronin 验证器攻击
概况:
- 攻击复杂性:高(仅适用于资源丰富的群体,通常在不会起诉的国家)
- 可自动化性:低(仍然主要是使用一些自定义工具进行手动操作)
- 未来的发展:只要 APT 能够获取大量资金及数据或实现各种政治目的,可能会一直保持活跃。
社工钓鱼
社会工程学是黑客米特尼克在《反欺骗的艺术》中所提出的,是一种通过对受害者心理弱点、本能反应、好奇心、信任、贪婪等心理陷阱进行诸如欺骗、伤害等危害手段。也就是通过对人的心理弱点、习惯弱点的分析,通过手段达到目的的过程。
目前 Web3 领域已经发生诸多利用社工手段盗取资产的安全事件,比如通过聊天程序发送钓鱼链接引导受害者点击、通过假冒官方诱导用户转移资金、通过假APP收集用户私钥等。
示例:直接针对用户的OpenSea网络钓鱼活动
概况:
- 攻击复杂性:低-中(攻击可以是低质量的广撒网或极具针对性,具体取决于攻击者)
- 可自动化性:中-高(大部分工作可以自动化)
- 未来的发展:由于社工手段攻击的成本对于收益的极小性,社工钓鱼攻击可能会一直存在。
供应链攻击
供应链攻击是一种面向软件开发人员和供应商的新兴威胁。目标是通过感染合法应用分发恶意软件来访问源代码、构建过程或更新机制。
第三方软件库引入的同时也会引入很大的攻击面,比如第三方软件库本身问题,项目本身对于第三方软件库的适配性等,都可能造成当前项目出现大的安全风险。
示例:Wormhole 跨链桥攻击
概况:
- 攻击复杂性:中等(需要技术知识和一些时间)
- 可自动化性:中等(扫描以发现有缺陷的软件组件可以自动化;但是当发现新漏洞时,需要手动构建漏洞利用)
- 未来的发展:随着软件系统的相互依赖性和复杂性的增加,供应链漏洞可能会增加。在为 web3 安全开发出良好的、标准化的漏洞披露方法之前,黑客攻击也可能会增加。
治理攻击
治理攻击主要是 DAO 的项目组织,由于可以根据代币持有者获得的投票决定是否执行某提案,所以当攻击者获取足够多的投票时(该投票数量攻击者可通过闪电贷或者代币兑换等手段获取),就可以引入恶意提案,实施恶意资金转移等。
目前web3 中的许多项目都包含治理方面,代币持有者可以在其中提出改变网络的提案并对其进行投票。当引入恶意提案时,势必会影响项目稳定性。
示例:Beanstalk 恶意提案攻击
概况:
- 攻击复杂性:从低到高,取决于协议。(许多项目都有活跃的论坛和社区,以及可以暴露更多尝试的提案人)
- 可自动化性:从低到高,取决于协议。
- 未来的发展:治理攻击高度依赖于治理工具和标准,当治理标准与监控和提案制定过程有关时。
预言机攻击
预言机是一个将数据从区块链外传输到区块链内的机制。许多 web3 项目依赖于“预言机”——提供实时数据的系统,是链上无法找到的信息来源。例如,预言机通常用于确定两种资产之间的交换定价。
当攻击者控制价格预言机的数值,就可通过闪电贷交易获取大量资金,使得项目稳定性直接受到影响。
示例:Cream 操控预言机攻击
概况:
- 攻击复杂性:中(需要技术知识)
- 可自动化性:高(大多数攻击可能涉及自动化检测可利用问题)
- 未来的发展:随着准确定价方法变得更加标准,可能会降低攻击率。
智能合约攻击
智能合约是一种旨在以信息化方式传播、验证或执行合同的计算机协议。智能合约允许在没有第三方的情况下进行可信交易,这些交易可追踪且不可逆转。
从之前的DeFi、NFT、GameFi再到现在Web3。区块链的大多数项目中,智能合约占据重要一环,对于它的安全性也不言而喻,有了闪电贷的加持,再小的智能合约漏洞都可能会影响整个项目的资金安全,最近几年发生的合约攻击事件不在少数,并且损失金额巨大。
示例:Popsicle攻击事件
概况:
- 攻击复杂性:中高(需要项目技术知识)
- 可自动化性:高(大多数攻击可能涉及自动化攻击)
- 未来的发展:大量智能合约协议应用性,智能合约安全事件会不断发生,合约上线前应进行全面安全测试。
Web端安全
Web环境的互联网应用越来越广泛,企业信息化的过程中各种应用都架设在Web平台上,Web业务的迅速发展也引起黑客们的强烈关注,接踵而至的就是Web安全威胁的凸显。例如去年 12 月影响广泛的 Web 服务器软件的log4j 漏洞利用。攻击者将扫描 Internet 以查找已知漏洞,以找到他们可以利用的未修补问题。
示例:log4j 漏洞
概况:
- 攻击复杂性:中(需要大量测试获取攻击路径)
- 可自动化性:中(部分攻击可能涉及自动化攻击)
- 未来的发展:目前Web端漏洞在Web3的世界里并不凸显,但如果涉及资金问题,可能会出现大量攻击。
零日(0day)漏洞
0day漏洞或零日漏洞通常是指还没有补丁的安全漏洞,0day漏洞得名于开发人员发现漏洞时补丁存在的天数:零天。0day攻击或零日攻击则是指利用这种0day漏洞进行的攻击。
Web3 中人们一旦被盗就很难追回加密资金。攻击者可以花费大量时间研究运行链上应用程序的代码,找到一个可以利用的漏洞来获取大量资金。
示例:Poly Network跨链攻击
概况:
- 攻击复杂性:中-高(需要技术知识)
- 可自动化性:低(发现新漏洞需要时间和精力,而且不太可能自动化)
- 未来的发展:Web3和资金的关联性,可能存在不少人在研究这类漏洞,已达到暴富目的。
参考:
https://a16z.com/2022/04/23/web3-security-crypto-hack-attack-lessons/