火星链 火星链
Ctrl+D收藏火星链
首页 > 世界币 > 正文

MET:MetaMask 浏览器扩展钱包 Clickjacking 漏洞分析

作者:

时间:1900/1/1 0:00:00

背景概述

2022 年 6 月 3 日,MetaMask(MM)公开了白帽子发现的一个严重的 Clickjacking 漏洞,这个漏洞可以造成的影响是:在用户的 MM 插件钱包处于解锁状态,用户访问恶意的站点时,站点可以利用 iframe 标签将解锁的 MM 插件钱包页面嵌入到网页中并进行隐藏,然后引导用户在网站上进行点击操作,实际上是在 MM 解锁的页面中进行操作,从而盗取用户的数字货币或藏品等相关资产。鉴于 MM 的用户体量较大,且 Fork MetaMask 插件钱包的项目也比较多,因此在 MM 公开这个漏洞后,我们立即开始对这个漏洞进行复现,然后开始搜寻这个漏洞对于其他 Fork MetaMask 项目的影响。

随后,慢雾安全团队尽可能地通知受到影响的项目方,并引导项目方进行修复。现在将这个 Clickjacking 漏洞的分析公开出来避免后续的项目踩坑。

SHIB:Metaverse预计将于今年12月开放,将在Shibarium上进行开发:4月11日消息,Shiba Inu(SHIB)开发人员在周一的更新中表示,SHIB:Metaverse是一个扩展SHIB生态系统效用的项目,预计将于今年12月开放。元宇宙不太可能在发布时完全完成,因为它将是一个“正在进行的项目”。

据悉,SHIB:Metaverse将拥有100,595块由用户铸造的土地。地主可以从他们的地块中获得被动收入,收集游戏内资源并获得奖励。该元宇宙项目将在Shibarium中开发,Shibarium是即将推出的第2层网络,使用Shiba生态系统代币,例如BONE和LEASH,其测试网已经上线。[2023/4/11 13:57:03]

漏洞分析

由于 MM 在发布这个 Clickjacking 漏洞的时候并没有详细的说明,仅是解释了这个漏洞的利用场景以及能够产生的危害,所以我在进行复现的时候也遇到了挺多坑(各种盲猜漏洞点),所以为了让大家能够更好地顺畅地理解整个漏洞,我在进行漏洞分析之前先补充下一个知识点。

前谷歌CEO:对Facebook能否成功构建元宇宙表示怀疑,不会叫它“Meta”:金色财经报道,前谷歌CEO埃里克·施密特在接受CNBC“Squawk Box”节目采访时表示对Facebook能否成功构建元宇宙表示怀疑,他说道:“我期待着元宇宙的出色创新,我已经等了大约三十年......但至于 Facebook 是否会建立它,我不知道。” 埃里克·施密特还表示,他会继续用Facebook这个词,而不是用“Meta”来称呼这家公司,就像其他人称 Alphabet 为“谷歌”一样。在谈到元宇宙监管问题时,埃里克·施密特说道:“我们需要弄清楚元宇宙U监管,但现在我觉得我们还不知道如何监管这一领域,我认为今天的监管机构没有正确的表述,甚至没有如何讨论这个问题。”[2021/11/3 6:27:50]

我们来了解下 Manifest - Web Accessible Resources。在浏览器扩展钱包中有这么一个配置:web_accessible_resources,其用来约束 Web 页面能够访问到浏览器扩展的哪些资源,并且在默认的情况下是 Web 页面访问不到浏览器扩展中的资源文件,仅浏览器扩展的本身才能访问到浏览器扩展的资源。简而言之就是 http/https 等协议下的页面默认是没法访问到 chrome-extension,当然如果扩展钱包配置了 web_accessible_resources 将扩展钱包内部的资源暴露出来,那么就能被 http/https 等协议下的页面访问到了。

Layer2 DAO基础协议Metis首轮IDO白名单公布:据官方消息,PAID Network已公布Metis IDO白名单入围地址,截至目前共计44000人参与,中签1000人,每个Ticket将获得100美金认购金额。北京时间5月13日11:00,Ignition将投放20,000枚METIS代币,定价5美金,并先后在Galaxy Pool、Moon Pool开启首轮IDO。此外,Metis将于5月13日12:00在gate.io开启第二轮IDO,并于当日21:00开放交易。

Metis是Layer2 DAO基础协议,用于DAC(去中心化的自组织公司)的创建、管理和发展。Metis通过其DAC框架,在高性能、高可扩展性、低成本的Layer2之上支撑去中心化应用和经济体的运行。[2021/5/11 21:47:05]

而 MM 扩展钱包在 10.14.6 之前的版本(本文以 10.14.5 为例)一直保留着 "web_accessible_resources": ["inpage.js", "phishing.html"] 的配置,而这个配置是漏洞得以被利用的一个关键点。

Anchorage 和Prometheum推出数字资产替代交易系统:3月31日消息,安克雷奇和Prometheum推出数字资产替代交易系统(ATS)或暗池交易,该系统尚待监管部门批准,有希望于今年晚些时候向公众开放。上个月,TokenSoft允许客户在tZERO替代交易系统上交易数字证券。其他数字证券ATS提供商还包括OpenFinance和Public Private Execution Network。(Decrypt)[2021/3/31 19:34:19]

