最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

【PC樣本分析】從吾愛破解彈廣告到瀏覽器插件網(wǎng)頁挾持行為分析

2022-11-04 11:09 作者:吾愛破解論壇  | 我要投稿

作者論壇賬號:漁滒


一、分析背景與危害

起因?yàn)檎緞?wù)區(qū)出現(xiàn)的幾篇帖子

1.咱這論壇(木馬插件劫持)
2.為啥每次登錄都有廣告彈出來(木馬插件劫持)
3.進(jìn)入吾愛好多廣告,怎么設(shè)置進(jìn)去吾愛沒有廣告。
4.pc端上52論壇子論壇跳廣告,是中毒了嗎

這幾篇文章中均為插件劫持類型,并且分析代碼發(fā)現(xiàn)其中結(jié)構(gòu)高度相似。起被挾持后訪問部分網(wǎng)站會出現(xiàn)奇奇怪怪的廣告


會出現(xiàn)但不限于左上角和右上角的長方形廣告,以及左下和右下隨機(jī)出現(xiàn)的正方形廣告

同時(shí)使用百度搜索的話,鏈接會被添加返利參數(shù)如【tn=xxxxxxxxx】,雖然這個(gè)明面上沒有上面廣告這么惡心,但是也被強(qiáng)制添加了推廣返利參數(shù),那也是相當(dāng)?shù)牧髅ァ?/p>

綜上所述,這類插件主要的危害有兩個(gè):

1.會導(dǎo)致部分網(wǎng)頁出現(xiàn)詐騙、賭博等廣告,即廣告彈窗劫持。又因?yàn)槭遣糠志W(wǎng)頁才會顯示廣告,導(dǎo)致用戶誤以為是網(wǎng)頁的廣告,使得插件隱蔽性更高。
2.在搜索百度搜索等搜索時(shí),會被添加額外的返利參數(shù)。即使是正常的搜索行為,也會被不斷給開發(fā)者進(jìn)行返利推廣。同時(shí)也是特定的搜索引擎才會出現(xiàn),也導(dǎo)致大部分網(wǎng)友認(rèn)為是官方添加上去的,也具有極高隱蔽性。

備注:
本樣本是被人惡意篡改,并不是原本插件就是這樣
本樣本是被人惡意篡改,并不是原本插件就是這樣
本樣本是被人惡意篡改,并不是原本插件就是這樣

二、行為分析

首先在未安裝插件前,訪問52破解官方首頁。這時(shí)是沒有出現(xiàn)上述廣告的,然后打開Fiddler,安裝插件,安裝完成后就發(fā)現(xiàn)會發(fā)出大量的請求


此時(shí)嘗試訪問52破解官方首頁

很明顯是插件的挾持行為,導(dǎo)致了頁面出現(xiàn)預(yù)料之外的廣告。從上往下開始看看


第一個(gè)是一個(gè)【channeldelaytime】的api,里面請求參數(shù)有一個(gè)加密的字符串,但是響應(yīng)里面并沒有什么有用的東西,所以先拋棄不看,接著下一個(gè)。


接著是一個(gè)【getonlinecode】的api,從名稱上可以猜測,很有可能是加載在線的惡意js,并且這是一個(gè)302的響應(yīng)碼,跳轉(zhuǎn)到路徑【/old/0.1.1.9/code.json】的一個(gè)文件,里面是一個(gè)加密了的文件,那么只能動態(tài)調(diào)試分析了。

打開插件文件目錄,瀏覽器的核心文件是【manifest.json】


發(fā)現(xiàn)前面加了一個(gè)一些奇怪的js,全部打開這些js,然后在搜索文件中搜索【getonlinecode】


只匹配到一次,出現(xiàn)在【backg.img】,說明這個(gè)是一個(gè)比較關(guān)鍵的js,然后在單個(gè)文件中繼續(xù)搜索


可以看到請求結(jié)果經(jīng)過【openDoor】方法得到真實(shí)的js文件,然后直接eval運(yùn)行。接著打開插件的背景頁,刪除搜索緩存,設(shè)置一個(gè)xhr斷點(diǎn)后刷新


