相關(guān)參數(shù):
·Kali攻擊機(jī)一臺(tái)
·ENSP模擬器
?文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-699974.html
拓?fù)鋱D:
?
?
? 實(shí)驗(yàn)說(shuō)明:
·通過(guò)配置DHCP_Server,使得192.168.150.0/24子網(wǎng)內(nèi)的終端能夠自動(dòng)獲取IP地址及DNS
·通過(guò)配置SW交換機(jī),開(kāi)啟DHCP Snooping功能,用于保證DHCP客戶端從合法的DHCP服務(wù)器獲取IP地址
·Kali攻擊機(jī)接入192.168.150.0/24內(nèi)網(wǎng)中,獲取內(nèi)網(wǎng)IP地址,使用兩種DHCP攻擊方式并抓包進(jìn)行分析(Wireshark)
?
? 實(shí)驗(yàn)步驟:
·Kali如何接入ENSP網(wǎng)絡(luò)(Kali接入VMnet8網(wǎng)絡(luò)):
1.ENSP中拖出Cloud設(shè)備
2.1設(shè)置Cloud設(shè)備的相關(guān)參數(shù)(圖解)
2.2設(shè)置Cloud設(shè)備的相關(guān)參數(shù)(圖解)
?
?
·SW交換機(jī)配置DHCP Snooping,配置接入口啟用DHCP Snooping功能
#啟用DHCP功能 dhcp enable #啟用DHCP Snooping功能 dhcp snooping enable #將接入終端接口全部啟用DHCP Snooping功能 port-group group-member GigabitEthernet 0/0/1 to GigabitEthernet 0/0/20 dhcp snooping enable #將DHCP_Server連接端口設(shè)置為信任接口 interface g0/0/24 dhcp snooping trusted
DHCP Snooping綁定表如何形成的:
設(shè)備根據(jù)DHCP服務(wù)器回應(yīng)的DHCP ACK報(bào)文信息生成DHCP Snooping綁定表(提取其中的Chaddr-MAC與IP Address、接口編號(hào)、VLAN進(jìn)行綁定)
?
文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-699974.html
·DHCP_Server創(chuàng)建地址池,并分配地址給內(nèi)網(wǎng)終端
DHCP_Server配置:
?
sysname DHCP_Server #IP地址配置 interface GigabitEthernet0/0/0 ip address 192.168.150.254 255.255.255.0 #DHCP服務(wù)器配置 配置DNS服務(wù)器為114.114.114.114/8.8.8.8 dhcp enable ip pool IP_150 gateway-list 192.168.150.254 network 192.168.150.0 mask 255.255.255.0 dns-list 114.114.114.114 8.8.8.8 interface GigabitEthernet0/0/0 dhcp select global
?
?
?
DHCP_Client查看是否獲取到IP地址
Kali獲取IP地址
1.1關(guān)閉VMnet8 DHCP分配情況:
? ?
2.Kali自動(dòng)獲取IP地址:
? ? ? ? ??
#第一次登錄Kali 用的是用戶賬號(hào)進(jìn)行登錄 我們需要修改為管理員進(jìn)行登錄
sudo passwd root
#設(shè)置Root的密碼
#再次確認(rèn)Root的密碼
su root #切換root進(jìn)行登錄
dhclient #自動(dòng)獲取IP地址
ip a #查看獲取到的IP地址
?
?3.DHCP_Server服務(wù)器查看IP地址分配情況
display ip pool name Ip_150 used
?
Kail DHCP餓死攻擊的原理:
攻擊原理:攻擊者持續(xù)大量地向DHCP Server申請(qǐng)IP地址,直到耗盡DHCP Server地址池中的IP地址,導(dǎo)致DHCP Server不能給正常的用戶進(jìn)行分配
?
Kali DHCP餓死攻擊(一):
·使用的DHCP攻擊模塊dhcpstarv(僅修改Chaddr地址,不修改源MAC地址)
原理:
·當(dāng)交換機(jī)配置了DHCP Snooping后,會(huì)自動(dòng)提取DHCP ACK報(bào)文中的IP地址與目的接口的MAC所綁定
? ·但只修改Chaddr地址,既能占用DHCP服務(wù)器的IP地址,報(bào)文也不會(huì)被默認(rèn)配置的DHCP Snooping丟棄(DHCP Server是根據(jù)請(qǐng)求報(bào)文中的Chaddr字段來(lái)為其一一分配IP地址)
Kali安裝dhcpstarv庫(kù):
由于博主Kali版本為2021,默認(rèn)好像是沒(méi)有安裝dhcpstarv庫(kù)
1.修改更新apt更新源
#修改鏡像源
vi /etc/apt/sources.list
#按i寫入 將這兩段寫入到sources.list文件中 如何再按ESC 按: 輸入wr 保存寫入
deb http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib
deb-src http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib
#更新源&更新所有文件
apt-get update & apt-get upgrade
?
?
2.指定安裝dhcpstarv庫(kù)
#安裝dhcpstarv庫(kù) apt-get install dhcpstarv
?
?
?
Kali使用dhcpstarv攻擊DHCP服務(wù)器:
使用教程:
#啟用dhcpstarv攻擊 出接口為eth0接口(連接DHCP服務(wù)器的接口)
dhcpstarv攻擊時(shí),源MAC地址是不會(huì)改變的,只有Chaddr地址會(huì)變化
dhcpstarv -v(前臺(tái)顯示) -i(指定網(wǎng)卡) [網(wǎng)卡名稱]
dhcpstarv -v -i eth0
我們可以看到dhcpstarv一直在向192.168.150.0/24網(wǎng)段瘋狂發(fā)送dhcp Request報(bào)文請(qǐng)求IP地址。
?
作為DHCP Server服務(wù)器也在瘋狂的回復(fù)DHCP Offer報(bào)文,當(dāng)Kali收到后竊喜的繼續(xù)發(fā)請(qǐng)求占用DHCP服務(wù)器地址,DHCP Server服務(wù)器以為DHCP_Client獲取地址,于是發(fā)送DHCP ACK確認(rèn)
?
?這樣修改Chaddr的情況,DHCP Snooping并不能進(jìn)行防御,我們可以看到DCHP Snooping綁定表也被占滿了:
?
DHCP_Server服務(wù)器的IP地址也被占滿了(測(cè)試的時(shí)候,不要攻擊太久 會(huì)造成卡頓)
?
?
?
SW防御僅修改Chaddr地址的攻擊手段:
我們可以看到dhcpstarv攻擊時(shí),源MAC地址是不變的,只有Chaddr地址是在變化的
所以我們?cè)赟W上開(kāi)啟Snooping Check檢查,檢查源MAC與Chaddr是否一致(一致則通過(guò),不一致則丟棄)?
SW:
#將接入接口都配置check檢查(檢查chaddr和源MAC是否一致) port-group group-member GigabitEthernet 0/0/1 to GigabitEthernet 0/0/20 dhcp snooping check dhcp-chaddr enable
?
Kali再進(jìn)行dhcpstarv攻擊:
1.我們先清空DHCP地址池
<DHCP_Server>reset ip pool name Ip_150 all
?
2.Kali再進(jìn)行dhcpstarv攻擊
dhcpstarv -v -i eth0
?
? 3.檢查(交換機(jī)開(kāi)啟Debug調(diào)試、查看DHCP_Server是否分配IP地址)
?
#因?yàn)槲覀兪荂onsole接入 只需要在Console彈出Debug消息即可 <SW>terminal debugging #關(guān)閉其他Debug消息(避免消息太多) <SW>undo debugging all #開(kāi)啟DHCP snooping error錯(cuò)誤消息 <SW>debugging dhcp snooping error
?
我們?cè)賮?lái)檢查一下DHCP_Server地址池是否被占滿?
? 當(dāng)攻擊者僅修改Chaddr進(jìn)行DHCP攻擊時(shí),我們可以使用Chaddr Check檢查,檢查S-MAC與Chaddr地址是否相同,相同則通過(guò),不相同則丟棄
?
?
Kali DHCP餓死攻擊(二):
·使用的DHCP攻擊模塊yersinia(Chaddr與S-MAC一同修改)
使用教程:
#打開(kāi)yersinia圖形化界面
yersinia -G
?
Wireshark抓包分析(抓取DHCP Discover報(bào)文,查看S-MAC與Chaddr地址是否一同修改)
? DHCP_Server查看地址是否被占用
?
? 我們可以看到當(dāng)Chaddr和S-MAC同時(shí)修改時(shí),Chaddr Check檢查并不能起到作用,那我們?cè)撛趺崔k呢?
·我們可以發(fā)現(xiàn),當(dāng)Kali頻繁切換MAC地址,發(fā)送DHCP Discover報(bào)文時(shí),我們的MAC地址表也會(huì)存在很多的MAC地址
? ·我們可以在SW開(kāi)啟端口安全,設(shè)置最大MAC地址數(shù)為1,并配置超出關(guān)閉端口
?
SW:
?
#我們將接入端口都設(shè)置最大MAC數(shù)為1,配置MAC老化時(shí)間為60s port-group group-member GigabitEthernet 0/0/1 to GigabitEthernet 0/0/20 port-security enable port-security protect-action shutdown #超過(guò)最大MAC數(shù)則關(guān)閉端口 #配置端口安全shutdown恢復(fù)時(shí)間5分鐘 error-down auto-recovery cause port-security interval 300 #設(shè)置MAC地址老化時(shí)間 S5700沒(méi)有該命令 mac-address aging-time 60
?
Kali再次進(jìn)行攻擊:
我們會(huì)發(fā)現(xiàn)端口直接被關(guān)閉了
?DHCP_Server查看分配情況:
?防御成功!
?
上面就是基于ENSP,DHCP餓死攻擊的防御,謝謝大家!
?
?
?
?
?
?
?
?
?
?
?
?
到了這里,關(guān)于DHCP餓死攻擊及防御(基于ENSP模擬器、Kali攻擊機(jī)實(shí)現(xiàn))的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!