然而在进行漏洞分析的时候,发现在 app/scripts/phishing-detect.js(v10.14.5) 中已经对钓鱼页面的跳转做了协议的限制。(这里的限制在我的理解应该是还有其他的坑,毕竟 "web_accessible_resources": ["inpage.js", "phishing.html"]`这个配置还保留着)。

以太坊轻钱包MetaMask将转向分层专有软件许可:金色财经报道,以太坊轻钱包MetaMask将从MIT开源许可转向新的分层专有软件许可。Metask表示,对于所有用户、大多数应用程序开发者和非营利组织而言,这不会产生任何影响,MetaMask将继续免费。开发人员将拥有与过去相同的对MetaMask API的访问权限。但是对于部分开发者复制、修改MetaMask钱包的代码库并用于商业用途,MetaMask团队希望签订正式的商业合同。[2020/8/22]

我们继续跟进这个协议限制的改动时间点,发现是在如下这个 commit 中添加了这个限制,也就是说在 v10.14.1 之前由于没有对跳转的协议进行限制,导致 Clickjacking 漏洞可以轻易被利用。

相关的 commit:

https://github.com/MetaMask/metamask-extension/commit/c1ca70d7325577835a23c1fae2b0b9b10df54490

https://github.com/MetaMask/metamask-extension/compare/v10.14.0...v10.14.1

为了验证代码的分析过程,我们切换到 protocol 限制之前的版本 v10.14.0 进行测试,发现可以轻松复现整个攻击过程。

但是在 MM 公开的报告中也提到,Clickjacking 漏洞是在 v10.14.6 进行了修复,所以 v10.14.5 是存在漏洞的,再继续回头看这里的猜想。(这里的限制在我的理解应该是还有其他的坑,毕竟 "web_accessible_resources": ["inpage.js", "phishing.html"] 这个配置还保留着)。

经过反复翻阅代码,在 v10.14.5 以及之前版本的代码,会在钓鱼页面提示的时候,如果用户点击了 continuing at your own risk. 之后就会将这个 hostname 加入到本地的白名单列表中。从而在下一次访问到该网站的时候就不会再出现 MetaMask Phishing Detection 的提醒。

比如这个钓鱼网站:ethstake.exchange,通过 iframe 标签将钓鱼网站嵌入到网页中,然后利用 Clickjacking 漏洞就能将恶意的钓鱼网站加入到白名单中,同时在用户下一次访问钓鱼网站的时候 MM 不会再继续弹出警告。

分析结论

如上述的分析过程,其实 MM 近期修复的是两个 Clickjacking 漏洞,在复现过程中发现最新的 v10.14.6 已经将 web_accessible_resources 的相关配置移除了,彻底修复了 MetaMask Phishing Detection 页面的点击劫持的问题。

(1)利用 Clickjacking 漏洞诱导用户进行转账的修复(影响版本:https://github.com/MetaMask/metamask-extension/commit/7199d9c56775111f85225fe15297e47de8e2bc96

慢雾安全团队对 chrome 扩展商店中的各个知名的扩展钱包进行了 Clickjacking 的漏洞检测,发现如下的钱包受到 Clickjacking 漏洞影响:

Coinbase Wallet (v2.17.2)

Coin98 Wallet (v6.0.6)

Maiar DeFi Wallet (v1.2.17)

慢雾安全团队第一时间联系项目方团队,但是到目前为止部分项目方还未反馈,并且 MM 公开这个漏洞至今已经过去了 11 天。为了避免用户因为该漏洞遭受损失,慢雾安全团队选择公开漏洞的分析。如果受影响的相关项目方看到这篇文章需要协助请联系慢雾安全团队。

慢雾安全团队再次提醒浏览器扩展钱包项目方如果有基于 MetaMask

慢雾安全团队建议普通用户在项目方还未修复漏洞之前可以先暂时停止使用这些扩展钱包(在浏览器扩展程序管理中关闭这些扩展钱包),等待钱包官方发布修复版本后,用户可以及时更新到已修复的版本进行使用。

标签:METMETAETAASKStarkMetaMETAALLBIMetafurymetamask打不开

世界币热门资讯
DAO:从VUCA视角 评估和建立DAO的弹性

这是一个VUCA世界,我们只是生活在其中。VUCA是斯坦利-麦克里斯特尔将军的《团队的力量》一书中所提到的概念.

1900/1/1 0:00:00
COI:凛冬中Gitcoin艰难的财库多元化

OTC操作对接了专业服务商,由于GTC市场流动性很好,300万的抛压对市场的影响倒也还好,评估是总滑点不超过10bps.

1900/1/1 0:00:00
区块链:详解 PoS 经济格局:质押会推动下一轮牛市吗?

我们把 PoS 质押分成了三部分:节点供应商、液态质押池、金融衍生品大玩家已经主导了整个质押市场新玩家可以通过支持长尾资产.

1900/1/1 0:00:00
以太坊:以太坊漫游指南(上篇)

主要观点以太坊是唯一一个旨在建立可扩展、并将结算和数据可 用性层统一的主要协议。Rollups 在利用以太坊安全性的同时扩展了计算能力.

1900/1/1 0:00:00
WEB3:Web3的白帽黑客所面临的困境

3月9日凌晨,还在睡觉的LP接到Telegram上的电话。在她看来,这可不是什么好兆头。她从毯子下面拿起笔记本电脑,戴上隐形眼镜。是时候拯救别人的加密货币了——先黑掉它们.

1900/1/1 0:00:00
BLOC:Celsius和三箭之后 BlockFi也已处于暴雷前夜

今日早间,加密货币分析师 Otteroooo 于个人推特发布了一篇关于 CeFi (中心化金融服务机构)巨头 BlockFi 资金状况的详尽调查.

1900/1/1 0:00:00