成功斷下,然后在異步回調(diào)的地方下一個(gè)斷點(diǎn)


data.data就是響應(yīng)的加密內(nèi)容,this.key就是【softwarecenter】,繼續(xù)跟進(jìn)【openDoor】方法


發(fā)現(xiàn)是一個(gè)aes加密,但是奇怪的是,密鑰才14位,并不是16位,拿解密個(gè)錘子?

不著急,繼續(xù)往里面跟進(jìn)


里面調(diào)用了【i.kdf.execute】方法,返回了n對象,這個(gè)n對象的key和iv才是真實(shí)aes使用的,這里其實(shí)是一個(gè)加鹽的aes。而卻從加密文本的開頭【U2FsdGVkX】也可以發(fā)現(xiàn)是加鹽的aes。

根據(jù)逍遙一仙的文章【易語言】帶鹽AES的加解密(非調(diào)用JS),這里有易語言模塊


下面給出python版本


解密的結(jié)果就是一段js,然后eval執(zhí)行。這就達(dá)到了在線注入js了,然后注入廣告的代碼,很有可能也是在這段js里面。


接下來這三個(gè)請求比較可以,都是返回了aes加密后的結(jié)果,用python請求并解密一下看看


這里可以看到了一些類似策略文件之類的一些敏感內(nèi)容,看起來不是一個(gè)標(biāo)準(zhǔn)的序列化方法,那么就在js里面分析反序列化方法,也是下載xhr斷點(diǎn)來查看回調(diào)函數(shù)


這里可以看到調(diào)用堆棧都是vm,也和前面獲取在線js然后eval運(yùn)行對上了,這里可以看到是調(diào)用了createTxtJson方法來解析這些敏感信息


使用python稍微復(fù)現(xiàn)一下


運(yùn)行后可以得到解析好的數(shù)據(jù)

統(tǒng)計(jì)一下每個(gè)類型有多少數(shù)據(jù)


首先就從【insertjs】開始,這個(gè)實(shí)際也是廣告出現(xiàn)的地方,搜索【"insertjs"】


發(fā)現(xiàn)是在getStrategyInstalljsCode函數(shù)里面,然后調(diào)用了getInsertJs來加載js代碼。為了方便調(diào)試,使用mitmproxy來注入js,在兩個(gè)js的開頭處加入debugger,相關(guān)內(nèi)容可以查看帖子某數(shù)和某5秒-反混淆動態(tài)注入調(diào)試的一種方案

然后訪問【https://www.52pojie.cn/】,發(fā)現(xiàn)主要在【abtdnjxxa.js】中斷下,【fsa1.min.js】經(jīng)過瀏覽發(fā)現(xiàn)其實(shí)就是一個(gè)計(jì)算瀏覽器指紋的標(biāo)準(zhǔn)代碼,所以出現(xiàn)廣告主要是【abtdnjxxa.js】影響,繼續(xù)分析這個(gè)js


主要邏輯就是在瀏覽器加載完成后,執(zhí)行一次start函數(shù),然后還有一個(gè)定時(shí)器,一直在執(zhí)行start函數(shù)


首先是判斷了isIp函數(shù),跳過了純ip的地址


然后是判斷了passHei函數(shù),跳過了一些固定不顯示廣告的網(wǎng)站,接著跳過包含【'localhost','web','.gov.cn','.org.cn','.edu.cn','.com.cn'】等的地址

還有一個(gè)heikey函數(shù),跳過一些標(biāo)題含有特殊文字的地址

其中的文字包括但不限于【后臺,系統(tǒng),登錄,注冊,管理,聯(lián)通,電信,移動,廣電,ERP,平臺】等,接著往下看

接著是getPass函數(shù),里面的關(guān)鍵詞比較敏感,就不發(fā)了,主要是匹配document.title和document.body.innerText中是否出現(xiàn)多次關(guān)鍵詞,先接著往下看,等下再回來看里面的內(nèi)容,


