中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么利用Browsertunnel通過DNS從瀏覽器中實現數據竊取

發布時間:2021-12-18 15:36:52 來源:億速云 閱讀:204 作者:柒染 欄目:數據安全

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

怎么利用Browsertunnel通過DNS從瀏覽器中實現數據竊取

Browsertunnel

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

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

怎么利用Browsertunnel通過DNS從瀏覽器中實現數據竊取

工具組成

  • 一個服務器端,服務器端似乎用Golang開發,作為一臺授權DNS服務器來使用,可以收集并解碼Browsertunnel發送的消息;

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

工作機制

Browsertunnel可以將字符串編碼進一個子域名中,并通過DNS來發送任意字符串。當目標用戶的瀏覽器嘗試去對域名進行遞歸解析時,這些信息便會被轉發至Browsertunnel的服務器端:

怎么利用Browsertunnel通過DNS從瀏覽器中實現數據竊取

如果需要傳輸的數據量過大(253個字節),那么一個域名肯定是不夠的,那么這些信息將會被分割成多個部分,然后再由服務器端負責進行重新拼裝和解碼:

怎么利用Browsertunnel通過DNS從瀏覽器中實現數據竊取

工具安裝和使用

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

t1 IN NS t1ns.example.com.

t1ns IN A 192.0.2.123

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

go get github.com/veggiedefender/browsertunnel

接下來,使用browsertunnel命令運行Browsertunnel,指定你想要用來傳輸數據的子域名:

browsertunnel t1.example.com

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

$ 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)

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

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

真實場景下

對于真實場景下的Browsertunnel使用,大家可能還需要根據情況來對代碼進行一些調整:

  • 將消息寫入數據庫,而不是直接打印輸出;

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

  • 根據我們的數據流量,調整域名的ID字段;

  • 對消息進行身份驗證或加密以實現數據傳輸的保密性和防篡改,別忘了DNS是一個明文協議;

關于怎么利用Browsertunnel通過DNS從瀏覽器中實現數據竊取就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

龙山县| 万安县| 东阿县| 彰化市| 肇东市| 灵宝市| 丹江口市| 湘乡市| 灌南县| 本溪市| 台安县| 涡阳县| 石河子市| 获嘉县| 磐石市| 江安县| 阳谷县| 肃宁县| 庆云县| 芒康县| 抚宁县| 汤阴县| 甘孜县| 绥德县| 翁源县| 儋州市| 蒲城县| 于田县| 互助| 如东县| 云阳县| 中宁县| 凤冈县| 西宁市| 嘉峪关市| 柞水县| 区。| 平舆县| 丽水市| 白水县| 定南县|