背景
區塊鏈的世界遵循黑暗森林法則,在這個世界我們隨時可能遭受到來自不明的外部攻擊,作為普通用戶不進行作惡,但是了解黑客的作惡的方式是十分必要的。
慢霧安全團隊此前發布了區塊鏈黑暗森林自救手冊
(https://github.com/slowmist/Blockchain-dark-forest-selfguard-handbook),其中提到了不少關于針對 NFT 項目方的 Discord 進行攻擊的手法,為了幫助讀者對相關釣魚方式有更清晰的認知,本文將揭露其中一種釣魚方法,即通過惡意的書簽來盜取項目方 Discord 賬號的 Token,用來發布虛假信息等誘導用戶訪問釣魚網站,從而盜取用戶的數字資產。
釣魚事件
先來回顧一起 Discord 釣魚事件:2022 年 3 月 14 日,一則推特稱 NFT 項目 Wizard Pass 的 Discord 社區被詐騙者入侵,目前已造成 BAYC、Doodles、Clone X 等 NFT 被盜,詳情如下:
慢霧:針對傳言火幣信息泄漏事件不涉及用戶賬戶與資金安全 請保持客觀冷靜對待:據官方消息,慢霧注意到近日有白帽子公開了此前一個火幣已經處理完畢的過往漏洞信息。經慢霧與火幣官方確認,火幣本著負責任披露信息的策略,對本次事件做以下說明:本次事件是小范圍內(4000人)的用戶聯絡信息泄露,信息種類不涉及敏感信息,不涉及用戶賬戶與資金安全。事件發生于2021年6月22日日本站測試環境S3桶相關人員不規范操作導致,相關用戶信息于2022年10月8日已經完全隔離,日本站與火幣全球站無關。本次事件由白帽團隊發現后,火幣安全團隊2023年6月21日(10天前)已第一時間進行處理,立即關閉相關文件訪問權限,當前漏洞已修復,所有相關用戶信息已經刪除。感謝白帽團隊對于火幣安全做出的貢獻。最后提醒請大家冷靜對待,切勿傳謠。[2023/7/1 22:12:01]
(來源:https://twitter.com/SerpentAU/status/1503232270219431941)
牽出其中一個解讀:
慢霧:近期出現新的流行惡意盜幣軟件Mystic Stealer,可針對40款瀏覽器、70款瀏覽器擴展進行攻擊:6月20日消息,慢霧首席信息安全官@IM_23pds在社交媒體上發文表示,近期已出現新的加密貨幣盜竊軟件Mystic Stealer,該軟件可針對40款瀏覽器、70款瀏覽器擴展、加密貨幣錢包進行攻擊,如MetaMask、Coinbase Wallet、Binance、Rabby Wallet、OKX Wallet、OneKey等知名錢包,是目前最流行的惡意軟件,請用戶注意風險。[2023/6/20 21:49:05]
(來源:https://twitter.com/sentinelwtf/status/1496293768542429187)
該解讀里說的 bookmark 就是瀏覽器書簽,這個書簽里的內容可以是一段 JavaScript 惡意代碼,當 Discord 用戶點擊時,惡意 JavaScript 代碼就會在用戶所在的 Discord 域內執行,盜取 Discord Token,攻擊者獲得項目方的 Discord Token 后就可以直接自動化接管項目方的 Discord 賬戶相關權限。
慢霧:靚號黑客已獲取到ParaSwap Deployer和QANplatform Deployer私鑰權限:10月11日消息,據慢霧區情報,靚號黑客地址之一(0xf358..7036)已經獲取到ParaSwap Deployer和QANplatform Deployer私鑰權限。黑客從ParaSwap Deployer地址獲取到約1千美元,并在QANplatform Deployer地址做了轉入轉出測試。慢霧MistTrack對0xf358..7036分析后發現,黑客同樣盜取了The SolaVerse Deployer及其他多個靚號的資金。截止目前,黑客已經接收到超過17萬美元的資金,資金沒有進一步轉移,地址痕跡有Uniswap V3、Curve、TraderJoe,PancakeSwap、OpenSea和Matcha。慢霧MistTrack將持續監控黑客地址并分析相關痕跡。[2022/10/11 10:31:05]
背景知識
要理解該事件需要讀者有一定的背景知識,現在的瀏覽器都有自帶的書簽管理器,在提供便利的同時卻也容易被攻擊者利用。通過精心構造惡意的釣魚頁面可以讓你收藏的書簽中插入一段 JavaScript 代碼,當受害者點擊書簽時會以當前瀏覽器標簽頁的域進行執行。
慢霧:Nomad事件中仍有超過9500萬美元被盜資金留在3個地址中:8月2日消息,慢霧監測顯示,Nomad攻擊事件中仍有超過9500萬美元的被盜資金留在3個地址中。其中0xB5C55f76f90Cc528B2609109Ca14d8d84593590E中仍有1084枚ETH、120萬枚DAI、103枚WBTC等約800萬美元的加密資產,該地址也負責將1萬枚WETH轉移到另一地址以及將其他USDC轉移;第二個地址0x56D8B635A7C88Fd1104D23d632AF40c1C3Aac4e3目前仍有1.28萬枚ETH、1.02萬枚WETH、80萬DAI等約4700萬美元的加密資產;第三個地址0xBF293D5138a2a1BA407B43672643434C43827179在收到3866.6萬USDC后兌換為了DAI,目前有約3970萬美元的加密資產。
目前慢霧經過梳理后,無法將地址3與其他兩個地址連接起來,但這些攻擊具有相同的模式。[2022/8/2 2:53:04]
慢霧:Polkatrain 薅羊毛事故簡析:據慢霧區消息,波卡生態IDO平臺Polkatrain于今早發生事故,慢霧安全團隊第一時間介入分析,并定位到了具體問題。本次出現問題的合約為Polkatrain項目的POLT_LBP合約,該合約有一個swap函數,并存在一個返傭機制,當用戶通過swap函數購買PLOT代幣的時候獲得一定量的返傭,該筆返傭會通過合約里的_update函數調用transferFrom的形式轉發送給用戶。由于_update函數沒有設置一個池子的最多的返傭數量,也未在返傭的時候判斷總返傭金是否用完了,導致惡意的套利者可通過不斷調用swap函數進行代幣兌換來薅取合約的返傭獎勵。慢霧安全團隊提醒DApp項目方在設計AMM兌換機制的時候需充分考慮項目的業務場景及其經濟模型,防止意外情況發生。[2021/4/5 19:46:39]
以上圖為例,受害者打開了 discord.com 官網,并在這個頁面點擊了之前收藏的惡意的書簽“Hello,World!” 從而執行了一個彈窗語句,可以發現執行的源顯示的是 discord.com。
這里有一個域的概念,瀏覽器是有同源策略等防護策略的,按理不屬于 discord.com 做出的操作不應該在 discord.com 域的頁面有響應,但書簽卻繞過了這個限制。
可以預見書簽這么個小功能隱含的安全問題,正常添加書簽的方式會明顯看到書簽網址:
稍微有安全意識的讀者應該會直接看到網址信息明顯存在問題。
當然如果是一個構造好誘導你拖拽收藏到書簽欄到頁面呢?可以看到 twitter 鏈接中的演示視頻就是構造了這么個誘導頁面:”Drag this to your bookmarked”。
也就是拖著某個鏈接即可添加到書簽欄,只要釣魚劇本寫得足夠真實,就很容易讓安全意識不足的用戶中招。
要實現拖拽即可添加到書簽欄只需要構造一個 a 標簽,下面是示例代碼:
書簽在點擊時可以像在開發者工具控制臺中的代碼一樣執行,并且會繞過 CSP(Content Security Policy)策略。
讀者可能會有疑問,類似 “javascript:()” 這樣的鏈接,在添加進入到瀏覽器書簽欄,瀏覽器竟然會沒有任何的提醒?
筆者這里以谷歌和火狐兩款瀏覽器來進行對比。
使用谷歌瀏覽器,拖拽添加正常的 URL 鏈接不會有任何的編輯提醒。
使用谷歌瀏覽器,拖拽添加惡意鏈接同樣不會有任何的編輯提醒。
使用火狐瀏覽器如果添加正常鏈接不會有提醒。
使用火狐瀏覽器,如果添加惡意鏈接則會出現一個窗口提醒編輯確認保存。
由此可見在書簽添加這方面火狐瀏覽器的處理安全性更高。
場景演示
演示采用的谷歌瀏覽器,在用戶登錄 Web 端 Discord 的前提下,假設受害者在釣魚頁面的指引下添加了惡意書簽,在 Discord Web 端登錄時,點擊了該書簽,觸發惡意代碼,受害者的 Token 等個人信息便會通過攻擊者設置好的 Discord webhook 發送到攻擊者的頻道上。
下面是演示受害者點擊了釣魚的書簽:
下面是演示攻擊者編寫的 JavaScript 代碼獲取 Token 等個人信息后,通過 Discord Server 的 webhook 接收到。
筆者補充幾點可能會產生疑問的攻擊細節:
1. 為什么受害者點了一下就獲取了?
通過背景知識我們知道,書簽可以插入一段 JavaScript 腳本,有了這個幾乎可以做任何事情,包括通過 Discord 封裝好的 webpackChunkdiscord_app 前端包進行信息獲取,但是為了防止作惡的發生,詳細的攻擊代碼筆者不會給出。
2. 為什么攻擊者會選擇 Discord webhook 進行接收?
因為 Discord webhook 的格式為
“https://discord.com/api/webhooks/xxxxxx”,直接是 Discord 的主域名,繞過了同源策略等問題,讀者可以自行新建一個 Discord webhook 進行測試。
3. 拿到了 Token 又能怎么樣?
拿到了 Token 等同于登錄了 Discord 賬號,可以做登錄 Discord 的任何同等操作,比如建立一個 Discord webhook 機器人,在頻道里發布公告等虛假消息進行釣魚。
總結
攻擊時刻在發生,針對已經遭受到惡意攻擊的用戶,建議立刻采取如下行動進行補救:
1. 立刻重置 Discord 賬號密碼。
2. 重置密碼后重新登錄該 Discord 賬號來刷新 Token,才能讓攻擊者拿到的 Token 失效。
3. 刪除并更換原有的 webhook 鏈接,因為原有的 webhook 已經泄露。
4. 提高安全意識,檢查并刪除已添加的惡意書簽。
作為用戶,重要的是要注意任何添加操作和代碼都可能是惡意的,Web 上會有很多的擴展看起來非常友好和靈活。書簽不能阻止網絡請求,在用戶手動觸發執行的那一刻,還是需要保持一顆懷疑的心。
本文到這邊就結束了,慢霧安全團隊將會揭露更多關于黑暗森林的攻擊事件,希望能夠幫助到更多加密世界的人。
By:耀@慢霧安全團隊
就在昨天,杭州互聯網法院依法公開開庭審理了某科技公司侵害作品信息網絡傳播權糾紛案并當庭宣判。該案應當是我國數字藏品侵權糾紛審結并公開宣判的首案.
1900/1/1 0:00:00專業技能能夠變現,吃喝玩樂也可以賺錢。 過去一個多月,隨著 Stepn(GMT)的大漲,Move To Earn 的模式開始破圈,引起越來越多非加密人士的關注.
1900/1/1 0:00:00前言 進入2022年,關于元宇宙的討論從質疑轉變為認可,無論是技術、市場,還是政策,都逐漸形成合力,積極推動元宇宙走向成熟.
1900/1/1 0:00:00今年1 月下旬,美國證券交易委員會(SEC)主席根斯勒(Gary Gensler)在記者會上宣告,加密貨幣交易所2022 年將面臨SEC 的更多監督.
1900/1/1 0:00:00隨著 Arbitrum 和 Optimism 等第二層協議繼續被開發和采用,以太坊擴展解決方案變得越來越普遍.
1900/1/1 0:00:00金色財經 區塊鏈4月18日訊 自2009年中本聰推出了顛覆金融世界的比特幣以來,加密市場格局已經發生了翻天覆地的變化.
1900/1/1 0:00:00