接著Intime函數(shù)大概就是判斷不要太短時(shí)間重復(fù)觸發(fā),defaultAd函數(shù)就是生成廣告的主體了,下面還有兩個(gè)是只有1%概率發(fā)生的廣告,是直接插入一個(gè)頁面,再看看defaultAd函數(shù)

因?yàn)槠?,就省略一些?nèi)容,這里主要是從網(wǎng)絡(luò)上【https://vb.*******.com/uios.php】獲取多個(gè)不同的域名,然后隨機(jī)獲取一個(gè)調(diào)用insAd函數(shù)


這里很明顯就是在繪制廣告的頁面,然后插入到body里面,就實(shí)現(xiàn)了下方的正方形廣告。

接著看看上方長方形的廣告怎么來的,核心來自于加載的【pc_w/all_couplet.js】這個(gè)js


這里加載js后有一個(gè)自執(zhí)行函數(shù),里面是通過網(wǎng)絡(luò)【p.*****.com/s.json?s=】獲取基本的配置文件,例如廣告所需要的圖片等等


然后通過配置文件生成廣告頁面,插入到body,那么廣告的生成就完成了。

三、規(guī)則匹配行為

因?yàn)橐欢翁L了,這里分一段繼續(xù)分析,接著輪到【"biglist"】,其實(shí)在Fiddler看到后面還有一大段連號的請求,就是從這里發(fā)出來的


【"biglist"】實(shí)際是把version作為最大值,然后循環(huán)生成鏈接來請求網(wǎng)絡(luò)數(shù)據(jù)

例如某一個(gè)domain為【*****cq/test3/all】,version為46,那么就生成

/cq/test3/all1.json
/cq/test3/all2.json
...................................
/cq/test3/all45.json
/cq/test3/all46.json

請求結(jié)果都是16長度的字符串,這些實(shí)際都是預(yù)設(shè)的域名的md5值,用于給"rule"規(guī)則匹配使用的



那么接下來"rule"和"special"就是用來挾持鏈接,增加推廣參數(shù)

看到這里有的人可能不知道有什么用,那么先發(fā)一下受害者視角

Microsoft Edge瀏覽器主頁劫持被鎖定,更改無效

記一次聯(lián)想電腦管家的“小偷小摸”

如何看待深信息機(jī)房(部分)電腦篡改百度搜索地址,添加返利參數(shù)?

谷歌瀏覽器地址欄輸入百度鏈接自動跳轉(zhuǎn)到百度02003390_30_hao_pg

好了,那么接來下開始分析行為


這種是比較常規(guī)的添加了請求前的時(shí)間監(jiān)聽,可以通過自定義的邏輯,將原本的請求鏈接變成其他的鏈接。這里的【t.listorrule(e) || t.special(e)】是兩個(gè)重要的判斷邏輯,如果符合其中一個(gè),就會修改鏈接,這里先看listorrule的邏輯,經(jīng)過測試,發(fā)現(xiàn)京東的鏈接是符合邏輯的,所以這里直接用作示例

所以請求一個(gè)商品主頁【https://item.jd.com/10057674219694.html】

在鏈接被修改前斷下??纯存溄訒恍薷某墒裁?/p>


可以看到,鏈接由原來的【https://item.jd.com/10057674219694.html】被修改為【http://a.anhg33.com/t2.php?https://item.jd.com/10057674219694.html】,更進(jìn)listorrule函數(shù)


首先是獲取了鏈接的域名


然后根據(jù)前面說的,請求到的很多16長度的字符串,把域名md5后與這些值進(jìn)行匹配,如果匹配到了,就會修改鏈接。


至于會修改成什么鏈接,就會按照前面請求的配置文件中的targeturl來確定。接著看看special,這里選擇的案例檔案就是百度搜索了。然后隨便搜索一個(gè)關(guān)鍵詞,這里我搜索的是【模板】,搜索什么都是一樣的


可以看到鏈接被修改后添加了,進(jìn)入special函數(shù)查看


起主要邏輯是匹配百度搜索鏈接,然后加上自己的返利參數(shù),其中匹配邏輯如下


被添加的返利參數(shù)存放在前面的配置文件special類型的targeturl字段

