日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
基于QtWebKit的DOM跳轉(zhuǎn)漏洞檢測技術(shù)

1、前言

創(chuàng)新互聯(lián)公司是一家專注網(wǎng)站建設(shè)、網(wǎng)絡(luò)營銷策劃、微信平臺小程序開發(fā)、電子商務(wù)建設(shè)、網(wǎng)絡(luò)推廣、移動(dòng)互聯(lián)開發(fā)、研究、服務(wù)為一體的技術(shù)型公司。公司成立十多年以來,已經(jīng)為數(shù)千家成都展覽展示各業(yè)的企業(yè)公司提供互聯(lián)網(wǎng)服務(wù)?,F(xiàn)在,服務(wù)的數(shù)千家客戶與我們一路同行,見證我們的成長;未來,我們一起分享成功的喜悅。

1.1 任意跳轉(zhuǎn)漏洞及其危害

任意跳轉(zhuǎn)漏洞主要是指負(fù)責(zé)轉(zhuǎn)向的程序沒有驗(yàn)證目標(biāo)網(wǎng)站合法性,直接根據(jù)傳入的URL跳轉(zhuǎn),其危害主要是能被壞人用來釣魚。

圖1 最近TSRC上報(bào)的釣魚示例

1.2 跳轉(zhuǎn)漏洞的檢測難點(diǎn)

普通的跳轉(zhuǎn)漏洞沒有太大檢測難點(diǎn),可以直接通過HTTP返回頁面源碼的特征匹配來發(fā)現(xiàn),本文想重點(diǎn)探討下如何自動(dòng)檢測DOM跳轉(zhuǎn)漏洞以及多次跳轉(zhuǎn)才能跳到釣魚網(wǎng)站的漏洞。

2、QtWebKit

關(guān)于qtwebkit的原理及其編譯運(yùn)行已在之前的tsrc博客做了較詳細(xì)說明,這里不再贅述,具體參見http://security.tencent.com/index.php/blog/msg/12。

3、基于QtWebKit的DOM跳轉(zhuǎn)漏洞檢測系統(tǒng)

3.1 檢測原理

Hook Webkit的所有Http請求,判斷目標(biāo)網(wǎng)站的url是否出現(xiàn)在最終的Http請求中,如果出現(xiàn)則說明存在任意跳轉(zhuǎn)漏洞。理論上,所有普通瀏覽器能跳轉(zhuǎn)的漏洞,Webkit內(nèi)核都能自動(dòng)跳轉(zhuǎn),因而本方法能檢測所有跳轉(zhuǎn)漏洞且不會(huì)有誤報(bào)。

3.2 如何hook Http請求

Webkit內(nèi)部的信號機(jī)制可以幫助我們完美的hook所有Http請求,關(guān)于信號機(jī)制的原理Webkit開源社區(qū)已有比較專業(yè)詳細(xì)的介紹,這里不再贅述。本方法中通過在http發(fā)包請求類里自定義并發(fā)射信號hookCgi,在應(yīng)用層監(jiān)聽hookCgi信號,從而實(shí)現(xiàn)在應(yīng)用層旁路監(jiān)聽到Webkit所有的Http請求,同時(shí)完全不影響Webkit正常的請求邏輯。

如圖3.1,3.2,應(yīng)用層監(jiān)聽hookCgi信號,當(dāng)webkit內(nèi)核觸發(fā)http請求時(shí),發(fā)送hookCgi信號,從而觸發(fā)自定義的GetHookCgi槽函數(shù),如果槽函數(shù)中發(fā)現(xiàn)了目標(biāo)釣魚站點(diǎn)的Http請求,則發(fā)現(xiàn)任意跳轉(zhuǎn)漏洞。

圖3.1 應(yīng)用層監(jiān)聽hookCgi信號

圖3.2 hookCgi信號對應(yīng)的槽函數(shù)

3.3 檢測Demo示例

圖3.3和圖3.4示例了Dom跳轉(zhuǎn)漏洞源碼及其檢測。與普通跳轉(zhuǎn)漏洞不同的是,Dom跳轉(zhuǎn)漏洞的檢測難點(diǎn)是在返回頁面源碼中找不到目標(biāo)URL的特征,本方法基于跳轉(zhuǎn)行為而不基于特征匹配,因而不會(huì)有誤報(bào)且發(fā)現(xiàn)能力極強(qiáng)。

圖3.3 Dom跳轉(zhuǎn)漏洞源碼示例

圖3.4 Dom跳轉(zhuǎn)漏洞檢測

如圖1所示是近期TSRC上報(bào)的一個(gè)實(shí)際DOM跳轉(zhuǎn)漏洞,該漏洞要經(jīng)過兩次跳轉(zhuǎn)才能最終跳轉(zhuǎn)到目標(biāo)網(wǎng)站,如圖3.5是該漏洞的抓包示例。如圖3.6所示,我們也可以檢測此類多次跳轉(zhuǎn)的漏洞場景。事實(shí)上,不管經(jīng)過幾次跳轉(zhuǎn),只要能跳到釣魚網(wǎng)站,我們都能發(fā)現(xiàn)。

圖3.5 經(jīng)過兩次跳轉(zhuǎn)才最終跳到釣魚網(wǎng)站

圖3.6 多次跳轉(zhuǎn)漏洞的檢測

補(bǔ)充說明下,對于非Dom的普通跳轉(zhuǎn),本方法亦能有效發(fā)現(xiàn),如圖3.7和圖3.8所示。

圖3.7 普通跳轉(zhuǎn)漏洞源碼示例

圖3.8 普通跳轉(zhuǎn)漏洞檢測

4、總結(jié)

實(shí)際上,我們可以基于QtWebKit做很多其他事情,比如開發(fā)爬取Web2.0鏈接的爬蟲,后續(xù)將對這些系統(tǒng)另文介紹。

跳轉(zhuǎn)的檢測方法還有很多,筆者這里只是拋磚引玉,歡迎大家多多批評指正,有任何問題歡迎隨時(shí)交流。


當(dāng)前題目:基于QtWebKit的DOM跳轉(zhuǎn)漏洞檢測技術(shù)
URL鏈接:http://m.5511xx.com/article/dhoecoe.html