怎么利用Browsertunnel通過DNS從瀏覽器中實(shí)現(xiàn)數(shù)據(jù)竊取

這篇文章給大家介紹怎么利用Browsertunnel通過DNS從瀏覽器中實(shí)現(xiàn)數(shù)據(jù)竊取,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。

目前創(chuàng)新互聯(lián)建站已為千余家的企業(yè)提供了網(wǎng)站建設(shè)、域名、雅安服務(wù)器托管、網(wǎng)站托管、服務(wù)器租用、企業(yè)網(wǎng)站設(shè)計(jì)、孝感網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。

怎么利用Browsertunnel通過DNS從瀏覽器中實(shí)現(xiàn)數(shù)據(jù)竊取

Browsertunnel

Browsertunnel這款工具可以幫助廣大研究人員利用DNS協(xié)議來從目標(biāo)用戶的瀏覽器中提取各種數(shù)據(jù)。該工具主要基于dns-prefetch實(shí)現(xiàn)其功能,而dns-prefetch這種功能旨在通過在后臺(tái)為指定域執(zhí)行DNS查找來減少網(wǎng)站的感知延遲。DNS流量實(shí)際上并不會(huì)出現(xiàn)在瀏覽器的調(diào)式工具中,也不會(huì)被頁(yè)面的內(nèi)容安全策略(CSP)屏蔽,而且通常不會(huì)被企業(yè)防火墻或代理檢測(cè)到,因此它是在首先情況下進(jìn)行數(shù)據(jù)竊取的最為理想的媒介。

實(shí)際上,這是一種很古老的技術(shù)了。DNS信道本身可以追溯到九十年代,而研究人員Patrick Vananti在2016年還專門寫過一篇關(guān)于dns-prefetch的文章。但是到目前為止,Browsertunnel是第一款完全開源,并且支持客戶端和服務(wù)器設(shè)備交互使用的工具。因?yàn)閐ns-prefetch不會(huì)將任何數(shù)據(jù)返回給客戶端JavaScript,因此通過Browsertunnel實(shí)現(xiàn)的傳輸數(shù)據(jù)只能是單項(xiàng)發(fā)送的。另外,有些瀏覽器默認(rèn)禁用了dns-prefetch功能,那么在這種場(chǎng)景下,Browsertunnel就無法正常工作了。

怎么利用Browsertunnel通過DNS從瀏覽器中實(shí)現(xiàn)數(shù)據(jù)竊取

工具組成

  • 一個(gè)服務(wù)器端,服務(wù)器端似乎用Golang開發(fā),作為一臺(tái)授權(quán)DNS服務(wù)器來使用,可以收集并解碼Browsertunnel發(fā)送的消息;

  • 一個(gè)小型JavaScript庫(kù),可以在html/目錄中找到,能夠解碼并發(fā)送來自于客戶端的消息;

工作機(jī)制

Browsertunnel可以將字符串編碼進(jìn)一個(gè)子域名中,并通過DNS來發(fā)送任意字符串。當(dāng)目標(biāo)用戶的瀏覽器嘗試去對(duì)域名進(jìn)行遞歸解析時(shí),這些信息便會(huì)被轉(zhuǎn)發(fā)至Browsertunnel的服務(wù)器端:

怎么利用Browsertunnel通過DNS從瀏覽器中實(shí)現(xiàn)數(shù)據(jù)竊取

如果需要傳輸?shù)臄?shù)據(jù)量過大(253個(gè)字節(jié)),那么一個(gè)域名肯定是不夠的,那么這些信息將會(huì)被分割成多個(gè)部分,然后再由服務(wù)器端負(fù)責(zé)進(jìn)行重新拼裝和解碼:

怎么利用Browsertunnel通過DNS從瀏覽器中實(shí)現(xiàn)數(shù)據(jù)竊取

工具安裝和使用

首先,我們需要設(shè)置DNS記錄來代表我們服務(wù)器的子域名。比如說,如果你的服務(wù)器IP地址為192.0.2.123,而你想要通過子域名t1.example.com來發(fā)送數(shù)據(jù)的話,那么你的DNS配置應(yīng)該如下:

t1 IN NS t1ns.example.com.

t1ns IN A 192.0.2.123

在你的服務(wù)器端,使用go get命令安裝Browsertunnel。或者說,你也可以自行在設(shè)備上編譯Browsertunnel項(xiàng)目,然后把代碼拷貝到服務(wù)器端:

go get github.com/veggiedefender/browsertunnel

接下來,使用browsertunnel命令運(yùn)行Browsertunnel,指定你想要用來傳輸數(shù)據(jù)的子域名:

browsertunnel t1.example.com

如需獲取Browsertunnel的完整使用方式,可以使用-help參數(shù):

$ browsertunnel -help

Usage of browsertunnel:

  -deletionInterval int

     seconds in between checks for expired messages (default 5)

  -expiration int

     seconds an incomplete message is retained before it is deleted (default 60)

  -maxMessageSize int

     maximum encoded size (in bytes) of a message (default 5000)

  -port int

     port to run on (default 53)

現(xiàn)在,你就可以開始測(cè)試你自己的DNS信道了。你可以使用我給大家提供的演示頁(yè)面:【點(diǎn)我訪問】。或者,大家也可以使用下列命令將該項(xiàng)目源碼克隆至本地,然后在本地加載html/index.html來進(jìn)行測(cè)試。如果一切正常的話,大家就可以看到服務(wù)器端輸出的信息了。

git clone https://github.com/veggiedefender/browsertunnel.git

真實(shí)場(chǎng)景下

對(duì)于真實(shí)場(chǎng)景下的Browsertunnel使用,大家可能還需要根據(jù)情況來對(duì)代碼進(jìn)行一些調(diào)整:

  • 將消息寫入數(shù)據(jù)庫(kù),而不是直接打印輸出;

  • 轉(zhuǎn)換或重寫客戶端以支持更老版本的瀏覽器;

  • 根據(jù)我們的數(shù)據(jù)流量,調(diào)整域名的ID字段;

  • 對(duì)消息進(jìn)行身份驗(yàn)證或加密以實(shí)現(xiàn)數(shù)據(jù)傳輸?shù)谋C苄院头来鄹?,別忘了DNS是一個(gè)明文協(xié)議;

關(guān)于怎么利用Browsertunnel通過DNS從瀏覽器中實(shí)現(xiàn)數(shù)據(jù)竊取就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。

分享題目:怎么利用Browsertunnel通過DNS從瀏覽器中實(shí)現(xiàn)數(shù)據(jù)竊取
網(wǎng)頁(yè)URL:http://bm7419.com/article10/gegcdo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、網(wǎng)站排名、、網(wǎng)站收錄建站公司、網(wǎng)站內(nèi)鏈

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

手機(jī)網(wǎng)站建設(shè)