作者: 耀
事件背景
近期,慢霧安全團(tuán)隊(duì)和 Rabby 錢包團(tuán)隊(duì)發(fā)現(xiàn)了一種利用 Google 廣告進(jìn)行釣魚的攻擊手法。此外,慢霧安全團(tuán)隊(duì)聯(lián)合 Rabby 錢包團(tuán)隊(duì)對(duì)該攻擊手法展開深入分析。
根據(jù) Rabby Wallet 團(tuán)隊(duì)的描述,自願(yuàn)購買任何 Google 廣告,然而這個(gè)假廣告卻突然出現(xiàn)在真正的官方網(wǎng)站上,莫非釣魚團(tuán)夥花錢推廣真錢包?
從Google搜尋關(guān)鍵字情況來看,排在前面的搜尋結(jié)果都為釣魚廣告,然而第一條廣告的連結(jié)卻很反常,它顯示的顯然是Rabby Wallet的官方網(wǎng)站地址https://rabby. io,釣魚集團(tuán)為什麼要買家?
透過追蹤發(fā)現(xiàn),釣魚廣告有時(shí)會(huì)跳到真實(shí)的官方地址https://rabby.io。 在多次更換不同地區(qū)的代理商後,就會(huì)跳到釣魚地址http://rebby.io,並且這個(gè)釣魚地址會(huì)更新、改變。 在撰寫本文時(shí),該連結(jié)指向釣魚地址 https://robby.page[.]link/Zi7X/?url=https://rabby.io?gad_source=1。
技術(shù)分析
我們先說下什麼是 302,302 是一個(gè) HTTP 狀態(tài)碼,代表暫時(shí)重定向(Found)。當(dāng)伺服器收到客戶端的請(qǐng)求後,如果需要暫時(shí)將請(qǐng)求的資源轉(zhuǎn)移到另一個(gè)位置,就會(huì)傳回 302狀態(tài)碼,同時(shí)在回應(yīng)頭中包含一個(gè)位置字段,指示客戶端應(yīng)該重定向到的新位置。這種重定向是臨時(shí)性的。
經(jīng)過分析發(fā)現(xiàn),該釣魚廣告的鏈接會(huì)經(jīng)過多個(gè) 302 截圖,如下圖所示,使用curl 命令請(qǐng)求該鏈接,第一次會(huì) 302 截圖到釣魚地址 https://rabby.iopost.ivsquarestudio。com,然而在第二次302時(shí)卻出現(xiàn)了兩種情況:
1.當(dāng)我們使用curl指令請(qǐng)求上述Location地址https://rabby.iopost.ivsquarestudio.com時(shí),會(huì)出現(xiàn)一個(gè)302跳到真正的官方地址https://rabby.io。
2.然而,當(dāng)我們使用curl命令模擬普通瀏覽器請(qǐng)求上述Location地址https://rabby.iopost.ivsquarestudio.com(攜帶請(qǐng)求頭包括User-Agent、Accept、Referer、Accept-Encoding等字段時(shí)) ,它會(huì)跳到新的Location 位址https://dnovomedia.com?uid=087aa42d-724b-4a1e-bae7-f1f700ce71e6。
可見,釣魚連結(jié)會(huì)在第二次302跳轉(zhuǎn)時(shí)做出判斷。 當(dāng)偵測到異常瀏覽器請(qǐng)求時(shí),將重定向至官方地址; 當(dāng)偵測到正常的瀏覽器請(qǐng)求行為且區(qū)域合理時(shí),則會(huì)重新導(dǎo)向到釣魚位址。
我們追蹤發(fā)現(xiàn)最後一次截圖的釣魚地址為 https://rabbyo.com/index.php?uid=087aa42d-724b-4a1e-bae7-f1f700ce71e6。
打開釣魚鏈接,發(fā)現(xiàn)釣魚頁面幾乎克隆了真實(shí)官網(wǎng)的大部分內(nèi)容:
透過追蹤302重定向,我們發(fā)現(xiàn)以下釣魚連結(jié)地址:
https://robby.page.link/Zi7X
https://rabby.iopost.ivsquarestudio.com
https://dnovomedia.com?uid=087aa42d-724b-4a1e-bae7-f1f700ce71e6
https://rabbyo.com
https://rebby.io
透過威脅情報(bào)平臺(tái)查詢r(jià)ebby.io和rabbyo.com這兩個(gè)釣魚域名,發(fā)現(xiàn)它們的註冊時(shí)間都在2024年1月份。
木馬分析
查看程式碼,發(fā)現(xiàn)攻擊者使用的是:
釣魚部署後臺(tái)程式使用Fastpanel(Fastpanel是俄語地區(qū)託管提供者開發(fā)的虛擬主機(jī)管理面板):
隨後查看釣魚網(wǎng)頁原始碼,發(fā)現(xiàn)點(diǎn)擊下載桌面版會(huì)進(jìn)行客戶端驗(yàn)證:
如果檢查發(fā)現(xiàn)目前環(huán)境是Mac電腦,則會(huì)跳到下載位址https://brandsrocket.com/data/rabby-wallet-desktop-installer-x64-latest.dmg。
可以發(fā)現(xiàn)該木馬佔(zhàn)用的儲(chǔ)存空間非常小,只有1.1MB:
該木馬被上傳到線上威脅分析網(wǎng)站進(jìn)行分析,發(fā)現(xiàn)該木馬樣本在撰寫本文前19天就已經(jīng)被分析過,並被多個(gè)防毒引擎識(shí)別為木馬後門。
(https://www.virustotal.com/gui/file/ce6169ae0efe851473a189add9c88f96fdebe1ff3f549c457339e25d9e6feca8/檢測)
釣魚背後的技術(shù)
可以看到,是從廣告投放到釣魚網(wǎng)站製作,再到木馬製作,釣魚團(tuán)夥一套操作下來行雲(yún)流水。讓人看不懂,為何谷歌搜尋的廣告訊息顯示的是官方地址?又為何後續(xù)經(jīng)過了多次的302 截圖?分析發(fā)現(xiàn),關(guān)鍵操作是釣魚團(tuán)夥利用了Google 自家的Firebase 短鏈接服務(wù)的302 截圖來欺騙谷歌的展示。
為了讓這個(gè)過程更清晰,我們還需要先了解Google廣告的投放機(jī)制(只要擁有Google帳號(hào),就可以登入Google的廣告管理網(wǎng)站https://ads.google.com進(jìn)行推廣設(shè)定):
1.首先,需要在廣告管理網(wǎng)站新建一個(gè)目標(biāo)為網(wǎng)站流量,類型為搜尋的廣告活動(dòng)。
2. 設(shè)定廣告價(jià)格和頻率後,選擇廣告區(qū)域和語言。 這也解釋了為什麼在不同地區(qū)或不同語言環(huán)境中搜尋關(guān)鍵字時(shí),廣告不一定會(huì)出現(xiàn)。
3. 現(xiàn)在到了關(guān)鍵的一步,設(shè)定追蹤範(fàn)本。 追蹤模板是 Google Ads 的高級(jí)功能,可讓第三方追蹤廣告連結(jié)。
我們注意到,釣魚頁面使用的第一個(gè)跳躍連結(jié)網(wǎng)域是page.link。 這其實(shí)是Google Firebase的一個(gè)短位址服務(wù)。 該服務(wù)允許將任何重定向位址綁定到 page.link 的子網(wǎng)域。 。
由於第三方追蹤連結(jié)需要是經(jīng)過谷歌認(rèn)證的地址,而page.link恰好是谷歌自己的域名,因此釣魚團(tuán)夥繞過了這一限制。
4.廣告投放後,由於谷歌並不會(huì)即時(shí)檢查302跳轉(zhuǎn)的連結(jié)是否發(fā)生了,也不會(huì)即時(shí)修改廣告訊息,因此改變釣魚團(tuán)夥會(huì)在廣告投放一段時(shí)間後,修改指向釣魚網(wǎng)址。
類似的釣魚套路也出現(xiàn)在各種聊天軟體上。以Telegram聊天軟體為例,當(dāng)聊天時(shí)發(fā)送一個(gè)URL鏈接,Telegram後臺(tái)會(huì)抓取URL鏈接域名、標(biāo)題和圖標(biāo)進(jìn)行預(yù)覽展示。
(此圖僅供示範(fàn))
然而,在抓取後續(xù)預(yù)覽資訊時(shí),Telegram 並沒有阻止 302 個(gè)跳轉(zhuǎn)。,用戶如果只根據(jù)頁面的資訊判斷,然後點(diǎn)擊鏈接,則可能跳到預(yù)設(shè)的釣魚地址。
總結(jié)
請(qǐng)廣大用戶認(rèn)準(zhǔn)Rabby錢包官方地址https://rabby.io,不可任何搜尋結(jié)果顯示出來的廣告投放地址;如果不幸中招,請(qǐng)第一時(shí)間轉(zhuǎn)移錢包資金,對(duì)隱形個(gè)人電腦進(jìn)行全面的殺毒相信查一下;平常在點(diǎn)擊網(wǎng)站連結(jié)前要保留一點(diǎn)疑慮;排更多的安全知識(shí)建議閱讀慢霧安全團(tuán)隊(duì)出品的《區(qū)塊鏈黑暗森林自救手冊》:https://github.com/slowmist/Blockchain- dark -forest-selfguard-handbook/blob/main/README_CN.md。