作者:
Blood_Zero
·
2015/10/22 10:20
0x01 概念
隧道技術(Tunneling)是一種透過使用網際網路絡的基礎設施在網路之間傳遞資料的方式。使用隧道傳遞的資料(或負載)可以是不同協議的資料幀或包。隧道協議將其它協議的資料幀或包重新封裝然後透過隧道傳送。新的幀頭提供路由資訊,以便透過網際網路傳遞被封裝的負載資料。
0x02 例項分析- DNS隧道技術
環境:客戶機(Kali)+DNS伺服器(window2003)+目標機(redhat7)
DNS伺服器:192.168.10.132
1、新建一個名字為”bloodzero.com”的正向解析域
2、新建一個主機:IP為攻擊者kali的IP
3、新建一個委託
此時我們的DNS伺服器就配置好了!
Kali:攻擊者&&客戶端 192.168.10.135
1、攻擊端配置:
修改dns2tcpd配置檔案:
resources的IP為目標機的IP
啟動dns隧道的服務端
2、客戶端配置
刪除ssh連線的known_hosts檔案
修改DNS解析檔案:vim /etc/resolv.conf
配置dns隧道客戶端程式
在kali2.0中,沒有配置檔案,需要自己寫配置檔案
vim /etc/dns2tcpc.conf
測試是否可以提供服務
這個時候我們就已經配置成功了!
成功效果
0x03 分析結論
這個時候的流量走向:
本文中介紹的是DNS隧道伺服器,和DNS隧道客戶端是同一臺機器,並不能說明問題,當DNS隧道伺服器存在於防火牆之後,這個時候我們就可以利用此種技術來繞過大部分的防火牆。並且可繞過不開埠,隱蔽性好等;
這裡我使用另外一臺客戶機去連線目標機時,服務端監聽的資料如下:
- 目標機:192.168.10.133
- DNS隧道服務端:192.168.10.135
- DNS隧道客戶端:192.168.10.134
- DNS伺服器:192.168.10.132
客戶端監聽資料如下:
發現能夠監聽到的ssh資料包是DNS隧道服務端與目標機之間的通訊;
而客戶端與目標機之間的通訊是DNS資料;
這就是簡單的配置DNS隧道;
本文章來源於烏雲知識庫,此映象為了方便大家學習研究,文章版權歸烏雲知識庫!