
作者:23pds & Thinking
背景
近年來,在 LinkedIn 平臺上針對區塊鏈工程師的釣魚事件時有發生,昨天,我們在 X 上注意到 @_swader_ 發布的一個帖子。這個遭遇其實是針對區塊鏈工程師招聘釣魚的一個縮影,接下來我們分析下這個案例。
(https://x.com/_swader_/status/1900116168544817589)
過程
根據 Bruno 的描述,一個自稱是項目方的人主動聯繫到他,然後給他發了一段很長的項目介紹:
內容主要涉及一個區塊鏈 Socifi 遊戲和質押智能合約平臺的招聘信息。
項目概述
該項目是一個基於 Socifi 遊戲的質押智能合約平臺。核心功能包括:
• 去中心化交易所
• 遊戲
• 多遊戲社區功能
• NFT 和代幣(Tokens)
• 直播服務
招聘意圖
• 尋找開發者加入該項目。
• 已經招聘了後端和智能合約開發人員。
• 推薦 Bruno Skvorc 擔任項目經理/前端開發團隊負責人。
MVP 設計
• 發送者提供了 Figma 設計連結,指向 MVP v2 版本。
招聘流程
-
背景調查
-
在線編程測試
-
技術面試
剛開始招聘人員含糊其辭,然後開始給 Bruno 打電話,試圖傳達緊迫感和重要性,並立即提供了 repo 連結:https://bitbucket[.]org/ventionteam/gameplatform/src/main/。
用戶和提交代碼的時間:
接下來我們分析下惡意代碼。
技戰法
我們看下代碼說明:
那麼它的真實功能是不是如此呢?
首先看下 package.json:
並沒有發現惡意的第三方模塊,看來不是通過惡意 NPM 包進行攻擊。我們繼續分析,當我們看到 server.js 時,如果不注意,看到第 47 行可能就結束了,畢竟一眼看過去似乎沒什麼異常。
但是,注意仔細看第 46 行,那是什麼?而且有很小的水平滾動條,這表示右邊有東西!我們拖過去看下:
這是一個加密的惡意 payload,它的具體作用是什麼呢?我們看一下代碼:
(上圖為部分代碼)
這是經過加密的代碼,而且不止一層,base64 加密。
運行 npm start 後,會正常運行,那麼這個 payload 究竟有什麼用?
我們虛擬機運行一下測試(專業操作,請勿模仿)。
發現這個攻擊手法各種混淆,解密比較麻煩,我們直接通過 Hook 手法把 C2 連結抓出來:
成功抓到惡意 IP:
-
216.173.115[.]200
-
95.179.135[.]133
-
45.59.163[.]56
-
45.59.1[.]2
-
5.135.5[.]48
惡意請求:http://216.173.115[.]200:1244/s/bc7302f71ff3。有趣的是,這個惡意請求竟然繞過了 little snitch 的監控檢測。
攻擊者會下載文件並執行,兩個文件分別是 test.js 和 .npl。
該 .npl 木馬主要用於權限維持:
這是 .npl 解碼後的內容:
上述代碼用於下載一個名為 pay 的 Python 程序,解碼後的內容如下:
攻擊者使用 Python 執行 .npl 用於維持權限。
test.js 主要用於盜取瀏覽器數據,如插件錢包數據、瀏覽器保存的帳號密碼等:
(test.js 代碼部分片段)
解密(片段):
最終根據我們分析,一旦受害者運行代碼,payload 將執行以下操作:
1. 收集系統/環境數據(主目錄、平臺、主機名、用戶名等)。
2. 向遠程伺服器發出 HTTP 請求以獲取其他數據或有效 payload。
3. 將獲取的有效 payload 寫入本地文件系統(通常在主目錄中)。
4. 使用 Node 的 child_process.exec 執行這些有效 payload。
5. 繼續回連或「回傳」系統數據到 C2 伺服器。
6. 每隔一段時間重複此活動,保持心跳包,如果初次嘗試失敗,則嘗試多次。
7. 悄悄監控用戶行為,為盜取加密資產等行為做準備,如代碼中嘗試讀取特定目錄 /Library/Keychains/(macOS 關鍵存儲路徑)、竊取 SSH 私鑰、盜取瀏覽器插件數據、瀏覽器保存的帳號密碼等。
同時 @blackbigswan 發現相同的用戶:
-
https://github[.]com/DavidDev0219
-
https://github[.]com/vention-dev
-
https://github[.]com/FortuneTechWorld
筆者猜測是同一批攻擊者,不再做多餘分析。
應對建議
攻擊者通常會通過 Telegram、Discord、LinkedIn 發送惡意文件,針對這類釣魚攻擊,我們從用戶和企業的角度提出以下應對建議:
用戶
-
警惕要求下載或運行 GitHub 等平臺代碼的可疑招聘信息或兼職,優先通過企業官網、官方郵箱核實發件人身份,避免輕信「限時高薪任務」等誘導話術;
-
處理外部代碼時,應嚴格審查項目來源及作者背景,拒絕運行未經驗證的高風險項目,建議在虛擬機或沙盒環境執行可疑代碼以隔離風險;
-
對 Telegram、Discord 等平臺接收的文件保持警惕,禁用自動下載功能並手動掃描文件,警惕以「技術測試」為名的惡意腳本執行請求;
-
啟用多因素認證並定期更換高強度密碼,避免跨平臺重複使用。
企業
-
定期組織員工參與釣魚攻擊模擬演練,培訓識別仿冒域名及異常請求的能力;
-
部署郵件安全網關攔截惡意附件;
-
監控代碼倉庫敏感信息是否洩露;
-
建立釣魚事件應急響應機制,通過技術防護與人員意識相結合的多維策略降低數據洩露與資產損失風險。