擁有 140 萬(wàn)用戶(hù)的惡意 Cookie 填充 Chrome 擴(kuò)展程序

幾個(gè)月前,McAfee發(fā)布了一篇關(guān)于惡意擴(kuò)展程序的文章,該擴(kuò)展程序?qū)⒂脩?hù)重定向到釣魚(yú)網(wǎng)站并將會(huì)員 ID 插入電子商務(wù)網(wǎng)站的 cookie。從那時(shí)起,研究人員就開(kāi)始調(diào)查了其他幾個(gè)惡意擴(kuò)展,總共發(fā)現(xiàn)了 5 個(gè)擴(kuò)展,總安裝量超過(guò)140 萬(wàn)。

這些擴(kuò)展提供了各種功能,例如使用戶(hù)能夠一起觀看 Netflix 節(jié)目、網(wǎng)站優(yōu)惠券并對(duì)網(wǎng)站進(jìn)行截圖。后者從另一個(gè)名為 GoFullPage 的流行擴(kuò)展中借用了幾個(gè)短語(yǔ)。

除了提供預(yù)期的功能外,擴(kuò)展程序還跟蹤用戶(hù)的瀏覽活動(dòng)。每個(gè)訪問(wèn)的網(wǎng)站都會(huì)發(fā)送到擴(kuò)展程序創(chuàng)建者擁有的服務(wù)器。他們這樣做是為了將代碼插入正在訪問(wèn)的電子商務(wù)網(wǎng)站。此操作會(huì)修改網(wǎng)站上的 cookie,以便擴(kuò)展開(kāi)發(fā)者收到購(gòu)買(mǎi)的任何物品的附屬付款。
擴(kuò)展程序的用戶(hù)不知道此功能以及被訪問(wèn)的每個(gè)網(wǎng)站的隱私風(fēng)險(xiǎn)都被發(fā)送到擴(kuò)展程序開(kāi)發(fā)者的服務(wù)器。
5個(gè)擴(kuò)展

技術(shù)分析
本節(jié)包含惡意 chrome 擴(kuò)展“mmnbenehknklpbendgmgngeaignppnbe”的技術(shù)分析。所有 5 個(gè)擴(kuò)展都執(zhí)行類(lèi)似的行為。
Manifest.json

manifest.json 將背景頁(yè)面設(shè)置為 bg.html。這個(gè) HTML 文件加載 b0.js,它負(fù)責(zé)發(fā)送被訪問(wèn)的 URL 并將代碼注入電子商務(wù)網(wǎng)站。
B0.js
b0.js腳本包含許多函數(shù)。本文將重點(diǎn)介紹負(fù)責(zé)將訪問(wèn)過(guò)的 URL 發(fā)送到服務(wù)器并處理響應(yīng)的函數(shù)。
Chrome擴(kuò)展的工作方式是訂閱事件,然后將其用作執(zhí)行特定活動(dòng)的觸發(fā)器。擴(kuò)展分析訂閱事件來(lái)自chrome.tabs.onUpdated。當(dāng)用戶(hù)導(dǎo)航到一個(gè)標(biāo)簽內(nèi)的新URL時(shí),chrome.tabs.onUpdated將觸發(fā)。

一旦此事件觸發(fā),擴(kuò)展程序?qū)⑹褂?tab.url 變量設(shè)置一個(gè)名為 curl 的變量和選項(xiàng)卡的 URL。它創(chuàng)建了幾個(gè)其他變量,然后將這些變量發(fā)送到 d.langhort.com。 POST 數(shù)據(jù)格式如下:

隨機(jī) ID 是通過(guò)在字符集中選擇 8 個(gè)隨機(jī)字符來(lái)創(chuàng)建的。代碼如下所示:

國(guó)家、城市和郵編是使用 ip-api.com 收集的。代碼如下所示:

收到 URL 后,langhort.com 將檢查它是否與擁有附屬 ID 的網(wǎng)站列表匹配,如果匹配,它將響應(yīng)查詢(xún)。這方面的一個(gè)示例如下所示:

返回的數(shù)據(jù)為 JSON 格式。使用下面的函數(shù)檢查響應(yīng),并將根據(jù)響應(yīng)包含的內(nèi)容調(diào)用更多函數(shù)。

其中兩個(gè)函數(shù)詳述如下:
(1) Result[‘c’] – passf_url
如果結(jié)果是“c”,例如本文的結(jié)果,則擴(kuò)展程序?qū)⒉樵?xún)返回的 URL。然后它將檢查響應(yīng),如果狀態(tài)是 200 或 404,它將檢查查詢(xún)是否以 URL 響應(yīng)。如果是這樣,它將從服務(wù)器接收到的 URL 作為 iframe 插入到正在訪問(wèn)的網(wǎng)站上。

(2) Result[‘e’] setCookie
如果結(jié)果是' e ',擴(kuò)展會(huì)將結(jié)果插入到cookie中。不過(guò)在分析過(guò)程中,我們無(wú)法找到“e”的響應(yīng),但這將使開(kāi)發(fā)者能夠?qū)⑷魏?cookie 添加到任何網(wǎng)站,因?yàn)閿U(kuò)展具有正確的“cookie”權(quán)限。

行為流
下圖顯示了導(dǎo)航到 BestBuy 網(wǎng)站時(shí)的分步流程。

- 用戶(hù)導(dǎo)航到 bestbuy.com,擴(kuò)展程序?qū)⒋?URL 以 Base64 格式發(fā)布到 d.langhort.com/chrome/TrackData/;
- Langhort.com 以“c”和 URL 響應(yīng)。 “c”表示擴(kuò)展將調(diào)用函數(shù) passf_url();
- passf_url() 將對(duì) URL 執(zhí)行一個(gè)請(qǐng)求;
- 步驟 3 中查詢(xún)的 URL 使用 301 響應(yīng)重定向到 bestbuy.com,其附屬 ID 與擴(kuò)展所有者相關(guān)聯(lián);
- 該擴(kuò)展程序會(huì)將 URL 作為 iframe 插入到用戶(hù)訪問(wèn)的 bestbuy.com 網(wǎng)站中;
- 顯示為與擴(kuò)展所有者關(guān)聯(lián)的附屬 ID 設(shè)置的 Cookie。他們現(xiàn)在將收到在 bestbuy.com 上進(jìn)行的任何購(gòu)買(mǎi)的傭金;
整個(gè)過(guò)程的視頻請(qǐng)點(diǎn)此。
避免自動(dòng)分析的時(shí)間延遲
我們?cè)谝恍U(kuò)展中發(fā)現(xiàn)了一個(gè)有趣的技巧,可以防止在自動(dòng)分析環(huán)境中識(shí)別惡意活動(dòng)。它們包含在執(zhí)行任何惡意活動(dòng)之前的時(shí)間檢查。這是通過(guò)檢查當(dāng)前日期是否距離安裝時(shí)間大于15 天來(lái)完成的。

總結(jié)
本文強(qiáng)調(diào)了安裝擴(kuò)展的風(fēng)險(xiǎn),即使是那些擁有大量安裝基礎(chǔ)的擴(kuò)展,因?yàn)樗鼈內(nèi)匀豢赡馨瑦阂獯a。
建議你在安裝 Chrome 擴(kuò)展程序時(shí)要小心謹(jǐn)慎,并注意他們請(qǐng)求的權(quán)限。
在安裝擴(kuò)展程序之前,Chrome 會(huì)顯示權(quán)限。如果擴(kuò)展程序請(qǐng)求允許它在你訪問(wèn)的每個(gè)網(wǎng)站上運(yùn)行的權(quán)限,客戶(hù)應(yīng)該采取額外的步驟來(lái)驗(yàn)證真實(shí)性,例如本文中詳述的網(wǎng)站。

本文翻譯自:https://www.mcafee.com/blogs/other-blogs/mcafee-labs/malicious-cookie-stuffing-chrome-extensions-with-1-4-million-users/
































