ettercap+arpspoof進行HTTP信息嗅探
準備:kali、xp
kali ip:192.168.14.157
目標ip:192.168.14.158
目標網關:192.168.14.2
使用工具:ettercap、arpspoof
一.工具介紹與使用
二.具體實戰演示
一.工具介紹與使用
1.ettercap的介紹
ettercap有兩種運行方式,UNIFIED和BRIDGED。UNIFIED的方式是以中間人方式嗅探,基本原理是同時欺騙主機A和B,將自己充當一個中間人的角色,數據在A和B之間傳輸時會通過C,C就可以對數據進行分析,從而完成嗅探。BRIDGED方式是在雙網卡情況下,嗅探兩塊網卡之間的數據包。
kali linux 2018.2 版本,已經內置了ettercap。不需要再安裝,若在其他系統,請自行安裝ettercap。
2.ettercap的sniffing工作方式劃分為五種
(1)IPBASED:在基於IP地址的sniffing方式下,ettercap將根據源IP-PORT和目的IP-PORT來捕獲數據包;
(2)MACBASED:在基於MAC地址的方式下,ettercap將根據源MAC和目的MAC來捕獲數據包(在捕獲通過網關的數據包時,該方式很有用);
(3)ARPBASED:在基於Arp欺騙的方式下,ettercap利用Arp欺騙在交換局域網內監聽兩個主機之間的通信(全雙工);
(4)SMARTARP:在SMARTARP方式下,ettercap利用Arp欺騙,監聽交換網上某臺主機與所有已知的其他主機(存在於主機表中的主機)之間的通信(全雙工);
(5)PUBLICARP:在PUBLICARP 方式下,ettercap利用Arp欺騙,監聽交換網上某臺主機與所有其它主機之間的通信(半雙工)。此方式以廣播方式發送Arp響應,但是如果 ettercap已經擁有了完整的主機地址表(或在ettercap啟動時已經對LAN上的主機進行了掃描),ettercap會自動選取 SMARTARP方式,而且Arp響應會發送給被監聽主機之外的所有主機,以避免在Windows主機上出現IP地址沖突的消息。
3.使用-M參數,即選擇中間人攻擊模式,有如下幾種攻擊方式
(1)基於Arp毒化的中間人攻擊:Arp毒化的原理可簡單理解為偽造MAC地址與IP的對應關系,導致數據包由中間人截取再轉手發出。Arp毒化有雙向(remote)和單向(oneway)兩種方式。雙向方式將對兩個目標的Arp緩存都進行毒化,對兩者之間的通信進行監聽。而單向方式只會監聽從第一個目標到第二個目標的單向通信內容。一般會選擇使用雙向欺騙的方式來獲取所有的數據包進行嗅探分析。
如:
ettercap -M arp:remote /192.168.1.102
對應的含義是:表示對192.168.1.102的所有端口的通信進行嗅探,包括其發出的數據包和收到的數據包。
(2)icmp欺騙:icmp欺騙即基於重定向(redirect)的路由欺騙技術。其基本原理是欺騙其他的主機,將自身偽裝為最近的路由,因此其他主機會將數據包發送過來,然後作為中間人的攻擊者再重新將其轉發到真正的路由器上。於是我們便可以對這些數據包進行監聽。當然,icmp欺騙不適用於交換機的環境,若本機在交換機的環境下則最好選擇arp毒化的方式來進行攻擊。icmp欺騙方式的參數是真實路由器的MAC和IP,參數形式為(MAC/IP)。
如:
ettercap -M icmp:00:11:22:33:44:55/192.168.1.1
對應的含義是:將自己偽裝成真實路由器的MAC和IP。
(3) DHCPspoofing:DHCP欺騙的原理是將攻擊者的本機偽裝成DHCP服務器,代替真實的DHCP服務器給新接入網絡的受害主機動態分配IP。這樣的缺點是可能會與真實的DHCP服務器重復分配IP造成沖突,而且只能針對新接入網段的主機,難以影響到之前的主機。DHCP spoofing方式的參數是可以分配出去的IP地址池、子網掩碼和DNS,參數形式為(ip_pool/netmask/dns)。
如:
ettercap -M dhcp:192.168.1.102,35,50-60/255.255.255.0/192.168.1.1
對應的含義是:將分配192.168.1.102,35,50-60內的地址,子網掩碼為255.255.255.0,DNS服務器為192.168.1.1。
(4) PortStealing:此攻擊方式適用的環境為交換機下,且路由器中IP和MAC綁定,無法進行Arp欺騙。其基本思想是,既然無法欺騙路由器的IP和MAC對應關系,那麽就欺騙交換機,使原本應該通過交換機端口到達目標主機的數據包被傳入了攻擊者的端口。需要指出的是,由於這個方法只用於交換機環境,且會產生大量的數據包,可能會嚴重影響網絡狀況。
4.ettercap參數及常用操作
-I 顯示可用網卡接口設備 -i 選擇接口 -t 協議選擇,tcp/udp/all,默認為all -p 不進行毒化攻擊,用於嗅探本地數據包 -F 載入過濾器文件 -V text 將數據包以文本形式顯示在屏幕上 -L filename 把所有的數據包保存下來(保存後的文件只能用etterlog顯示)
二.具體實戰演示
第一種方法:
1.ARP欺騙
arpspoof -t 目標ip -r 目標網關
命令:
arpspoof -i eth0 -t 192.168.14.158 -r 192.168.14.2
2.開啟流量轉發
命令:
echo 1 > /proc/sys/net/ipv4/ip_forward
3.使用ettercap
命令:
ettercap -Tp -i eth0
註意:這種方法,當數據包流量過大,查看信息不方便。
第二種方法:
1.ettercap -G ,使用圖形化界面
2.選擇sniffer 模式,這裏選擇: Unified sniffering 模式
3.網卡選擇默認就可以,這裏就默認eth0 網卡即可
4.開始嗅探
5.點擊Hosts ,再點擊Scan forhosts,然後查看host list ,就可以查看到嗅探到的主機ip地址、mac地址
6.選定目標主機B,點擊add to target 1,將主機B添加到目標1;選定路由,點擊add to target 2,將路由添加到目標2
7.點擊mitm --- arpposoning ,勾選sniff remoteconnections
8.點擊start --- startsniffing,然後在xp上開始監聽測試目標登錄
測試:
用戶名:aaaa
密碼:test
9.點擊view --connections開始查看連接,可以雙擊鏈接查看詳細信息
但是我們現在只關註有沒有抓取到密碼
在最下面可以看到用戶登錄名和密碼,嗅探密碼成功
總結:
第一種方法需要結合arpspoof工具來嗅探HTTP信息,而且查看獲取信息麻煩,不推薦
第二種方法只需要使用ettercap工具,查看信息方便,推薦使用
ettercap+arpspoof進行HTTP信息嗅探