By: 山
“我不需要知道 Jerry 是谁,在网络上做生意,你相信的就是网络上的小面板,剥掉面板,你就知道这玩意实际上有多脆弱,而事实上在那网站后面操作的真人,他们才是你需要信任的人。“
——《别相信任何人:虚拟货币悬案》
2008 年 11 月 1 日,中本聪提出比特币(Bitcoin)的概念,2009 年 1 月 3 日,比特币正式诞生,而后随着全球数字经济加速发展,加密资产等概念爆热,2012 年第一个类似 NFT 的通证 Colored Coin(彩色币)诞生。彩色币由小面额的比特币组成,最小单位为一聪(比特币的最小单位)。随着技术的持续发展,时间一转来到 2021 年,NFT 迎来了爆发性增长,逐步成为市场最热的投资风向标之一。
艺术家 Beeple 的 NFT 作品《Everydays:The First 5000 Days》在佳士得官网上以 69,346,250 美元成交,虚拟游戏平台 Sandbox 上的一块虚拟土地以 430 万美元售出……随着水涨船高,层出不穷的高价项目持续刺激着人们的神经。然后在高价光环之下,NFT 也渐渐进入了犯罪分子的视野,从此开启了针对 NFT 的疯狂钓鱼、盗窃等行动。
引言这段话出自 Netflix 的自制纪录片《别相信任何人:虚拟货币悬案》,故事讲述加拿大最大加密货币交易所 QuadrigaCX 首席执行官格里·科滕离奇死亡后,他将 2.5 亿美元客户资金密码也带进了坟墓。大量惊恐的投资者拒绝接受官方的说法,他们认为格里的“死亡”具有“金蝉脱壳”的所有特征:他还活着,已经带着投资者的钱跑路了!
其实 QuadrigaCX 的故事只是 Web3 世界的冰山一角,而我们今天要聊的 NFT 世界里,被盗几乎每天都在上演,列举几个知名案例:
2021 年 2 月 21 日,OpenSea 用户遭到 personal_sign 类型网络钓鱼攻击,有 32 位用户签署了来自攻击者的恶意交易,导致用户部分 NFT 被盗,包括 BAYC、Azuki 等近百个 NFT,按当时价格计算,黑客获利 420 万美元;
2022 年 4 月 29 日,周杰伦持有价值 320 万元的无聊猿 NFT 被盗;
2022 年 5 月 25 日,推特用户 /img/2023525224107/0.jpg">
据 SlowMist 数据显示,2022 年 NFT 盗窃案主要集中在 Ethererum 链,发生在社交媒体平台上,通过虚假域名、项目方相似域名、恶意木马、Discord 入侵发布虚假链接钓鱼等手法进行攻击,者平均每次盗窃 10 万美元。似乎不论牛市还是熊市,只有黑客在 “0 元购” 赚的盆满钵满。
那么问题来了:不管是普通用户还是项目方创始人都屡遭钓鱼攻击,面对如此恶劣的 NFT 钓鱼、欺诈环境,NFT 用户是不是就毫无办法?用户就是待宰的羔羊吗?
No!现在我们安全防御一直推行人防+技防的手段,即人员安全意识防御+技术手段防御。人员安全意识防御即个人安全意识,建议加密货币从业者可以学习下区块链黑暗森林自救手册:
https://github.com/slowmist/Blockchain-dark-forest-selfguard-handbook/
标记为歌手黄立成的地址坐拥102个MAYC,系该NFT系列第二大holder:4月24日消息,据欧科云链 OKLink 区块链浏览器显示,标记为歌手黄立成(MachiBigBrother)的地址0x020cA66C30beC2c4Fe3861a94E4DB4A498A35872,截至目前累计拥有 102 个变异猿 MAYC(第二大 holder)、55 个无聊猿 BAYC(第六大 holder)、151 万枚 APE(约 2400 万美元)。[2022/4/24 14:45:15]
鉴于人是个复杂的高等动物,所以人员安全意识防御我们今天不展开讲,大家区块链黑暗森林自救手册好好读一下。
而技术防御手段又是什么?简单讲就是通过软硬件、浏览器插件等安全方式来保证资产等安全,而在 NFT 用户群体,浏览器交互是 90% 的 NFT 用户最常用的操作方式,也是最容易出现问题的环境,现在市场上已经有多款防钓鱼浏览器插件,下面我们来盘点与对比下,希望能给 NFT 用户一些安全指引。
下面我们来从几个角度评比下几款我们熟悉的防钓鱼浏览器插件,看看他们各自都有哪些特点:
1、是否开源、安装次数、支持链、主要功能描述:
2、NFT 钓鱼网站、实时黑名单真实测试:
我们找最常见的朝鲜 APT NFT 钓鱼特征和 Monkey Drainer NFT 钓鱼特征,进行实时特征扫描,找到团伙最新的钓鱼网站,发现时差 3 小时左右,来看下各个防钓鱼插件的反馈情况:
最新恶意 NFT 钓鱼站点:https://blur.do (发现时间为北京时间 2020-02-19 17:32:12)
下面为测试内容:
1 - PeckShieldAlert(Aegis)
结果:无任何提示,仍正常打开钓鱼网站。
2 - Pocket Universe
3 - Revoke.cash
为Instagram提供NFT服务的Everlens将发布V2版本,集成社交平台TikTok:金色财经消息,为Instagram提供NFT服务的Everlens宣布将发布V2版本NFT交易市场,升级后市场将同时包含Everlens Social NFT和Everlens NFT,其中Everlens Social NFT将专注于第三方社交网络集成。
此外,V2版本还将支持信用卡支付,并将与社交网络巨头TikTok集成,用户可将TikTok内容直接转化为可销售的NFT。(theblock)[2022/4/15 14:27:37]
4 - Fire
5 - Scam Sniffer
结果:提醒钓鱼网站并阻止访问钓鱼网站。
6 - Wallet Guard
7 - MetaDock
8 - Metashield
9 - Stelo
为了测试 NFT 站点钓鱼的实时性、真实性,9 个安装的插件展示如下:(Ps:Wallet Guard 已展示出我所安装的插件。)
万维网代码NFT以540万美元售出:金色财经报道,互联网之父Tim Berners-Lee编写的万维网原始源代码的NFT以540万美元售出。苏富比表示接受以加密货币支付的落槌价和买方费用。该NFT的竞标起价为1000美元。[2021/7/1 0:18:44]
以上是以 3 小时时差级别的真实 NFT 钓鱼网站结果。
3、基本操作层测试内容
1 - PeckShieldAlert(Aegis)
安装后是让用户自己输入一个 Token Contract 来检测,这种方式不符合目前 NFT 用户急于第一时间知道站点是否是钓鱼网站的需求。它更像一个在线恶意合约扫描器插件。
personal_sign 测试:无提示。
安装后可以知道逻辑用户触发交易时开始检测,所以在第一步用户打开 NFT 钓鱼网站时,是不能第一时间提醒用户的。我们来看下第二步:
personal_sign 测试:提醒用户已经根据链上地址识别出风险地址,让用户不要签名,还是不错的,符合安全插件预期。
第一步没有标示出 NFT 钓鱼网站,在第二步用户连接钓鱼网站后,根据链上地址识别出风险地址,提醒用户不要签名。符合安全插件预期。
第一步没有标示出 NFT 钓鱼网站,在第二步用户连接钓鱼网站后,根据链上地址没有识别出风险地址,也没有提示签名风险。但是 Fire 可以把签名预执行内容可读性显示出来,这点比较不错。
安装后用户访问 NFT 钓鱼网站时,直接提示风险并阻断了访问钓鱼网站。符合安全插件预期。
安装后是在用户触发交易时开始检测,所以在第一步用户打开 NFT 钓鱼网站 时,不能第一时间提醒用户,我们来看下第二步:
personal_sign 测试:提醒用户现在已经标记到这个钓鱼网站(发现 Wallet Guard 有使用 Scam Sniffer 的恶意地址库),提醒有风险,不要签名,还是不错的。符合安全插件预期。
7 - MetaDock
安装后用户连接钓鱼网站,钓鱼网站取用户签名时,插件依旧没什么提示,无任何风险提示。更像是需要用户主动去提交扫描的方式,不符合安全插件预期。可能 MetaDock 不是一个防钓鱼插件?有兴趣的小伙伴可以找项目方确认下。
安装后与 “MetaDock”、 “PeckShieldAlert” 类似,用户连接钓鱼网站,钓鱼网站取用户签名时,插件依旧没什么提示,无任何风险提示。需要用户主动去提交扫描的方式,不符合安全插件预期。
personal_sign 测试:无任何提示。
安装后用户连接钓鱼网站,钓鱼网站取用户签名时,插件依旧没什么提示,无任何风险提示。
personal_sign 测试:恶意信息提示为低风险。不符合安全插件预期。
至此,对比结束。
最终对比结果
下图为最终对比结果:
在对比后,我们发现在第一步(用户打开钓鱼网站)的识别上多数安全插件都做得不够好,只有 Scam Sniffer 识别到了这个 3 小时时差的最新 NFT 钓鱼网站,在第二步(用户连接钓鱼网站)开始 eth_sign、personal_sign 签名等危险操作时,Pocket Universe、Revoke.cash、Wallet Guard 均做出了安全风险识别等提醒。
但这只是目前的基础对比项,未来可能会进一步细化。
测试的安全插件名称及版本号如下图:
在此感谢吴说区块链的抛砖引玉;感谢以上优秀的插件项目方,虽然产品定位、对比结果各不相同,不少仍有改进的空间,但是他们的努力让区块链安全更进一步!
除此之外,推荐一个使用组合 (不构成任何建议):
1、Rabby wallet + Scam Sniffer
2、Rabby wallet + Pocket Universe
3、MetaMask+ Pocket Universe
4、MetaMask+ Revoke.cash
纵观区块链行业的钓鱼攻击,对个人用户来说,风险主要在 “域名、签名” 两个核心点,其中 90% 的 NFT 钓鱼都跟虚假域名有关。对用户来说,在进行链上操作前,提前了解目标地址的风险情况是十分必要的,如果用户在打开一个钓鱼页面时,相关的浏览器安全插件或钱包就能直接提示风险,这样就可以把风险阻断在第一步,直接阻断了用户后面的风险。就像 Web2 世界中 360 时代,直接解决了当时小白用户被病攻击的困扰,但它也并非解决了所有木马病问题,因为病的查杀和病的免杀(一种专业的躲避杀软件查杀技术,可以自行 Google 了解)永远存在时间差,如何做到时间差更小、样本数更快、识别更精准就决定了杀软件的厉害程度。
同样,在区块链、NFT 行业,如何能第一步识别、提醒到钓鱼站点的实时情况,在用户端快速反馈、识别出钓鱼网站,就决定了一款防钓鱼安全插件的能力;而如果相关产品因为时间差的问题没有在第一步识别到这些钓鱼域名,用户丢币的风险就大大增加;那么接下来到第二步,用户交互时授权链接、签名步骤,如果浏览器安全插件或钱包有签识别,能够识别、友好的展示出用户要签名的详细信息,如授权什么币种、授权多少、授权给谁等人类可读数据,比如 Rabby Wallet,在一定程度上也可以提示风险,一定程度上可以避免陷入资金损失的境地。
对钱包项目方来说,首先是需要进行全面的安全审计,重点提升用户交互安全部分,加强所见即所签机制,减少用户被钓鱼风险,如:
钓鱼网站提醒:通过生态或者社区的力量汇聚各类钓鱼网站,并在用户与这些钓鱼网站交互的时候对风险进行醒目地提醒和告警。
签名的识别和提醒:识别并提醒 eth_sign、personal_sign、signTypedData 这类签名的请求,并重点提醒 eth_sign 盲签的风险。
所见即所签:钱包中可以对合约调用进行详尽解析机制,避免 Approve 钓鱼,让用户知道 DApp 交易构造时的详细内容。
预执行机制:通过交易预执行机制可以帮助用户了解到交易广播执行后的效果,有助于用户对交易执行进行预判。
尾号相同的提醒:在展示地址的时候醒目的提醒用户检查完整的目标地址,避免尾号相同的问题。设置白名单地址机制,用户可以将常用的地址加入到白名单中,避免类似尾号相同的攻击。
AML 合规提醒:在转账的时候通过 AML 机制提醒用户转账的目标地址是否会触发 AML 的规则。
慢雾科技
个人专栏
阅读更多
金色早8点
金色财经
Odaily星球日报
欧科云链
Arcane Labs
深潮TechFlow
MarsBit
澎湃新闻
BTCStudy
链得得
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。