




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第四章Python協(xié)議攻擊4.1TCP/IP協(xié)議體系結(jié)構(gòu)4.2MAC泛洪攻擊4.3ARP協(xié)議攻擊4.4DHCP協(xié)議攻擊4.5DNS協(xié)議攻擊習(xí)題
4.1
TCP/IP協(xié)議體系結(jié)構(gòu)
TCP/IP協(xié)議體系結(jié)構(gòu)是Internet所采用的協(xié)議模型,是整個(gè)互聯(lián)網(wǎng)的核心。4.1.1
TCP/IP分層模型
TCP/IP模型使用四層,邏輯上對(duì)應(yīng)OSI參考模型的七層,如圖4-1所示。圖4-1OSI參考模型和TCP/IP分層模型
1.網(wǎng)絡(luò)接入層(NetworkAccessLayer)
TCP/IP體系結(jié)構(gòu)的最底層是網(wǎng)絡(luò)接入層,相對(duì)于OSI參考模型的物理層和數(shù)據(jù)鏈路層,主要提供主機(jī)的接入功能,使得主機(jī)可以接入網(wǎng)絡(luò),通常由網(wǎng)卡實(shí)現(xiàn)該層的功能。
在很多的TCP/IP網(wǎng)絡(luò)中,網(wǎng)絡(luò)層并不運(yùn)行任何的TCP/IP協(xié)議。例如,運(yùn)行在以太網(wǎng)之上的TCP/IP,通常由以太網(wǎng)處理下兩層的功能。
2.網(wǎng)際層(InternetLayer)
網(wǎng)際層對(duì)應(yīng)于OSI參考模型的網(wǎng)絡(luò)層,主要負(fù)責(zé)邏輯設(shè)備的尋址、數(shù)據(jù)分組的封、數(shù)據(jù)分組的發(fā)送和接收、路由等功能。該層最主要的協(xié)議就是IP協(xié)議,也是TCP/IP協(xié)議的核心,其他支撐協(xié)議還包括ICMP、路由協(xié)議(如RIP、OSFP、BGP等)、新版的IP協(xié)議,也就是下一代的IPv6。
3.傳輸層(Host-to-HostTransportLayer)
傳輸層實(shí)現(xiàn)端到端的數(shù)據(jù)傳輸。傳輸層在網(wǎng)際層的基礎(chǔ)上為高層提供“面向連接”和“面向無(wú)接連”的兩種服務(wù)。傳輸層在應(yīng)用中提供透明的數(shù)據(jù)傳輸。傳輸層在給定的鏈路上通過(guò)流量控制、分段/重組和差錯(cuò)控制向上層提供可靠的面向連接的數(shù)據(jù)傳輸服務(wù)。傳輸層向下利用網(wǎng)際層提供的服務(wù),并通過(guò)傳輸層地址(端口)提供給高層用戶傳輸數(shù)據(jù)的通信端口實(shí)現(xiàn)連接復(fù)用。
4.應(yīng)用層(ApplicationLayer)
應(yīng)用層是TCP/IP模型的最高層,是用戶、應(yīng)用程序和網(wǎng)絡(luò)之間的接口,其功能是直接向用戶提供各種網(wǎng)絡(luò)服務(wù)。應(yīng)用層為用戶提供的服務(wù)和協(xié)議包括網(wǎng)頁(yè)服務(wù)(HTTP)、名字服務(wù)(DNS)、文件服務(wù)(NFS)、目錄服務(wù)(LDAP)、文件傳輸服務(wù)(FTP)、遠(yuǎn)程登錄服務(wù)(Telnet)、電子郵件服務(wù)(SMTP)、網(wǎng)絡(luò)管理服務(wù)(SNMP)、數(shù)據(jù)庫(kù)服務(wù)(MySQL)等。上述各種網(wǎng)絡(luò)服務(wù)由該層的不同應(yīng)用協(xié)議和程序完成。
4.1.2
TCP/IP協(xié)議
TCP/IP協(xié)議族包含了成百上千的協(xié)議,每種協(xié)議駐留在特定的分層模型中完成某種特定的功能。這些協(xié)議一起協(xié)同完成TCP/IP網(wǎng)絡(luò)。
限于篇幅,下面將對(duì)TCP/IP協(xié)議族的核心協(xié)議進(jìn)行簡(jiǎn)單介紹,在后續(xù)介紹相關(guān)協(xié)議的攻擊過(guò)程中還會(huì)詳細(xì)討論。TCP/IP協(xié)議族的核心協(xié)議如圖4-2所示。
圖4-2
TCP/IP協(xié)議族
1.網(wǎng)絡(luò)接入/網(wǎng)際層(OSILayer2/3)協(xié)議
表4-1給出了ARP和RARP協(xié)議的簡(jiǎn)單說(shuō)明,這兩個(gè)協(xié)議可以說(shuō)是連接第二層和第三層的協(xié)議,其功能是完成邏輯地址(IP地址)和物理地址(網(wǎng)卡MAC地址)之間的轉(zhuǎn)換。
2.網(wǎng)際層(OSILayer3)協(xié)議
網(wǎng)際層包含核心的IP協(xié)議以及其他相關(guān)的支撐協(xié)議,如表4-2所示。
3.主機(jī)對(duì)主機(jī)傳輸層(OSILayer4)協(xié)議
傳輸層包含另外兩個(gè)非常重要的協(xié)議:TCP和UDP,如表4-3所示。
4.應(yīng)用層(OSILayer5/6/7)協(xié)議
應(yīng)用層是給各個(gè)軟件提供接口來(lái)實(shí)現(xiàn)多樣化的網(wǎng)絡(luò)服務(wù),每種網(wǎng)絡(luò)服務(wù)都有相應(yīng)的協(xié)議來(lái)實(shí)現(xiàn)。常見的應(yīng)用層協(xié)議如表4-4所示。
4.2MAC泛洪攻擊
交換機(jī)是一種基于MAC地址識(shí)別,能完成封裝、轉(zhuǎn)發(fā)數(shù)據(jù)包功能的網(wǎng)絡(luò)設(shè)備。交換機(jī)可以“學(xué)習(xí)”MAC地址,并把其存放在內(nèi)部地址表(內(nèi)容可尋址存儲(chǔ)器(ContentAddressableMemory),簡(jiǎn)稱CAM)中,通過(guò)在數(shù)據(jù)幀的發(fā)送者和目標(biāo)接收者之間建立臨時(shí)的交換路徑,使數(shù)據(jù)幀直接由源地址到達(dá)目的地址。
MAC地址泛洪攻擊(CAM表泛洪攻擊)是攻擊者通過(guò)連接交換機(jī)的某個(gè)端口,并發(fā)送大量的具有不同的偽造源MAC地址的以太網(wǎng)幀,利用交換機(jī)的“學(xué)習(xí)”功能,使得交換機(jī)的CAM表溢出,無(wú)法存儲(chǔ)更多的表項(xiàng),造成交換機(jī)工作于hub模式,從而在各個(gè)端口轉(zhuǎn)發(fā)網(wǎng)絡(luò)流量。
利用Scapy庫(kù)很容易實(shí)現(xiàn)CAM溢出攻擊,為確保攻擊效果,IP分組采用隨機(jī)的源和目的IP地址進(jìn)行填充。攻擊腳本實(shí)現(xiàn)如下:
4.3ARP協(xié)議攻擊
針對(duì)ARP協(xié)議的各類攻擊在網(wǎng)絡(luò)攻防對(duì)抗中有著廣泛的應(yīng)用,利用ARP協(xié)議可以實(shí)現(xiàn)中間人劫持(注入和監(jiān)視)、拒絕服務(wù)和信息偵察。
ARP協(xié)議用于IP地址和網(wǎng)卡MAC地址之間的轉(zhuǎn)換,其中的主要原因是,IP地址用于Internet的網(wǎng)絡(luò)通信,而MAC地址主要用于局域網(wǎng)內(nèi)部的通信。也就是在互聯(lián)網(wǎng)上要傳輸數(shù)據(jù)必須用IP地址,而在內(nèi)部網(wǎng)絡(luò)中通信則用的是MAC地址。
ARP協(xié)議的作用就在于當(dāng)一個(gè)數(shù)據(jù)包(快遞)到了網(wǎng)關(guān)(學(xué)校)以后,必須把IP地址(西安電子科技大學(xué))轉(zhuǎn)換成對(duì)應(yīng)的MAC地址(123號(hào)信箱),以便于數(shù)據(jù)包準(zhǔn)確地到達(dá)目的地主機(jī)。
4.3.1
ARP協(xié)議的工作原理
ARP協(xié)議為了完成IP地址和MAC地址之間的映射,采用的是廣播的工作方式。例如,你()想知道IP地址29對(duì)應(yīng)的網(wǎng)卡地址是多少,你就會(huì)廣播(喊一聲)一個(gè)請(qǐng)求分組,分組內(nèi)容是:“29在嗎,把你的MAC地址告訴我?!逼銩RP請(qǐng)求報(bào)文廣播發(fā)送的工作原理如圖4-3所示。
圖4-3
ARP請(qǐng)求報(bào)文的廣播發(fā)送
由于是廣播發(fā)送,因此局域網(wǎng)內(nèi)的所有主機(jī)都可以接收到(看到)這個(gè)ARP請(qǐng)求。表現(xiàn)在底層的網(wǎng)絡(luò)協(xié)議上,如圖4-4所示。從圖中可知:
(1)
ARP協(xié)議的封裝(層次)相對(duì)簡(jiǎn)單,只有以太網(wǎng)(Ethernet)和ARP兩層。
(2)以太網(wǎng)由14個(gè)字節(jié)組成,分別是6個(gè)字節(jié)的目的地網(wǎng)卡地址(在此由于是廣播工作方式,因此其取值為6個(gè)字節(jié)的ff)、6個(gè)字節(jié)的源網(wǎng)卡地址和2個(gè)字節(jié)的協(xié)議類型(ARP協(xié)議,取值0x0806)。
(3)
ARP協(xié)議是請(qǐng)求分組,其操作碼(Opcode)等于1。
(4)操作碼后面緊跟的是請(qǐng)求者的MAC和IP地址,以及目標(biāo)的MAC和IP地址;由于目標(biāo)的MAC地址未知,因此其取值為全零。
圖4-4
ARP廣播發(fā)送的請(qǐng)求報(bào)文
理論上,問(wèn)誰(shuí)就誰(shuí)回答!就如同上課時(shí)老師點(diǎn)名一樣,點(diǎn)誰(shuí)的名字誰(shuí)就答到。但事實(shí)上誰(shuí)都可以假冒他人(其他計(jì)算機(jī))進(jìn)行應(yīng)答。
這就是ARP協(xié)議的安全問(wèn)題所在,也是ARP類攻擊的核心。其產(chǎn)生的主要原因是:
(1)局域網(wǎng)內(nèi)MAC地址起作用;
(2)網(wǎng)內(nèi)其他計(jì)算機(jī)可以任意偽造ARP應(yīng)答;
(3)計(jì)算機(jī)針對(duì)收到的ARP應(yīng)答無(wú)法識(shí)別真假(無(wú)狀態(tài)協(xié)議)。
針對(duì)圖4-4所示的ARP請(qǐng)求分組,對(duì)應(yīng)的應(yīng)答分組如圖4-5所示。圖4-5
ARP應(yīng)答報(bào)文
在圖4-5中,操作碼(opcode)是2,表示應(yīng)答分組,最后20個(gè)字節(jié)分別給出了該應(yīng)答分組的發(fā)送方(被請(qǐng)求的主機(jī))和接收方(ARP請(qǐng)求報(bào)文的發(fā)起者)。該應(yīng)答分組的含義就是告訴接收方(29),IP地址為54對(duì)應(yīng)的MAC地址是00:50:56:fe:72:d0。
主機(jī)在收到上述ARP應(yīng)答分組以后,將更新ARP緩存表,如圖4-6所示。
圖4-6
ARP緩存
至此,所有發(fā)送給54地址的網(wǎng)絡(luò)數(shù)據(jù)都將發(fā)往MAC地址:00:50:56:fe:72:d0!所面臨問(wèn)題是,如果某臺(tái)主機(jī)A偽造了主機(jī)B的ARP應(yīng)答分組,那么所有發(fā)給主機(jī)B的網(wǎng)絡(luò)分組實(shí)際上都被發(fā)送給主機(jī)A了,這就是典型的ARP欺騙攻擊,造成的后果可能是網(wǎng)絡(luò)中斷、連接被劫持、數(shù)據(jù)被竊取等。
4.3.2
ARP欺騙攻擊
ARP欺騙攻擊是指通過(guò)主動(dòng)發(fā)送偽造ARP報(bào)文,把發(fā)送者的MAC地址偽造成攻擊者主機(jī)的MAC地址,把發(fā)送者的IP地址偽造成被攻擊主機(jī)的IP地址。通過(guò)不斷發(fā)送這些偽造的ARP報(bào)文,讓局域網(wǎng)內(nèi)所有的主機(jī)和網(wǎng)關(guān)ARP表中對(duì)應(yīng)的MAC地址均為攻擊者的MAC地址,實(shí)現(xiàn)局域網(wǎng)內(nèi)所有的網(wǎng)絡(luò)流量都發(fā)給攻擊者主機(jī)的目的。
由于ARP欺騙攻擊導(dǎo)致了主機(jī)和網(wǎng)關(guān)的ARP表的錯(cuò)誤映射,這種情形被稱為ARP中毒(毒化)。
根據(jù)ARP欺騙者與被欺騙者(或稱受害者)之間角色關(guān)系的不同,通??梢园袮RP欺騙攻擊分為如下兩種,如圖4-7所示。
(1)主機(jī)型ARP欺騙:欺騙者主機(jī)冒充網(wǎng)關(guān)設(shè)備對(duì)其他主機(jī)進(jìn)行欺騙。
(2)網(wǎng)關(guān)型ARP欺騙:欺騙者主機(jī)冒充其他主機(jī)對(duì)網(wǎng)關(guān)設(shè)備進(jìn)行欺騙。
其實(shí)在很多時(shí)候,ARP欺騙攻擊采用的都是雙向欺騙,既欺騙主機(jī)又欺騙網(wǎng)關(guān)。
圖4-7ARP欺騙類型
ARP欺騙攻擊的關(guān)鍵是偽造ARP應(yīng)答數(shù)據(jù)包
1.實(shí)驗(yàn)網(wǎng)絡(luò)基本信息
本次ARP欺騙攻擊采用的網(wǎng)絡(luò)環(huán)境(包括網(wǎng)絡(luò)參數(shù))如圖4-8所示。圖中,Kali(虛擬機(jī))為攻擊主機(jī),Win7(虛擬機(jī))為受害者主機(jī),這兩臺(tái)虛擬機(jī)通過(guò)NAT網(wǎng)絡(luò)模式實(shí)現(xiàn)互聯(lián)網(wǎng)的訪問(wèn)。
圖4-8實(shí)驗(yàn)網(wǎng)絡(luò)環(huán)境
2.構(gòu)造ARP欺騙數(shù)據(jù)包
在此,以主機(jī)欺騙為目的,也就是告訴Win7(受害者主機(jī)),網(wǎng)關(guān)的物理地址是Kail(攻擊主機(jī))的MAC地址,由此實(shí)現(xiàn)Kali劫持Win7的網(wǎng)絡(luò)通信的目的。
首先了解一下Scapy庫(kù)的ARP類構(gòu)造函數(shù)的參數(shù)列表,如圖4-9所示。
圖4-9ARP協(xié)議字段
由圖4-9可見,在ARP欺騙攻擊中需要構(gòu)造的ARP字段主要有以下5個(gè)參數(shù):
(1)
op:操作碼,取值為1或者2,代表ARP請(qǐng)求或者應(yīng)答包,默認(rèn)取值為1。
(2)
hwsrc:發(fā)送方MAC地址。
(3)
psrc:發(fā)送方IP地址。
(4)
hwdst:目標(biāo)MAC地址。
(5)
pdst:目標(biāo)IP地址。
3.定向主機(jī)欺騙
Kali(29)(虛擬機(jī))的目標(biāo)很明確,就是給Win7(40)主機(jī)提供虛假的網(wǎng)關(guān)MAC地址,反映在ARP數(shù)據(jù)包的構(gòu)造上,就是:
在上述ARP協(xié)議數(shù)據(jù)包中,將Kali(虛擬機(jī))的MAC地址和網(wǎng)關(guān)的IP地址進(jìn)行了綁定,op取值為2,作為一個(gè)響應(yīng)包被Win7(虛擬機(jī))接收,這樣Win7會(huì)理解為網(wǎng)關(guān)的IP地址對(duì)應(yīng)的是Kali的MAC地址,并更新自己的ARP(緩存)表,造成中毒,從而使得Win7發(fā)往網(wǎng)關(guān)的數(shù)據(jù)包都會(huì)被實(shí)際發(fā)往Kali。再次強(qiáng)調(diào),局域網(wǎng)內(nèi)MAC地址是真正的目的地址,而不是IP地址。
4.發(fā)送欺騙ARP分組
數(shù)據(jù)包在構(gòu)造完成之后,剩下要做的就是發(fā)送。由于數(shù)據(jù)包使用了以太網(wǎng)頭,因此發(fā)送數(shù)據(jù)包需要使用sendp方法,該方法工作在第二層協(xié)議上,可以選擇合適的網(wǎng)絡(luò)接口、發(fā)送間隔等參數(shù),具體使用實(shí)例如下:
sendp(pkt,inter=2,loop=1,iface=網(wǎng)卡)
5.廣播發(fā)送欺騙分組對(duì)局域網(wǎng)所有機(jī)器的影響
具體使用實(shí)例如下:
將數(shù)據(jù)鏈路層的目標(biāo)MAC地址置為全ff,此時(shí)該信息的接收者將只關(guān)注hwsrc和psrc信息,更新本地ARP緩存。
4.4DHCP協(xié)議攻擊
4.4.1
DHCP協(xié)議介紹
DHCP(DynamicHostConfigurationProtocol)是動(dòng)態(tài)主機(jī)配置協(xié)議,它工作在OSI的應(yīng)用層,用于從指定的DHCP服務(wù)端獲取有關(guān)TCP/IP協(xié)議配置信息。
DHCP使用客戶端/服務(wù)端模式,請(qǐng)求配置信息的計(jì)算機(jī)為DHCP客戶端,而提供信息的是DHCP的服務(wù)端。DHCP為客戶端分配地址的方法有三種:手工配置、自動(dòng)配置和動(dòng)態(tài)配置。
4.4.2
DHCP協(xié)議流程
在DHCP客戶端和DHCP服務(wù)端的協(xié)議交互過(guò)程中(比如,一個(gè)IP地址請(qǐng)求),主要包含以下四個(gè)步驟:
(1)發(fā)現(xiàn)階段,即DHCP客戶端尋找DHCP服務(wù)端的階段??蛻舳讼蚓W(wǎng)絡(luò)發(fā)送一個(gè)DHCPDiscover數(shù)據(jù)包(廣播包)來(lái)尋找DHCP服務(wù)端,參見圖4-10中的(1)。
(2)提供階段,即DHCP服務(wù)端提供IP地址的階段當(dāng)授權(quán)的DHCP服務(wù)端監(jiān)聽到客戶端發(fā)送的DHCPDiscover廣播時(shí),會(huì)從未分配的地址范圍中選一個(gè)IP地址,連同其他TCP/IP配置信息,給客戶端返回一個(gè)DHCPOffer數(shù)據(jù)包,參見圖4-10中的(2)。
(3)選擇階段,即DHCP客戶端選擇某臺(tái)DHCP服務(wù)端提供的IP地址的階段。如果客戶端收到網(wǎng)絡(luò)上多臺(tái)DHCP服務(wù)端的響應(yīng),只會(huì)挑選其中一個(gè)DHCPOffer(通常是最先到達(dá)的那個(gè)),并且再向網(wǎng)絡(luò)發(fā)送一個(gè)DHCPRequest廣播數(shù)據(jù)包,告訴所有DHCP服務(wù)端它將指定接收哪一臺(tái)服務(wù)端提供的IP地址,參見圖4-10中的(3)。
(4)確認(rèn)階段,即DHCP服務(wù)端確認(rèn)所提供的IP地址的階段。當(dāng)DHCP服務(wù)端接收到客戶端的DHCPRequest之后,會(huì)向客戶端返回一個(gè)DHCPACK響應(yīng)數(shù)據(jù)包,以確認(rèn)IP租約配置正式生效,參見圖4-10中的(4)。
整個(gè)交互過(guò)程如圖4-10所示。
圖4-10
DHCP協(xié)議工作流程
通過(guò)上述DHCP的協(xié)議工作流程分析可知,從DHCP服務(wù)端獲取配置信息的4個(gè)階段中,DHCP客戶端會(huì)出現(xiàn)有四種報(bào)文:DHCP
Discover、DHCP
Offer、DHCP
Request和DHCP
ACK),每種報(bào)文的格式如圖4-11所示。
圖4-11
DHCP數(shù)據(jù)包格式
圖4-11中各個(gè)字段含義如下:
(1)
Operation
code:若是客戶端發(fā)送給服務(wù)端的數(shù)據(jù)包,則設(shè)為1;反向則設(shè)為2。
(2)
Hardwaretype:硬件類別,Ethernet情況下為1。
(3)
Hardwarelength:硬件長(zhǎng)度,Ethernet情況下為6。
(4)
Hop
count:若數(shù)據(jù)包需經(jīng)過(guò)路由器傳輸,則每個(gè)路由器加1;若數(shù)據(jù)包在同一網(wǎng)內(nèi),則為0。
(5)
TransactionID:事務(wù)ID,是個(gè)隨機(jī)數(shù),用于客戶端和服務(wù)端之間匹配請(qǐng)求和響應(yīng)信息。
(6)
Numberofseconds:由用戶指定的時(shí)間,指開始地址獲取和更新后的時(shí)間。
(7)
Flags:從0~15bits,最左一個(gè)比特為1時(shí)表示服務(wù)端將以廣播方式傳送數(shù)據(jù)包給客戶端;其余位尚未使用。
(8)
Ciaddr:客戶端的IP地址,一般為空。
(9)
Yiaddr:服務(wù)端分配給客戶端的IP地址。
(10)
Siaddr:候選的下一個(gè)服務(wù)器IP地址,在此次DHCP分配失敗情況下使用。
(11)
Giaddr:轉(zhuǎn)發(fā)代理(網(wǎng)關(guān))IP地址。
(12)
Chaddr:客戶端的硬件地址。
(13)
Sname:可選服務(wù)端的名稱,以0x00結(jié)尾。
(14)
File:?jiǎn)?dòng)文件名。
(15)
Options:廠商標(biāo)識(shí),可選的參數(shù)字段。
4.4.3
DHCP協(xié)議攻擊形式
針對(duì)DHCP協(xié)議的攻擊主要有以下兩種形式:
(1)
MITM攻擊:攻擊者偽裝成DHCP服務(wù)端,給客戶端發(fā)送偽造應(yīng)答,從而使得客戶端獲得虛假的網(wǎng)絡(luò)配置信息,實(shí)現(xiàn)攻擊者劫持后續(xù)客戶端的通信流量。
(2)
DOS攻擊:攻擊者偽裝成不同的客戶端設(shè)備來(lái)占用服務(wù)端可用的IP地址空間,使得其他合法設(shè)備無(wú)法獲得IP地址,導(dǎo)致拒絕服務(wù)攻擊,正常客戶無(wú)法上網(wǎng)。
1.
DHCP服務(wù)欺騙(MITM攻擊)
在攻擊者偽裝DHCP服務(wù)端時(shí),面對(duì)的首要問(wèn)題是合法DHCP服務(wù)端的競(jìng)爭(zhēng):攻擊者的回答要先到達(dá)客戶端,否則其回答就可能被忽略掉。
根據(jù)前面介紹的DHCP交互過(guò)程,攻擊者要偽造的應(yīng)答可以是Offer或者ACK應(yīng)答包,各有各的優(yōu)缺點(diǎn)。
偽造Offer應(yīng)答包相對(duì)贏的概率較大。事實(shí)上,合法服務(wù)端需要時(shí)間確認(rèn)網(wǎng)絡(luò)中的其他設(shè)備沒(méi)有使用即將被分配的IP地址,而攻擊者不需要關(guān)心這點(diǎn),可以直接給客戶端發(fā)送偽造的Offer應(yīng)答包。當(dāng)然,更高明的攻擊者還可以事先讓合法的DHCP服務(wù)端“閉嘴”(拒絕服務(wù))。
偽造Offer應(yīng)答包的缺點(diǎn)在于:首先,攻擊者需要使用自己的IP地址池,可能同合法服務(wù)端地址池有沖突,導(dǎo)致網(wǎng)絡(luò)不穩(wěn)定。其次,如果客戶端在Discover信息分組中要求使用以前租用過(guò)的IP地址,那么來(lái)自合法服務(wù)端的應(yīng)答包將被認(rèn)為是“最好”的應(yīng)答,即使該應(yīng)答包(或稱分組)是后于攻擊者的應(yīng)答收到的。原因很簡(jiǎn)單,該應(yīng)答分組滿足了客戶繼續(xù)使用原IP地址的要求。
偽造ACK應(yīng)答包的成功因素就要隨機(jī)的多,特別是參與各方在網(wǎng)絡(luò)中的拓?fù)湮恢?。?dāng)攻擊者比DHCP服務(wù)端近于目標(biāo)主機(jī)時(shí),其成功的概率就大。而且,在客戶端所使用的IP地址達(dá)到一半的使用時(shí)間后,會(huì)給合法服務(wù)端發(fā)送單播Request分組。在這種情況下,客戶端會(huì)主動(dòng)聯(lián)系合法服務(wù)端,從而獲得合法的網(wǎng)絡(luò)配置信息。
利用Scapy庫(kù)實(shí)現(xiàn)DHCP
Offer數(shù)據(jù)分組發(fā)送的代碼如下:
上述代碼片段只要在嗅探時(shí)檢測(cè)到有客戶端發(fā)送Discover信息分組,就可以給客戶返回響應(yīng)應(yīng)答分組。
嗅探核心代碼如下:
2.
DOS拒絕服務(wù)攻擊(DOS攻擊)
利用DHCP的拒絕服務(wù)攻擊,實(shí)際上就是所謂的饑餓攻擊(StarvationAttack),它是發(fā)送大量的無(wú)效DHCPDiscover請(qǐng)求,其源MAC地址是隨機(jī)產(chǎn)生的,其作用就是消耗地址池的所有可用IP地址。
4.5DNS協(xié)議攻擊
4.5.1
DNS域名系統(tǒng)
DNS(DomainNameSystem,域名系統(tǒng)),萬(wàn)維網(wǎng)上作為域名和IP地址相互映射的一個(gè)分布式數(shù)據(jù)庫(kù),能夠使用戶更方便地訪問(wèn)互聯(lián)網(wǎng),而不用去記住能夠被機(jī)器直接讀取的IP數(shù)字串。就如同我們習(xí)慣于人名而不是身份證號(hào)碼一樣。
在瀏覽器的地址欄里輸入域名時(shí),都需要通過(guò)域名來(lái)得到該域名對(duì)應(yīng)的IP地址,這個(gè)過(guò)程稱為域名解析(或主機(jī)名解析)。
DNS協(xié)議是應(yīng)用層協(xié)議,運(yùn)行在UDP協(xié)議之上,使用端口號(hào)53。DNS協(xié)議的分組格式如圖4-12所示。
圖4-12
DNS協(xié)議報(bào)文格式
DNS協(xié)議分組的頭部主要包含以下字段:
(1)
(會(huì)話)標(biāo)識(shí)符(2字節(jié))是DNS報(bào)文的ID標(biāo)識(shí),對(duì)于請(qǐng)求報(bào)文和其對(duì)應(yīng)的應(yīng)答報(bào)文,這個(gè)字段是相同的,通過(guò)它可以區(qū)分DNS應(yīng)答報(bào)文對(duì)應(yīng)的是哪個(gè)請(qǐng)求。
(2)標(biāo)志(2字節(jié))字段如圖4-13所示。
圖4-13標(biāo)志字段
①?QR(1bit):查詢/響應(yīng)標(biāo)志,0為查詢,1為響應(yīng)。
②
opcode(4bit):0表示標(biāo)準(zhǔn)查詢,1表示反向查詢,2表示服務(wù)端狀態(tài)請(qǐng)求。
③
AA(1bit):表示授權(quán)回答。
④
TC(1bit):表示可截?cái)嗟摹?/p>
⑤
RD(1bit):表示期望遞歸。
⑥
RA(1bit):表示可用遞歸。
⑦
rcode(4bit):表示返回碼,0為沒(méi)有差錯(cuò),3為名字差錯(cuò),2為服務(wù)端錯(cuò)誤。
(3)數(shù)量字段(共8字節(jié)):表示后面的四個(gè)區(qū)域的數(shù)目?!翱偟膯?wèn)題數(shù)”表示查詢問(wèn)題區(qū)域的數(shù)量,“總的應(yīng)答資源記錄數(shù)”表示應(yīng)答區(qū)域的數(shù)量,“總的授權(quán)資源記錄數(shù)”表示授權(quán)區(qū)域的數(shù)量,“總的額外資源記錄數(shù)”表示附加區(qū)域的數(shù)量。
協(xié)議分組頭部后續(xù)跟的正文部分,主要包含以下字段:
(1)
Queries區(qū)域如圖4-14所示。
圖4-14Queries區(qū)域
①域名:長(zhǎng)度不固定,且不使用填充字節(jié),一般該字段表示的就是需要查詢的域名(如果是反向查詢,則為IP地址。反向查詢是指由IP地址反查域名)。
②查詢類型如表4-5所示。
③查詢類:通常為1,表明是Internet數(shù)據(jù)。
(2)資源記錄(RR)區(qū)域格式如圖4-15所示。
圖4-15資源記錄區(qū)域格式
資源記錄區(qū)域有三個(gè),分別是回答區(qū)域、授權(quán)區(qū)域和附加區(qū)域,這三個(gè)區(qū)域格式相同。
①域名(2字節(jié)或不定長(zhǎng)):它的格式和Queries區(qū)域的查詢名字字段是一樣的。有一點(diǎn)不同就是,當(dāng)報(bào)文中域名重復(fù)出現(xiàn)的時(shí)候,該字段使用2個(gè)字節(jié)的偏移指針來(lái)表示。比如,在資源記錄中,域名通常是查詢問(wèn)題部分的域名的重復(fù),因此用2字節(jié)的指針來(lái)表示,具體格式是最前面的兩個(gè)高位是11,用于識(shí)別指針。其余的14位從DNS報(bào)文的開始處計(jì)數(shù)(從0開始),指出該報(bào)文中的相應(yīng)字節(jié)數(shù)。一個(gè)典型的例子,C00C(1100000000001100,12正好是頭部的長(zhǎng)度,其正好指向Queries區(qū)域的查詢名字字段)。
②查詢類型:表明資源紀(jì)錄的類型,與Queries區(qū)域查詢類型相同
③查詢類:對(duì)于Internet信息,總是IN
④生存時(shí)間(TTL):以秒為單位,表示的是資源記錄的生命周期,一般用于地址解析程序獲得資源記錄后保存及使用緩存數(shù)據(jù)的時(shí)間,它同時(shí)也可以表明該資源記錄的穩(wěn)定程度,極為穩(wěn)定的信息會(huì)被分配一個(gè)很大的值(比如86400,這是一天的秒數(shù))。域名重綁定攻擊的核心就是這個(gè)字段。
⑤資源數(shù)據(jù):該字段是一個(gè)可變長(zhǎng)字段,表示按照查詢的要求返回的相關(guān)資源記錄的數(shù)據(jù),可以是地址(表明查詢報(bào)文想要的回應(yīng)是一個(gè)IP地址)或者CNAME(表明查詢報(bào)文想要的回應(yīng)是一個(gè)規(guī)范主機(jī)名)等。
4.5.2
DNS放大攻擊
DNS放大攻擊(DNSAmplificationAttack),是DOS攻擊的一種方式,通過(guò)發(fā)送大量的數(shù)據(jù)包來(lái)消耗目標(biāo)主機(jī)資源,使其無(wú)法正常提高網(wǎng)絡(luò)服務(wù)。DNS放大攻擊通過(guò)偽造DNS數(shù)據(jù)包,向DNS服務(wù)端發(fā)送域名查詢報(bào)文,而DNS服務(wù)端返回的應(yīng)答報(bào)文則會(huì)發(fā)送給被攻擊主機(jī)。這種攻擊方法利用應(yīng)答包比請(qǐng)求應(yīng)答包大的特點(diǎn)(放大流量),偽造請(qǐng)求應(yīng)答包的源IP地址,將應(yīng)答包引向被攻擊的目標(biāo)。
4.5.3
DNSRebinding攻擊
為了保證DNS服務(wù)的可靠性,DNS響應(yīng)記錄A中包含一個(gè)TTL(TimeToLive)值,表示當(dāng)前解析結(jié)果的有效時(shí)間,客戶端(瀏覽器)會(huì)在超過(guò)這個(gè)時(shí)間值后重新請(qǐng)求解析域名(取決于客戶端是否遵循這個(gè)TTL值),所得到的新響應(yīng)中又會(huì)存在一個(gè)過(guò)期時(shí)間,客戶端每次在過(guò)期時(shí)間之后訪問(wèn)域名時(shí),都會(huì)重新查詢域名服務(wù)端以保證獲取到最新的域名解析結(jié)果。
若DNS服務(wù)前后響應(yīng)返回的IP地址不一樣,瀏覽器并不會(huì)認(rèn)為跨域或者違反瀏覽器的同源訪問(wèn)策略。如果域名后續(xù)解析到的IP地址為、等不同于先前解析結(jié)果的內(nèi)部地址,那么瀏覽器依然認(rèn)為符合同源策略,并且照樣會(huì)去訪問(wèn)主機(jī),造成針對(duì)內(nèi)網(wǎng)的攻擊。攻擊者利用短時(shí)間內(nèi)同一域名返回不同解析結(jié)果實(shí)施的攻擊,這就是域名重綁定(DNSRebinding)攻擊。
域名重綁定攻擊的典型場(chǎng)景如圖4-16所示。
圖4-16
DNS重綁定攻擊場(chǎng)景
圖4-16中,整個(gè)DNSRebingding攻擊的實(shí)施需要具備以下幾個(gè)條件:
(1)受害者訪問(wèn)惡意網(wǎng)頁(yè)或者點(diǎn)擊某個(gè)惡意鏈接。
(2)攻擊可以控制惡意網(wǎng)頁(yè)所對(duì)應(yīng)的域名的解析結(jié)果,就是可以任意更改域名和IP
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 大方天麻林下仿野生種植技術(shù)應(yīng)用的環(huán)境條件和詳細(xì)步驟分析
- 湖北省武漢市二中廣雅中學(xué)2024-2025學(xué)年九年級(jí)下學(xué)期3月月考化學(xué)試題(原卷版+解析版)
- 新未來(lái)大學(xué)英語(yǔ) 視聽說(shuō)教程1(智慧版) 聽力腳本 Unit 1
- 建筑電氣系統(tǒng)修繕技術(shù)方案
- 2025年自動(dòng)化X光檢查機(jī)項(xiàng)目合作計(jì)劃書
- 中西醫(yī)結(jié)合外科學(xué)知到課后答案智慧樹章節(jié)測(cè)試答案2025年春廣州中醫(yī)藥大學(xué)
- 2025年雙層客房車項(xiàng)目發(fā)展計(jì)劃
- 醫(yī)院外出進(jìn)修、培訓(xùn)及參加學(xué)術(shù)會(huì)議的管理規(guī)定
- 江西省上饒市2023-2024學(xué)年高二下學(xué)期期末考試語(yǔ)文試題2
- 2017-2018學(xué)年人教課標(biāo)高一英語(yǔ)必修4試題Unit5Themeparks單元測(cè)試題2
- 【《“一帶一路”背景下我國(guó)海外勞工保護(hù)存在的主要問(wèn)題探析綜述》5300字】
- 《中國(guó)服飾史》-沈從文等
- 北京市2023-2024學(xué)年七年級(jí)下學(xué)期期中語(yǔ)文試題(含含答案)
- NBA球星庫(kù)里課件
- 護(hù)理美學(xué)-第十章 護(hù)理環(huán)境中的美
- 試車階段投用前安全檢查清單(PSSR)工廠級(jí)表單
- 鍍金行業(yè)市場(chǎng)突圍建議及需求分析報(bào)告
- 五年級(jí)下英語(yǔ)教案-Lesson 5 What Are They Doing-冀教版
- 2024年同等學(xué)力申碩-同等學(xué)力(經(jīng)濟(jì)學(xué))筆試考試歷年高頻考點(diǎn)試題摘選含答案
- 2024年高中英語(yǔ)衡水體書法練字字帖
- 老齡化社會(huì) 認(rèn)知癥包容性社群框架
評(píng)論
0/150
提交評(píng)論