到此,整體邏輯已經(jīng)分析的差不多了

四、解決方法與預(yù)防

當(dāng)出現(xiàn)這類彈窗廣告和推廣參數(shù)時(shí),大概率是你的某一個(gè)或者多個(gè)插件出現(xiàn)了問題。而這個(gè)插件很有可能不是你自己安裝的,而是由于你是用了某些下載器、私服等等東西。為了確定是不是你的插件出現(xiàn)了問題,可以嘗試先把所有插件停用,然后再訪問之前會出現(xiàn)廣告的頁面。

如果停用插件后不再廣告,那么可以確定是你的插件出現(xiàn)了問題,那么可以繼續(xù)往下看。不然就可能是被其他東西挾持原因出現(xiàn)的廣告,需要往其他方面排查了。下面看看怎么徹底解決問題

方案一

打開擴(kuò)展程序界面,瀏覽器訪問【chrome://extensions/】,查看所有插件中,是否存在不是你自己安裝的插件。如果有,那么很有可能這個(gè)就是罪魁禍?zhǔn)?。那么此時(shí)只要直接把插件移除,就可以解決上述的問題

然而也有可能所有的插件都是你自己安裝的,那么就需要檢查一下插件中是否包含一些標(biāo)識文件

方案二

那么接下來就是逐個(gè)插件檢查了,打開擴(kuò)展程序界面,瀏覽器訪問【chrome://extensions/】

360極速瀏覽器中可以看到有一些是直接有【加載來源】,點(diǎn)擊后面的地址就可以直接打開插件的安裝位置


谷歌瀏覽器需要點(diǎn)擊詳情,拉到最下面


可以在【來源】找到安裝位置

對于沒有的來源鏈接的,就需要自己打開到默認(rèn)的安裝位置

谷歌瀏覽器:C:\Users{賬戶名}\AppData\Local\Google\Chrome\User Data\Default\Extensions
360極速瀏覽器:{360安裝目錄}\360Chrome\Chrome\User Data\Default\Extensions

找到安裝目錄后,查看目錄下是否存在【image】文件,并且在這個(gè)目錄下存在【backg】名字的文件


那么這個(gè)插件就是有問題的,直接移除對應(yīng)的插件,就可以解決問題

這里注意一點(diǎn),有可能有問題的插件不止一個(gè),如果刪除后依然出現(xiàn)廣告,建議把所有插件都檢查一遍。

現(xiàn)在不單止流氓軟件多,流氓軟件也可能會在你不知不覺中安裝的瀏覽器插件
1.首先第一就是不要隨意安裝來源不明的插件,對于插件是否有惡意行為不好界定。也有可能是因?yàn)闉g覽器、網(wǎng)站等原因。
2.某些軟件下載器、私服等,不單止會下載流氓軟件,也有可能會安裝流氓插件。安裝軟件建議在官方網(wǎng)站下載,不要在一些三方網(wǎng)站下載不明危險(xiǎn)的安裝包。

附件為保存的請求等資源證據(jù),解壓密碼:52pojie 見論壇原文

由于B站專欄不支持外鏈,很多引用不能添加超級鏈接,如需查閱請見論壇原文。

論壇原文地址:https://www.52pojie.cn/thread-1707613-1-1.html

【PC樣本分析】從吾愛破解彈廣告到瀏覽器插件網(wǎng)頁挾持行為分析的評論 (共 條)

分享到微博請遵守國家法律
武山县| 莱西市| 陆川县| 陈巴尔虎旗| 壤塘县| 理塘县| 称多县| 萨嘎县| 荔波县| 汝城县| 南涧| 西平县| 奈曼旗| 时尚| 汾西县| 鄂州市| 佛坪县| 巴马| 启东市| 中方县| 伊宁县| 大名县| 绥中县| 灵璧县| 金堂县| 塔城市| 哈巴河县| 增城市| 上思县| 石首市| 安福县| 合肥市| 全椒县| 济源市| 定南县| 射阳县| 清流县| 上杭县| 松江区| 河津市| 涿州市|