拒絕服務(wù)攻擊_第1頁
拒絕服務(wù)攻擊_第2頁
拒絕服務(wù)攻擊_第3頁
拒絕服務(wù)攻擊_第4頁
拒絕服務(wù)攻擊_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

拒絕服務(wù)攻擊拒絕服務(wù)攻擊即攻擊者想辦法讓目標(biāo)機(jī)器停止提供服務(wù),是黑客常用的攻擊手段之一。其實(shí)對網(wǎng)絡(luò)帶寬進(jìn)行的消耗性攻擊只是拒絕服務(wù)攻擊的一小部分,只要能夠?qū)δ繕?biāo)造成麻煩,使某些服務(wù)被暫停甚至主機(jī)死機(jī),都屬于拒絕服務(wù)攻擊。拒絕服務(wù)攻擊問題也一直得不到合理的解決,究其原因是因?yàn)檫@是由于網(wǎng)絡(luò)協(xié)議本身的安全缺陷造成的,從而拒絕服務(wù)攻擊也成為了攻擊者的終極手法。攻擊者進(jìn)行拒絕服務(wù)攻擊,實(shí)際上讓服務(wù)器實(shí)現(xiàn)兩種效果:一是迫使服務(wù)器的緩沖區(qū)滿,不接收新的請求;二是使用IP欺騙,迫使服務(wù)器把合法用戶的連接復(fù)位,影響合法用戶的連接目錄1原理1.1SYNFlood1.2IP欺騙性攻擊1.3UDP洪水攻擊1.4Ping洪流攻擊1.5teardrop攻擊1.6Land攻擊1.7Smurf攻擊1.8Fraggle攻擊2屬性分類2.1攻擊靜態(tài)屬性2.2攻擊動態(tài)屬性1原理SYNFloodSYNFlood是當(dāng)前最流行的DoS(拒絕服務(wù)攻擊)與DDoS(DistributedDenialOfService分布式拒絕服務(wù)攻擊)的方式之一,這是一種利用TCP協(xié)議缺陷,發(fā)送大量偽造的TCP連接請求,使被攻擊方資源耗盡(CPU滿負(fù)荷或內(nèi)存不足)的攻擊方式。SYNFlood攻擊的過程在TCP協(xié)議中被稱為三次握手(Three-wayHandshake),而SYNFlood拒絕服務(wù)典型的分布式拒絕服務(wù)攻擊網(wǎng)絡(luò)結(jié)構(gòu)圖攻擊就是通過三次握手而實(shí)現(xiàn)的。⑴攻擊者向被攻擊服務(wù)器發(fā)送一個(gè)包含SYN標(biāo)志的TCP報(bào)文,SYN(Synchronize)即同步報(bào)文。同步報(bào)文會指明客戶端使用的端口以及TCP連接的初始序號。這時(shí)同被攻擊服務(wù)器建立了第一次握手。受害服務(wù)器在收到攻擊者的SYN報(bào)文后,將返回一個(gè)SYN+ACK的報(bào)文,表示攻擊者的請求被接受,同時(shí)TCP序號被加一,ACK(Acknowledgment)即確認(rèn),這樣就同被攻擊服務(wù)器建立了第二次握手。攻擊者也返回一個(gè)確認(rèn)報(bào)文ACK給受害服務(wù)器,同樣TCP序列號被加一,到此一個(gè)TCP連接完成,三次握手完成。具體原理是:TCP連接的三次握手中,假設(shè)一個(gè)用戶向服務(wù)器發(fā)送了SYN報(bào)文后突然死機(jī)或掉線,那么服百一兮布遲世?1血應(yīng)士住応Si用分布式拒絕服務(wù)攻擊網(wǎng)絡(luò)結(jié)構(gòu)圖務(wù)器在發(fā)出SYN+ACK應(yīng)答報(bào)文后是無法收到客戶端的ACK報(bào)文的(第三次握手無法完成),這種情況下服務(wù)器端一般會重試(再次發(fā)送SYN+ACK給客戶端)并等待一段時(shí)間后丟棄這個(gè)未完成的連接。這段時(shí)間的長度我們稱為SYNTimeout,一般來說這個(gè)時(shí)間是分鐘的數(shù)量級(大約為30秒~2分鐘);一個(gè)用戶出現(xiàn)異常導(dǎo)致服務(wù)器的一個(gè)線程等待1分鐘并不是什么很大的問題,但如果有一個(gè)惡意的攻擊者大量模擬這種情況(偽造IP地址),服務(wù)器端將為了維護(hù)一個(gè)非常大的半連接列表而消耗非常多的資源。即使是簡單的保存并遍歷也會消耗非常多的CPU時(shí)間和內(nèi)存,何況還要不斷對這個(gè)列表中的IP進(jìn)行SYN+ACK的重試。實(shí)際上如果服務(wù)器的TCP/IP棧不夠強(qiáng)大,最后的結(jié)果往往是堆棧溢出崩潰——即使服務(wù)器端的系統(tǒng)足夠強(qiáng)大,服務(wù)器端也將忙于處理攻擊者偽造的TCP連接請求而無暇理睬客戶的正常請求(畢竟客戶端的正常請求比率非常之小),此時(shí)從正??蛻舻慕嵌瓤磥恚?wù)器失去響應(yīng),這種情況就稱作:服務(wù)器端受到了SYNFlood攻擊(SYN洪水攻擊)。SYNCOOKIE防火墻是SYNcookie的一個(gè)擴(kuò)展,SYNcookie是建立在TCP堆棧上的,他為linux操作系統(tǒng)提供保護(hù)。SYNcookie防火墻是linux的一大特色,你可以使用一個(gè)防火墻來保護(hù)你的網(wǎng)絡(luò)以避免遭受SYN洪水攻擊。下面是SYNcookie防火墻的原理clientfirewallserverTOC\o"1-5"\h\zSYN >< SYN-ACK(cookie)ACK >-------SYN >< SYN-ACK-------ACK > >relaythe >< connection< 1:一個(gè)SYN包從C發(fā)送到S2:防火墻在這里扮演了S的角色來回應(yīng)一個(gè)帶SYNcookie的SYN-ACK包給C3:C發(fā)送ACK包,接著防火墻和C的連接就建立了。4:防火墻這個(gè)時(shí)候扮演C的角色發(fā)送一個(gè)SYN給S5:S返回一個(gè)SYN給C6:防火墻扮演C發(fā)送一個(gè)ACK確認(rèn)包給S,這個(gè)時(shí)候防火墻和S的連接也就建立了7:防火墻轉(zhuǎn)發(fā)C和S間的數(shù)據(jù)如果系統(tǒng)遭受SYNFlood,那么第三步就不會有,而且無論在防火墻還是S都不會收到相應(yīng)在第一步的SYN包,所以我們就擊退了這次SYN洪水攻擊。IP欺騙性攻擊DDOS攻擊給運(yùn)營商帶來的損害這種攻擊利用RST位來實(shí)現(xiàn)。假設(shè)有一個(gè)合法用戶(1)已經(jīng)同服務(wù)器建立了正常的連接,攻DDOS攻擊擊者構(gòu)造攻擊的TCP數(shù)據(jù),偽裝自己的IP為1,并向服務(wù)器發(fā)送一個(gè)帶有RST位的TCP數(shù)據(jù)段。服務(wù)器接收到這樣的數(shù)據(jù)后,認(rèn)為從1發(fā)送的連接有錯誤,就會清空緩沖區(qū)中建立好的連接。這時(shí),如果合法用戶1再發(fā)送合法數(shù)據(jù),服務(wù)器就已經(jīng)沒有這樣的連接了,該用戶就必須從新開始建立連接。攻擊時(shí),攻擊者會偽造大量的IP地址,向目標(biāo)發(fā)送RST數(shù)據(jù),使服務(wù)器不對合法用戶服務(wù),從而實(shí)現(xiàn)了對受害服務(wù)器的拒絕服務(wù)攻擊。UDP洪水攻擊攻擊者利用簡單的TCP/IP服務(wù),如Chargen和Echo來傳送毫無用處的占滿帶寬的數(shù)據(jù)。通過偽造與某一主機(jī)的Chargen服務(wù)之間的一次的UDP連接,回復(fù)地址指向開著Echo服務(wù)的一臺主機(jī),這樣就生成在兩臺主機(jī)之間存在很多的無用數(shù)據(jù)流,這些無用數(shù)據(jù)流就會導(dǎo)致帶寬的服務(wù)攻擊。Ping洪流攻擊由于在早期的階段,路由器對包的最大尺寸都有限制。許多操作系統(tǒng)對TCP/IP棧的實(shí)現(xiàn)在ICMP包上都是規(guī)定64KB,并且在對包的標(biāo)題頭進(jìn)行讀取之后,要根據(jù)該標(biāo)題頭里包含的信息來為有效載荷生成緩沖區(qū)。當(dāng)產(chǎn)生畸形的,聲稱自己的尺寸超過ICMP上限的包也就是加載的尺寸超過64K上限時(shí),就會出現(xiàn)內(nèi)存分配錯誤,導(dǎo)致TCP/IP堆棧崩潰,致使接受方死機(jī)。teardrop攻擊淚滴攻擊是利用在TCP/IP堆棧中實(shí)現(xiàn)信任IP碎片中的包的標(biāo)題頭所包含的信息來實(shí)現(xiàn)自己的攻擊。IP分段含有指明該分段所包含的是原包的哪一段的信息,某些TCP/IP(包括servicepack4以前的NT)在收到含有重疊偏移的偽造分段時(shí)將崩潰。Land攻擊Land攻擊原理是:用一個(gè)特別打造的SYN包,它的原地址和目標(biāo)地址都被設(shè)置成某一個(gè)服務(wù)器地址。此舉將導(dǎo)致接受服務(wù)器向它自己的地址發(fā)送SYN-ACK消息,結(jié)果這個(gè)地址又發(fā)回ACK消息并創(chuàng)建一個(gè)空連接。被攻擊的服務(wù)器每接收一個(gè)這樣的連接都將保留,直到超時(shí),對Land攻擊反應(yīng)不同,許多UNIX實(shí)現(xiàn)將崩潰,NT變的極其緩慢(大約持續(xù)5分鐘)。Smurf攻擊一個(gè)簡單的Smurf攻擊原理就是:通過使用將回復(fù)地址設(shè)置成受害網(wǎng)絡(luò)的廣播地址的ICMP應(yīng)答請求(ping)數(shù)據(jù)包來淹沒受害主機(jī)的方式進(jìn)行。最終導(dǎo)致該網(wǎng)絡(luò)的所有主機(jī)都對此ICMP應(yīng)答請求作出答復(fù),導(dǎo)致網(wǎng)絡(luò)阻塞。它比pingofdeath洪水的流量高出1或2個(gè)數(shù)量級。更加復(fù)雜的Smurf將源地址改為第三方的受害者,最終導(dǎo)致第三方崩潰。Fraggle攻擊原理:Fraggle攻擊實(shí)際上就是對Smurf攻擊作了簡單的修改,使用的是UDP應(yīng)答消息而非ICMP。2屬性分類J.Mirkovic和P.Reiher[Mirkovic04]提出了拒絕服務(wù)攻擊的屬性分類法,即將攻擊屬性分為攻擊靜態(tài)屬性、攻擊動態(tài)屬性和攻擊交互屬性三類,根據(jù)DoS攻擊的這些屬性的不同,就可以對攻擊進(jìn)行詳細(xì)的分類。凡是在攻擊開始前就已經(jīng)確定,在一次連續(xù)的攻擊中通常不會再發(fā)生改變的屬性,稱為攻擊靜態(tài)屬性。攻擊靜態(tài)屬性是由攻擊者和攻擊本身所確定的,是攻擊基本的屬性。那些在攻擊過程中可以進(jìn)行動態(tài)改變的屬性,如攻擊的目標(biāo)選取、時(shí)間選擇、使用源地址的方式,稱為攻擊動態(tài)屬性。而那些不僅與攻擊者相關(guān)而且與具體受害者的配置、檢測與服務(wù)能力也有關(guān)系的屬性,稱為攻擊交互屬性。攻擊靜態(tài)屬性攻擊靜態(tài)屬性主要包括攻擊控制模式、攻擊通信模式、攻擊技術(shù)原理、攻擊協(xié)議和攻擊協(xié)議層等。(1)攻擊控制方式攻擊控制方式直接關(guān)系到攻擊源的隱蔽程度。根據(jù)攻擊者控制攻擊機(jī)的方式可以分為以下三個(gè)等級:直接控制方式(Direct)、間接控制方式(Indirect)和自動控制方式(Auto)。最早的拒絕服務(wù)攻擊通常是手工直接進(jìn)行的,即對目標(biāo)的確定、攻擊的發(fā)起和中止都是由用戶直接在攻擊主機(jī)上進(jìn)行手工操作的。這種攻擊追蹤起來相對容易,如果能對攻擊包進(jìn)行準(zhǔn)確的追蹤,通常就能找到攻擊者所在的位置。由于直接控制方式存在的缺點(diǎn)和攻擊者想要控制大量攻擊機(jī)發(fā)起更大規(guī)模攻擊的需求,攻擊者開始構(gòu)建多層結(jié)構(gòu)的攻擊網(wǎng)絡(luò)。多層結(jié)構(gòu)的攻擊網(wǎng)絡(luò)給針對這種攻擊的追蹤帶來很大困難,受害者在追蹤到攻擊機(jī)之后,還需要從攻擊機(jī)出發(fā)繼續(xù)追蹤控制器,如果攻擊者到最后一層控制器之間存在多重跳板時(shí),還需要進(jìn)行多次追蹤才能最終找到攻擊者,這種追蹤不僅需要人工進(jìn)行操作,耗費(fèi)時(shí)間長,而且對技術(shù)也有很高的要求。這種攻擊模式,是目前最常用的一種攻擊模式。自動攻擊方式,是在釋放的蠕蟲或攻擊程序中預(yù)先設(shè)定了攻擊模式,使其在特定時(shí)刻對指定目標(biāo)發(fā)起攻擊。這種方式的攻擊,從攻擊機(jī)往往難以對攻擊者進(jìn)行追蹤,但是這種控制方式的攻擊對技術(shù)要求也很高。Mydoom蠕蟲對SCO網(wǎng)站和Microsoft網(wǎng)站的攻擊就屬于第三種類型[TA04-028A]。(2)攻擊通信方式在間接控制的攻擊中,控制者和攻擊機(jī)之間可以使用多種通信方式,它們之間使用的通信方式也是影響追蹤難度的重要因素之一。攻擊通信方式可以分為三種方式,分別是:雙向通信方式(bi)、單向通信方式(mono)和間接通信方式(indirection)。雙向通信方式是指根據(jù)攻擊端接收到的控制數(shù)據(jù)包中包含了控制者的真實(shí)IP地址,例如當(dāng)控制器使用TCP與攻擊機(jī)連接時(shí),該通信方式就是雙向通信。這種通信方式,可以很容易地從攻擊機(jī)查找到其上一級的控制器。單向通信方式指的是攻擊者向攻擊機(jī)發(fā)送指令時(shí)的數(shù)據(jù)包并不包含發(fā)送者的真實(shí)地址信息,例如用偽造IP地址的UDP包向攻擊機(jī)發(fā)送指令。這一類的攻擊很難從攻擊機(jī)查找到控制器,只有通過包標(biāo)記等IP追蹤手段,才有可能查找到給攻擊機(jī)發(fā)送指令的機(jī)器的真實(shí)地址。但是,這種通信方式在控制上存在若干局限性,例如控制者難以得到攻擊機(jī)的信息反饋和狀態(tài)。間接通信方式是一種通過第三者進(jìn)行交換的雙向通信方式,這種通信方式具有隱蔽性強(qiáng)、難以追蹤、難以監(jiān)控和過濾等特點(diǎn),對攻擊機(jī)的審計(jì)和追蹤往往只能追溯到某個(gè)被用于通信中介的公用服務(wù)器上就再難以繼續(xù)進(jìn)行。這種通信方式已發(fā)現(xiàn)的主要是通過IRC(InternetRelayChat)進(jìn)行通信[JoseNazario],從2000年8月出現(xiàn)的名為Trinity的DDoS攻擊工具開始,已經(jīng)有多種DDoS攻擊工具及蠕蟲采納了這種通信方式。在基于IRC的傀儡網(wǎng)絡(luò)中,若干攻擊者連接到Internet上的某個(gè)IRC服務(wù)器上,并通過服務(wù)器的聊天程序向傀儡主機(jī)發(fā)送指令。(3)攻擊原理DoS攻擊原理主要分為兩種,分別是:語義攻擊(Semantic)和暴力攻擊(Brute)。語義攻擊指的是利用目標(biāo)系統(tǒng)實(shí)現(xiàn)時(shí)的缺陷和漏洞,對目標(biāo)主機(jī)進(jìn)行的拒絕服務(wù)攻擊,這種攻擊往往不需要攻擊者具有很高的攻擊帶寬,有時(shí)只需要發(fā)送1個(gè)數(shù)據(jù)包就可以達(dá)到攻擊目的,對這種攻擊的防范只需要修補(bǔ)系統(tǒng)中存在的缺陷即可。暴力攻擊指的是不需要目標(biāo)系統(tǒng)存在漏洞或缺陷,而是僅僅靠發(fā)送超過目標(biāo)系統(tǒng)服務(wù)能力的服務(wù)請求數(shù)量來達(dá)到攻擊的目的,也就是通常所說的風(fēng)暴攻擊。所以防御這類攻擊必須借助于受害者上游路由器等的幫助,對攻擊數(shù)據(jù)進(jìn)行過濾或分流。某些攻擊方式,兼具語義和暴力兩種攻擊的特征,比如SYN風(fēng)暴攻擊,雖然利用了TCP協(xié)議本身的缺陷,但仍然需要攻擊者發(fā)送大量的攻擊請求,用戶要防御這種攻擊,不僅需要對系統(tǒng)本身進(jìn)行增強(qiáng),而且也需要增大資源的服務(wù)能力。還有一些攻擊方式,是利用系統(tǒng)設(shè)計(jì)缺陷,產(chǎn)生比攻擊者帶寬更高的通信數(shù)據(jù)來進(jìn)行暴力攻擊的,如DNS請求攻擊和Smurf攻擊,參見4.2.3節(jié)以及文獻(xiàn)[IN-2000-04]和[CA-1998-01]。這些攻擊方式在對協(xié)議和系統(tǒng)進(jìn)行改進(jìn)后可以消除或減輕危害,所以可把它們歸于語義攻擊的范疇。(4)攻擊協(xié)議層攻擊所在的TCP/IP協(xié)議層可以分為以下四類:數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層、傳輸層和應(yīng)用層。數(shù)據(jù)鏈路層的拒絕服務(wù)攻擊[Convery][Fischbach01][Fischbach02]受協(xié)議本身限制,只能發(fā)生在局域網(wǎng)內(nèi)部,這種類型的攻擊比較少見。針對IP層的攻擊主要是針對目標(biāo)系統(tǒng)處理IP包時(shí)所出現(xiàn)的漏洞進(jìn)行的,如IP碎片攻擊[Anderson01],針對傳輸層的攻擊在實(shí)際中出現(xiàn)較多,SYN風(fēng)暴、ACK風(fēng)暴等都是這類攻擊,面向應(yīng)用層的攻擊也較多,劇毒包攻擊中很多利用應(yīng)用程序漏洞的(例如緩沖區(qū)溢出的攻擊)都屬于此類型。(5)攻擊協(xié)議攻擊所涉及的最高層的具體協(xié)議,如SMTP、ICMP、UDP、HTTP等。攻擊所涉及的協(xié)議層越高,則受害者對攻擊包進(jìn)行分析所需消耗的計(jì)算資源就越大。攻擊動態(tài)屬性攻擊動態(tài)屬性主要包括攻擊源地址類型、攻擊包數(shù)據(jù)生成模式和攻擊目標(biāo)類型。(1)攻擊源地址類型攻擊者在攻擊包中使用的源地址類型可以分為三種:真實(shí)地址(True)、偽造合法地址(ForgeLegal)和偽造非法地址(ForgeIllegal)。攻擊時(shí)攻擊者可以使用合法的IP地址,也可以使用偽造的IP地址。偽造的IP地址可以使攻擊者更容易逃避追蹤,同時(shí)增大受害者對攻擊包進(jìn)行鑒別、過濾的難度,但某些類型的攻擊必須使用真實(shí)的IP地址,例如連接耗盡攻擊。使用真實(shí)IP地址的攻擊方式由于易被追蹤和防御等原因,近些年來使用比例逐漸下降。使用偽造IP地址的攻擊又分為兩種情況:一種是使用網(wǎng)絡(luò)中已存在的IP地址,這種偽造方式也是反射攻擊所必需的源地址類型;另外一種是使用網(wǎng)絡(luò)中尚未分配或者是保留的IP地址(例如/16、/12等內(nèi)部網(wǎng)絡(luò)保留地址[RFC1918])。(2)攻擊包數(shù)據(jù)生成模式攻擊包中包含的數(shù)據(jù)信息模式主要有5種:不需要生成數(shù)據(jù)(None)、統(tǒng)一生成模式(Unique)、隨機(jī)生成模式(Random)、字典模式(Dictionary)和生成函數(shù)模式(Function)。在攻擊者實(shí)施風(fēng)暴式拒絕服務(wù)攻擊時(shí),攻擊者需要發(fā)送大量的數(shù)據(jù)包到目標(biāo)主機(jī),這些數(shù)據(jù)包所包含的數(shù)據(jù)信息載荷可以有多種生成模式,不同的生成模式對受害者在攻擊包的檢測和過濾能力方面有很大的影響。某些攻擊包不需要包含載荷或者只需包含適當(dāng)?shù)墓潭ǖ妮d荷,例如SYN風(fēng)暴攻擊和ACK風(fēng)暴攻擊,這兩種攻擊發(fā)送的數(shù)據(jù)包中的載荷都是空的,所以這種攻擊是無法通過載荷進(jìn)行分析的。但是對于另外一些類型的攻擊包,就需要攜帶相應(yīng)的載荷。攻擊包載荷的生成方式可以分為4種:第一種是發(fā)送帶有相同載荷的包,這樣的包由于帶有明顯的特征,很容易被檢測出來。第二種是發(fā)送帶有隨機(jī)生成的載荷的包,這種隨機(jī)生成的載荷雖然難以用模式識別的方式來檢測,然而隨機(jī)生成的載荷在某些應(yīng)用中可能生成大量沒有實(shí)際意義的包,這些沒有意義的包也很容易被過濾掉,但是攻擊者仍然可以精心設(shè)計(jì)載荷的隨機(jī)生成方式,使得受害者只有解析到應(yīng)用層協(xié)議才能識別出攻擊數(shù)據(jù)包,從而增加了過濾的困難性。第三種方式是攻擊者從若干有意義載荷的集合中按照某種規(guī)則每次取出一個(gè)填充到攻擊包中,這種方式當(dāng)集合的規(guī)模較小時(shí),也比較容易被檢測出來。最后一種方式是按照某種規(guī)則每次生成不同的載荷,這種方式依生成函數(shù)的不同,其檢測的難度也是不同的。攻擊目標(biāo)類型攻擊目標(biāo)類型可以分為以下6類:應(yīng)用程序(Application)、系統(tǒng)(System)、網(wǎng)絡(luò)關(guān)鍵資源(Critical)、網(wǎng)絡(luò)(Network)、網(wǎng)絡(luò)基礎(chǔ)設(shè)施(Infrastrueture)和因特網(wǎng)(Internet)。針對特定應(yīng)用程序的攻擊是較為常見的攻擊方式,其中以劇毒包攻擊較多,它包括針對特定程序的,利用應(yīng)用程序漏洞進(jìn)行的拒絕服務(wù)攻擊,以及針對一類應(yīng)用的,使用連接耗盡方式進(jìn)行的拒絕服務(wù)攻擊。針對系統(tǒng)的攻擊也很常見,像SYN風(fēng)暴、UDP風(fēng)暴[CA-1996-01]以及可以導(dǎo)致系統(tǒng)崩潰、重啟的劇毒包攻擊都可以導(dǎo)致整個(gè)系統(tǒng)難以提供服務(wù)。針對網(wǎng)絡(luò)關(guān)鍵資源的攻擊包括對特定DNS、路由器的攻擊。而面向網(wǎng)絡(luò)的攻擊指的是將整個(gè)局域網(wǎng)的所有主機(jī)作為目標(biāo)進(jìn)行的攻擊。針對網(wǎng)絡(luò)基礎(chǔ)設(shè)施的攻擊需要攻擊者擁有相當(dāng)?shù)馁Y源和技術(shù),攻擊目標(biāo)是根域名服務(wù)器、主干網(wǎng)核心路由器、大型證書服務(wù)器等網(wǎng)絡(luò)基礎(chǔ)設(shè)施,這種攻擊發(fā)生次數(shù)雖然不多,但一旦攻擊成功,造成的損失是難以估量的[Naraine02]。針對Internet的攻擊是指通過蠕蟲、病毒發(fā)起的,在整個(gè)Internet上蔓延并導(dǎo)致大量主機(jī)、網(wǎng)絡(luò)拒絕服務(wù)的攻擊,這種攻擊的損失尤為嚴(yán)重。交互屬性攻擊的動態(tài)屬性不僅與攻擊者的攻擊方式、能力有關(guān),也與受害者的能力有關(guān)。主要包括攻擊的可檢測程度和攻擊影響。可檢測程度根據(jù)能否對攻擊數(shù)據(jù)包進(jìn)行檢測和過濾,受害者對攻擊數(shù)據(jù)的檢測能力從低到高分為以下三個(gè)等級:可過濾(Filterable)、有特征但無法過濾(Unfilterable)和無法識別(Noncharacterizable)。第一種情況是,對于受害者來說,攻擊包具有較為明顯的可識別特征,而且通過過濾具有這些特征的數(shù)據(jù)包,可以有效地防御攻擊,保證服務(wù)的持續(xù)進(jìn)行。第二種情況是,對于受害者來說,攻擊包雖然具有較為明顯的可識別特征,但是如果過濾具有這些特征的數(shù)據(jù)包,雖然可以阻斷攻擊包,但同時(shí)也會影響到服務(wù)的持續(xù)進(jìn)行,從而無法從根本上防止拒絕服務(wù)。第三種情況是,對于受害者來說,攻擊包與其他正常的數(shù)據(jù)包之間,沒有明顯的特征可以區(qū)分,也就是說,所有的包,在受害者看來,都是正常的。攻擊影響根據(jù)攻擊對目標(biāo)造成的破壞程度,攻擊影響自低向高可以分為:無效(None)、服務(wù)降低(Degrade)、可自恢復(fù)的服務(wù)破壞(Self-recoverable)、可人工恢復(fù)的服務(wù)破壞(Manu-recoverable)以及不可恢復(fù)的服務(wù)破壞(Non-recoverable)。如果目標(biāo)系統(tǒng)在拒絕服務(wù)攻擊發(fā)生時(shí),仍然可以提供正常服務(wù),則該攻擊是無效的攻擊。如果攻擊能力不足以導(dǎo)致目標(biāo)完全拒絕服務(wù),但造成了目標(biāo)的服務(wù)能力降低,這種效果稱之為服務(wù)降低。而當(dāng)攻擊能力達(dá)到一定程度時(shí),攻擊就可以使目標(biāo)完全喪失服務(wù)能力,稱之為服務(wù)破壞。服務(wù)破壞又可以分為可恢復(fù)的服務(wù)破壞和不可恢復(fù)的服務(wù)破壞,網(wǎng)絡(luò)拒絕服務(wù)攻擊所造成的服務(wù)破壞通常都是可恢復(fù)的。一般來說,風(fēng)暴型的DDoS攻擊所導(dǎo)致的服務(wù)破壞都是可以自恢復(fù)的,當(dāng)攻擊數(shù)據(jù)流消失時(shí),目標(biāo)就可以恢復(fù)正常工作狀態(tài)。而某些利用系統(tǒng)漏洞的攻擊可以導(dǎo)致目標(biāo)主機(jī)崩潰、重啟,這時(shí)就需要對系統(tǒng)進(jìn)行人工恢復(fù);還有一些攻擊利用目標(biāo)系統(tǒng)的漏洞對目標(biāo)的文件系統(tǒng)進(jìn)行破壞,導(dǎo)致系統(tǒng)的關(guān)鍵數(shù)據(jù)丟失,往往會導(dǎo)致不可恢復(fù)的服務(wù)破壞,即使系統(tǒng)重新提供服務(wù),仍然無法恢復(fù)到破壞之前的服務(wù)狀態(tài)。動機(jī)與其他類型的攻擊一樣,攻擊者發(fā)起拒絕服務(wù)攻擊的動機(jī)也是多種多樣的,不同的時(shí)間和場合發(fā)生的、由不同的攻擊者發(fā)起的、針對不同的受害者的攻擊可能有著不同的目的。這里,把拒絕服務(wù)攻擊的一些主要目的進(jìn)行歸納。需要說明的是,這里列出的沒有也不可能包含所有的攻擊目的;同時(shí),這些目的也不是排他性的,一次攻擊事件可能會有著多重的目的。作為練習(xí)手段由于DoS攻擊非常簡單,還可以從網(wǎng)上直接下載工具進(jìn)行自動攻擊。因此,這種攻擊可以被一些自認(rèn)為是或者想要成為黑客而實(shí)際上是腳本小子(ScriptKiddies)的人用做練習(xí)攻擊技術(shù)的手段。而其他的一些特權(quán)提升攻擊(除通過蠕蟲等進(jìn)行自動攻擊外),通常都會或多或少地牽涉到一些技術(shù)性的東西,從而掌握起來會有一定的難度。炫耀黑客們常常以能攻破某系統(tǒng)作為向同伴炫耀,提高在黑客社會中的可信度及知名度的資本,拒絕服務(wù)攻擊雖然技術(shù)要求不是很高,有時(shí)也被一些人特別是一些“所謂的”黑客用來炫耀。仇恨或報(bào)復(fù)仇恨或報(bào)復(fù)也常常是攻擊的動機(jī)。尋求報(bào)復(fù)通常都基于強(qiáng)烈的感情,攻擊者可能竭盡所能地發(fā)起攻擊,因而一般具有較大的破壞性。同時(shí),拒絕服務(wù)攻擊當(dāng)是報(bào)復(fù)者的首選攻擊方式,因?yàn)樗麄兊哪康闹饕瞧茐亩菍ο到y(tǒng)的控制或竊取信息。因仇恨而發(fā)起攻擊的人員有:前雇員,由于被解雇、下崗或者因?yàn)槠渌挥淇斓脑蜣o職而感到不滿的。現(xiàn)雇員,感到其雇主應(yīng)該提升自己、增加薪水或以其他方式承認(rèn)其工作,而愿望沒有得到滿足的,尤其是哪些因?yàn)轭愃圃?,打算辭職的。現(xiàn)雇員,因?yàn)檎味窢?、升職競爭等原因而惡意破壞他人工作成績的。外部人員,由于對公司充滿仇恨,例如不滿的客戶或者競爭對手的雇員,他們可能希望損害公司的利益或者使其陷入困境。外部人員,他們可能仇恨公司所雇用的某個(gè)人,這個(gè)人也許是前男/女朋友,前配偶等。4.惡作劇或單純?yōu)榱似茐挠行┫到y(tǒng)的使用需要賬戶(用戶名)和口令進(jìn)行身份認(rèn)證,而當(dāng)以某個(gè)用戶名登錄時(shí),如果口令連續(xù)錯誤的次數(shù)超過一定值,系統(tǒng)會鎖定該賬戶,攻擊者可以采用此方法實(shí)施對賬戶的拒絕服務(wù)攻擊。此外,我們在現(xiàn)實(shí)生活中常常見到一些公共設(shè)施如通信電纜被惡意毀壞;在網(wǎng)絡(luò)社會中,類似的情況也時(shí)有發(fā)生,這些攻擊常常是為了惡作劇。經(jīng)濟(jì)原因有的攻擊者攻擊系統(tǒng)是為了某種經(jīng)濟(jì)利益,無論是直接的還是間接的。比如A、B是兩家相互競爭的依賴Internet做生意的公司,如果其中一個(gè)公司的服務(wù)質(zhì)量降低或者顧客不能訪問該公司的網(wǎng)絡(luò),顧客可能會轉(zhuǎn)向另一家公司,則A就可能對B公司提供的網(wǎng)上服務(wù)實(shí)施拒絕服務(wù)攻擊,在這里,攻擊者A可以通過對B的攻擊而獲取經(jīng)濟(jì)利益。攻擊者也可以受雇而發(fā)起攻擊,例如在上例中,一些黑客可能受A的雇傭而攻擊B的網(wǎng)絡(luò),類似的實(shí)際案例早有報(bào)道。敲詐、勒索也逐漸成為了一些攻擊者進(jìn)行拒絕服務(wù)攻擊的目的。由于拒絕服務(wù)攻擊會導(dǎo)致較大的損失,一些攻擊者以此作為敲詐勒索的手段。例如,2004年歐洲杯足球賽期間發(fā)生的一起針對一個(gè)賭博公司的敲詐案[BBC04],攻擊者威脅說如果該公司不付錢就會攻擊其網(wǎng)站,使之下線。在其他的重要體育賽事期間,也發(fā)生過多起類似的犯罪行為。又如,RenaudBidou在BlackHatUSA2005會議中介紹了一個(gè)以拒絕服務(wù)攻擊進(jìn)行敲詐勒索的例子。受害者是位于莫斯科的一個(gè)從事貨幣兌換的俄羅斯金融公司,受害者的業(yè)務(wù)都是從網(wǎng)上在線處理的。攻擊者先用大約每秒150000個(gè)數(shù)據(jù)包的SYN風(fēng)暴攻擊受害者的服務(wù)(所有數(shù)據(jù)包指向同一個(gè)IP的同一個(gè)端口,即受害者關(guān)鍵業(yè)務(wù)所用的端口),攻擊30分鐘后,攻擊者通過ICQ聯(lián)系,要求受害者在36小時(shí)內(nèi)支付指定數(shù)量的贖金,整個(gè)第一波攻擊持續(xù)60分鐘后停止。從第一波攻擊開始起36小時(shí)后,由于沒有收到贖金,攻擊者發(fā)起了第二波攻擊,在此次攻擊中,攻擊者從每秒50000個(gè)數(shù)據(jù)包開始,按每5分鐘以每秒50000個(gè)數(shù)據(jù)包的力度遞增,到20分鐘時(shí)達(dá)到攻擊的極限——每秒200000個(gè)數(shù)據(jù)包,所有這些數(shù)據(jù)包都被受害者的SYNCookies措施所阻塞。第二波攻擊的持續(xù)時(shí)間不長,到35分鐘以后,受害者的業(yè)務(wù)得以恢復(fù)。隨著越來越多的受害者選擇向敲詐者妥協(xié),以拒絕服務(wù)攻擊進(jìn)行敲詐勒索的案例越來越多。同時(shí),由于拒絕服務(wù)攻擊常常涉及超出國界的Internet連接,對拒絕服務(wù)攻擊這種犯罪行為的起訴也比較困難,這進(jìn)一步加劇了問題的嚴(yán)重性。政治原因這類攻擊的目的是對某種政治思想的表達(dá)或者壓制他人的表達(dá)。如2001年5月間,由美國間諜飛機(jī)撞毀我巡邏機(jī)引發(fā)的,中美黑客之間的一場網(wǎng)絡(luò)大戰(zhàn)①,以及2003年伊拉克戰(zhàn)爭期間美國與伊拉克黑客之間的發(fā)生的相互攻擊對方國內(nèi)網(wǎng)絡(luò)的事件就屬政治原因引起的(當(dāng)然,拒絕服務(wù)攻擊只是當(dāng)時(shí)雙方采取的攻擊手段之一)。又比如,某銀行貸款給一家公司用于在某處建一對環(huán)境污染嚴(yán)重的化工廠,環(huán)境保護(hù)主義者可能會攻擊該銀行,后果或者是導(dǎo)致該銀行的損失,達(dá)到報(bào)復(fù)該銀行的目的,或者是迫使該銀行取消該項(xiàng)貸款,達(dá)到保護(hù)環(huán)境的目的。信息戰(zhàn)在戰(zhàn)爭條件下,交戰(zhàn)雙方如果采取信息戰(zhàn)的方式,則拒絕服務(wù)攻擊就是最常用的戰(zhàn)術(shù)手段之一。例如,1991年,在海灣戰(zhàn)爭開戰(zhàn)前數(shù)周,美國特工買通了安曼國際機(jī)場的工作人員,用帶有病毒的芯片替換了運(yùn)往伊拉克的打印機(jī)芯片。該病毒由美國國家安全局設(shè)計(jì),目的就是為了破壞巴格達(dá)的防空系統(tǒng),從而為美方的空中打擊創(chuàng)造有利條件。據(jù)一本名為《不戰(zhàn)而勝:波斯灣戰(zhàn)爭中未揭露的歷史》(TriumphwithoutVictory:TheUnreportedHistoryofthePersianGulfWar)的圖書稱,該病毒可以逃避層層安全檢測,當(dāng)病毒存在于計(jì)算機(jī)上時(shí),每次伊拉克的技術(shù)人員開一個(gè)窗口訪問信息的時(shí)候,其計(jì)算機(jī)屏幕上的信息就會消失。有報(bào)道稱該病毒最后確實(shí)起作用了。這里,美方通過激發(fā)病毒使得伊拉克防空系統(tǒng)使用的打印機(jī)不能正常工作,就是一種拒絕服務(wù)攻擊。輔助手段前面討論的目的都是由拒絕服務(wù)攻擊直接達(dá)到的,事實(shí)上,拒絕服務(wù)攻擊還可以作為特權(quán)提升攻擊、獲得非法訪問的一種輔助手段。這時(shí)候,拒絕服務(wù)攻擊服從于其他攻擊的目的。通常,攻擊者不能單純通過拒絕服務(wù)攻擊獲得對某些系統(tǒng)、信息的非法訪問,但其可作為間接手段。SYN風(fēng)暴攻擊可以用于IP劫持、IP欺騙等。當(dāng)攻擊者想要向B冒充C時(shí),其通常需要C不能響應(yīng)B的消息,為此,攻擊者可以先攻擊C(如果它是在線的)使其無法對B的消息進(jìn)行響應(yīng)。然后攻擊者就可以通過竊聽發(fā)向C的數(shù)據(jù)包,或者通過猜測發(fā)向C的數(shù)據(jù)包中的序列號等,然后冒充C與第三方通信。一些系統(tǒng)在啟動時(shí)會有漏洞,可以通過拒絕服務(wù)攻擊使之重啟,然后在該系統(tǒng)重啟時(shí)針對漏洞進(jìn)行攻擊。如RARP-boot,如果能令其重啟,就可以將其攻破。只需知道RARP-boot在引導(dǎo)時(shí)監(jiān)聽的端口號(通常為69),通過向其發(fā)送偽造的數(shù)據(jù)包幾乎可以完全控制其引導(dǎo)(Boot)過程。有些網(wǎng)絡(luò)配置成當(dāng)防火墻關(guān)閉時(shí)所有數(shù)據(jù)包都能通過(特別是對于那些提供服務(wù)比安全更加重要的場合,如普通的ISP),則可通過對防火墻的拒絕服務(wù)攻擊使其失去作用達(dá)到非法訪問受防火墻保護(hù)的網(wǎng)絡(luò)的目的。對Windows系統(tǒng)的大多數(shù)配置變動在生效前都需要重新啟動系統(tǒng)。這么一來,如果攻擊者已經(jīng)獲得了對系統(tǒng)的管理性特權(quán)的變動之后,可能需要采取拒絕服務(wù)攻擊的手段使系統(tǒng)重啟或者迫使系統(tǒng)的真正管理員重啟系統(tǒng),以便其改動的配置生效。對DNS的拒絕服務(wù)攻擊可以達(dá)到地址冒充的目的。DNS服務(wù)器起到的是把域名解析為IP地址的作用。攻擊者可以通過把DNS致癱,然后冒充DNS的域名解析,把錯誤的域名-IP地址的對應(yīng)關(guān)系提供給用戶,以便把用戶(受害者)的數(shù)據(jù)包指向錯誤的網(wǎng)站(如攻擊者的網(wǎng)站),或者把受害者的郵件指向錯誤的(如攻擊者的)郵件服務(wù)器,這樣,攻擊者就達(dá)到了冒充其他域名的目的。攻擊者的最終目的大致有兩種:一是竊取受害者的信息,但客觀上導(dǎo)致用戶不能應(yīng)用相應(yīng)的服務(wù),也構(gòu)成拒絕服務(wù)攻擊;二是拒絕服務(wù)攻擊,如蓄意使用戶不能訪問需要的網(wǎng)站,不能發(fā)送郵件到需要的服務(wù)器等。防止攻擊許多現(xiàn)代的UNIX允許管理員設(shè)置一些限制,如限制可以使用的最大內(nèi)存、CPU時(shí)間以及可以生成的最大文件等。如果當(dāng)前正在開發(fā)一個(gè)新的程序,而又不想偶然地使系統(tǒng)變得非常緩慢,或者使其它分享這臺主機(jī)的用戶無法使用,這些限制是很有用的。KornShell的ulimit命令和Shell的limit命令可以列出當(dāng)前程的資源限制。SYNFlood防御前文描述過,SYNFlood攻擊大量消耗服務(wù)器的CPU、內(nèi)存資源,并占滿SYN等待隊(duì)列。相應(yīng)的,我們修改內(nèi)核參數(shù)即可有效緩解。主要參數(shù)如下:net.ipv4.tcp_syncookies=1net.ipv4.tcp_max_syn_backlog=8192net.ipv4.tcp_synack_retries=2分別為啟用SYNCookie、設(shè)置SYN最大隊(duì)列長度以及設(shè)置SYN+ACK最大重試次數(shù)。SYNCookie的作用是緩解服務(wù)器資源壓力。啟用之前,服務(wù)器在接到SYN數(shù)據(jù)包后,立即分配存儲空間,并隨機(jī)化一個(gè)數(shù)字作為SYN號發(fā)送SYN+ACK數(shù)據(jù)包。然后保存連接的狀態(tài)信息等待客戶端確認(rèn)。啟用SYNCookie之后,服務(wù)器不再分配存儲空間,而且通過基于時(shí)間種子的隨機(jī)數(shù)算法設(shè)置一個(gè)SYN號,替代完全隨機(jī)的SYN號。發(fā)送完SYN+ACK確認(rèn)報(bào)文之后,清空資源不保存任何狀態(tài)信息。直到服務(wù)器接到客戶端的最終ACK包,通過Cookie檢驗(yàn)算法鑒定是否與發(fā)出去的SYN+ACK報(bào)文序列號匹配,匹配則通過完成握手,失敗則丟棄。當(dāng)然,前文的高級攻擊中有SYN混合ACK的攻擊方法,則是對此種防御方法的反擊,其中優(yōu)劣由雙方的硬件配置決定tcp_max_syn_backlog則是使用服務(wù)器的內(nèi)存資源,換取更大的等待隊(duì)列長度,讓攻擊數(shù)據(jù)包不至于占滿所有連接而導(dǎo)致正常用戶無法完成握手。net.ipv4.tcp_synack_retries是降低服務(wù)器SYN+ACK報(bào)文重試次數(shù),盡快釋放等待資源。這三種措施與攻擊的三種危害一一對應(yīng),完完全全地對癥下藥。但這些措施也是雙刃劍,可能消耗服務(wù)器更多的內(nèi)存資源,甚至影響正常用戶建立TCP連接,需要評估服務(wù)器硬件資源和攻擊大小謹(jǐn)慎設(shè)置。除了定制TCP/IP協(xié)議棧之外,還有一種常見做法是TCP首包丟棄方案,利用TCP協(xié)議的重傳

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論