作者:耀@慢霧安全團隊
背景
區塊鏈的世界遵循黑暗森林法則,在這個世界我們隨時可能遭受到來自不明的外部攻擊,作為普通用戶不進行作惡,但是了解黑客的作惡的方式是十分必要的。
慢霧安全團隊此前發布了區塊鏈黑暗森林自救手冊,其中提到了不少關于針對NFT項目方的Discord進行攻擊的手法,為了幫助讀者對相關釣魚方式有更清晰的認知,本文將揭露其中一種釣魚方法,即通過惡意的書簽來盜取項目方Discord賬號的Token,用來發布虛假信息等誘導用戶訪問釣魚網站,從而盜取用戶的數字資產。
釣魚事件
先來回顧一起Discord釣魚事件:2022年3月14日,一則推特稱NFT項目WizardPass的Discord社區被詐騙者入侵,目前已造成BAYC、Doodles、CloneX等NFT被盜,詳情如下:
微軟瀏覽器Microsoft Edge現已支持歐易插件錢包:據歐易OKX官方消息,微軟瀏覽器Microsoft Edge現已支持歐易Web3插件錢包,是為數不多Microsoft Edge支持的Web3插件錢包。用戶可通過Microsoft Edge安裝、使用歐易Web3插件錢包。
上周,微軟完成了對一家專注Web3游戲公司的投資。微軟游戲公司首席執行官Phil Spencer表明公司打算擴大對web3的參與。[2022/11/17 13:17:01]
來源:https://twitter.com/sentinelwtf/status/1496293768542429187
該解讀里說的bookmark就是瀏覽器書簽,這個書簽里的內容可以是一段JavaScript惡意代碼,當Discord用戶點擊時,惡意JavaScript代碼就會在用戶所在的Discord域內執行,盜取DiscordToken,攻擊者獲得項目方的DiscordToken后就可以直接自動化接管項目方的Discord賬戶相關權限。
Opera推出以Web3為重點的加密瀏覽器Beta版本:1月19日消息,Opera發布其新加密瀏覽器項目的Beta版本。該加密瀏覽器旨在通過為Windows、Mac和Android用戶提供直接訪問Web3服務的功能,促進用戶瀏覽DApp、游戲和元宇宙平臺的體驗。
當前的Opera瀏覽器擁有免登錄的VPN和原生廣告和跟蹤攔截器,這有助于確保其安全。新的加密瀏覽器將保持這些安全功能,同時集成去中心化交易所、NFT和游戲DApp的直接訪問渠道,并支持Telegram和Twitter。
Opera移動端執行副總裁Jorgen Arnesen表示,該項目的主要目標是幫助加密貨幣和Web3變得更加主流。(Cointelegraph)[2022/1/19 8:59:00]
背景知識
要理解該事件需要讀者有一定的背景知識,現在的瀏覽器都有自帶的書簽管理器,在提供便利的同時卻也容易被攻擊者利用。通過精心構造惡意的釣魚頁面可以讓你收藏的書簽中插入一段JavaScript代碼,當受害者點擊書簽時會以當前瀏覽器標簽頁的域進行執行。
HBTC Chain測試網2.0版本升級完成并發布首個瀏覽器錢包:據霍比特HBTC官方消息,2020年12月28日,HBTC Chain測試網在1.0版本基礎上進行2.0升級優化,針對測試網1.0版本反饋問題進行優化修改,同時提升APP用戶使用體驗。HBTC Chain測試網2.0版本實現并支持完整的OpenDex及鏈上SaaS模式應用。
另外開放Web錢包及Web版本的Dex支持,通過hbtcchain.io可直接下載HBTC Wallet。HBTC Chain開發團隊公開瀏覽器插件錢包,目前已經支持包括Chrome、Firefox等主流瀏覽器。作為開源的瀏覽器插件,瀏覽器錢包將提供一種安全的方式,便與HBTC Wallet(去中心化應用Dapp)進行交互。通過該瀏覽器插件錢包,終端用戶可以在網頁上使用HBTC Wallet應用。[2020/12/28 15:54:33]
以上圖為例,受害者打開了discord.com官網,并在這個頁面點擊了之前收藏的惡意的書簽“Hello,World!”從而執行了一個彈窗語句,可以發現執行的源顯示的是discord.com。
動態 | 基于區塊鏈的互聯網瀏覽器每月活躍用戶超過310萬:基于區塊鏈的互聯網瀏覽器Brave在2018年7月宣布其平臺每月活躍用戶超過310萬。該產品已準備好“在2018年底之前”每月活躍用戶達到500萬大關。Brave的原生基本注意力令牌(BAT)是英美煙草補助金的一部分,主要用于支持在YouTube和Twitch等網站上創建獨特內容。[2018/7/16]
這里有一個域的概念,瀏覽器是有同源策略等防護策略的,按理不屬于discord.com做出的操作不應該在discord.com域的頁面有響應,但書簽卻繞過了這個限制。
可以預見書簽這么個小功能隱含的安全問題,正常添加書簽的方式會明顯看到書簽網址:
稍微有安全意識的讀者應該會直接看到網址信息明顯存在問題。
當然如果是一個構造好誘導你拖拽收藏到書簽欄到頁面呢?可以看到Twitter鏈接中的演示視頻就是構造了這么個誘導頁面:「Dragthistoyourbookmarked」。
也就是拖著某個鏈接即可添加到書簽欄,只要釣魚劇本寫得足夠真實,就很容易讓安全意識不足的用戶中招。
要實現拖拽即可添加到書簽欄只需要構造一個a標簽,下面是示例代碼:
Hello,World!
書簽在點擊時可以像在開發者工具控制臺中的代碼一樣執行,并且會繞過CSP策略。
讀者可能會有疑問,類似「javascript:()」這樣的鏈接,在添加進入到瀏覽器書簽欄,瀏覽器竟然會沒有任何的提醒?
筆者這里以谷歌和火狐兩款瀏覽器來進行對比。
使用谷歌瀏覽器,拖拽添加正常的URL鏈接不會有任何的編輯提醒。
使用谷歌瀏覽器,拖拽添加惡意鏈接同樣不會有任何的編輯提醒。
使用火狐瀏覽器如果添加正常鏈接不會有提醒。
使用火狐瀏覽器,如果添加惡意鏈接則會出現一個窗口提醒編輯確認保存。
由此可見在書簽添加這方面火狐瀏覽器的處理安全性更高。
場景演示
演示采用的谷歌瀏覽器,在用戶登錄Web端Discord的前提下,假設受害者在釣魚頁面的指引下添加了惡意書簽,在DiscordWeb端登錄時,點擊了該書簽,觸發惡意代碼,受害者的Token等個人信息便會通過攻擊者設置好的Discordwebhook發送到攻擊者的頻道上。
下面是演示受害者點擊了釣魚的書簽:
下面是演示攻擊者編寫的JavaScript代碼獲取Token等個人信息后,通過DiscordServer的webhook接收到。
筆者補充幾點可能會產生疑問的攻擊細節:
1.為什么受害者點了一下就獲取了?
通過背景知識我們知道,書簽可以插入一段JavaScript腳本,有了這個幾乎可以做任何事情,包括通過Discord封裝好的webpackChunkdiscord_app前端包進行信息獲取,但是為了防止作惡的發生,詳細的攻擊代碼筆者不會給出。
2.為什么攻擊者會選擇Discordwebhook進行接收?
因為Discordwebhook的格式為
“https://discord.com/api/webhooks/xxxxxx”,直接是Discord的主域名,繞過了同源策略等問題,讀者可以自行新建一個Discordwebhook進行測試。
3.拿到了Token又能怎么樣?
拿到了Token等同于登錄了Discord賬號,可以做登錄Discord的任何同等操作,比如建立一個Discordwebhook機器人,在頻道里發布公告等虛假消息進行釣魚。
總結
攻擊時刻在發生,針對已經遭受到惡意攻擊的用戶,建議立刻采取如下行動進行補救:
立刻重置Discord賬號密碼。
重置密碼后重新登錄該Discord賬號來刷新Token,才能讓攻擊者拿到的Token失效。
刪除并更換原有的webhook鏈接,因為原有的webhook已經泄露。
提高安全意識,檢查并刪除已添加的惡意書簽。
作為用戶,重要的是要注意任何添加操作和代碼都可能是惡意的,Web上會有很多的擴展看起來非常友好和靈活。書簽不能阻止網絡請求,在用戶手動觸發執行的那一刻,還是需要保持一顆懷疑的心。
金色財經報道,俄羅斯財政部最近向政府提交了“數字貨幣”法案的更新版本,旨在全面監管該國的加密貨幣市場。俄羅斯媒體本周報道了該法律條款的細節.
1900/1/1 0:00:00尊敬的BitFlix全球用戶:您好!BitFlix將于4月15日16:00(UTC8)上線ATOM/USDT、MATIC/USDT永續合約交易,Bitfinex已開放VRA交易:據官方消息.
1900/1/1 0:00:00親愛的用戶:???? ????為感謝廣大用戶的支持,ZT借貸產品“質押借幣”將於2022年04月22日00:00至2022年05月06日00:00期間所有幣種利息全免活動.
1900/1/1 0:00:00親愛的用戶: BV交易所為回饋廣大用戶,幫助更多用戶踏上交易之旅,特舉辦“四月開單節,充值、交易享好禮”專題活動,活動期間,用戶充值、交易皆可享受到各種福利.
1900/1/1 0:00:00DearKuCoinUsersKuCoinisveryproudtoannouncethattherewarddistributionfor"Upto20USDTMarginTrialFunds.
1900/1/1 0:00:00DeFi項目RevestFinance遭到黑客攻擊,損失約200萬美元。BlockSecTeam團隊第一時間介入分析,并在tweeter上向社區分享了我們的分析成果.
1900/1/1 0:00:00