《信息安全導(dǎo)論》課件1第8章_第1頁
《信息安全導(dǎo)論》課件1第8章_第2頁
《信息安全導(dǎo)論》課件1第8章_第3頁
《信息安全導(dǎo)論》課件1第8章_第4頁
《信息安全導(dǎo)論》課件1第8章_第5頁
已閱讀5頁,還剩44頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第8章攻擊檢測與攻擊容忍

8.1攻擊檢測概述

8.2攻擊檢測方法

8.3攻擊容忍與可生存系統(tǒng)

思考題

實驗8攻擊檢測

8.1攻擊檢測概述8.1.1攻擊檢測的概念攻擊檢測是一種動態(tài)監(jiān)控、預(yù)防和抵御攻擊行為的安全機制,它主要通過監(jiān)控網(wǎng)絡(luò)、系統(tǒng)的狀態(tài)、行為以及系統(tǒng)的使用情況,來檢測系統(tǒng)用戶的越權(quán)使用以及外部攻擊者對系統(tǒng)進行的攻擊。攻擊檢測機制是防火墻機制的一種補充。如果把安全的信息系統(tǒng)比作一座城堡的話,身份識別或訪問控制就好像進城時檢查證件一樣,重點在于防范奸細的混入或者限制內(nèi)部人員的活動范圍;攻擊檢測類似巡警或治安巡邏隊,專門注重于發(fā)現(xiàn)形跡可疑者。通過攻擊檢測,可以監(jiān)控、分析用戶和系統(tǒng)的活動,可以審計系統(tǒng)的配置和弱點,可以評估關(guān)鍵系統(tǒng)和數(shù)據(jù)文件的完整性,還可以識別攻擊者的攻擊活動模式。

8.1.2攻擊檢測系統(tǒng)的架構(gòu)最具代表性的攻擊檢測系統(tǒng)的架構(gòu)是通用攻擊檢測框架CIDF,這一架構(gòu)來自于美國國防部高級研究計劃局的一個項目。這一架構(gòu)由事件產(chǎn)生器、事件分析器、事件數(shù)據(jù)庫和響應(yīng)單元四部分組成,如圖8-1所示。事件產(chǎn)生器:從攻擊檢測系統(tǒng)之外的環(huán)境中收集事件,并將事件規(guī)范化為通用攻擊檢測對象GIDO的格式送給其他部分。事件分析器:接受事件產(chǎn)生器生成的GIDO,并對其進行孤立或關(guān)聯(lián)分析,分析方式由實際系統(tǒng)決定,可以使用統(tǒng)計特征,也可以使用其他特征。

事件數(shù)據(jù)庫:完成對必要的GIDO的存儲,方便將來的進一步使用。響應(yīng)單元:根據(jù)信息產(chǎn)生響應(yīng)動作,如報警、關(guān)閉連接、終止進程、更改文件權(quán)限等。

圖8-1CIDF架構(gòu)

CIDF最主要的工作就是不同組件間所使用語言的標準化,CIDF用通用攻擊說明語言CISL對事件、分析結(jié)果、響應(yīng)指示等過程進行表示說明,以達到IDS之間的語法互操作。CISL語言使用符號表達式(簡稱S-表達式),類似于LISP語言。8.1.3攻擊檢測系統(tǒng)的工作流程攻擊檢測系統(tǒng)的工作流程可分為信息收集、信息分析和動作響應(yīng)三個階段,這三個階段對應(yīng)的CIDF功能單元分別是事件產(chǎn)生器、事件分析器和響應(yīng)單元。信息收集階段的主要工作是收集被保護網(wǎng)絡(luò)和系統(tǒng)的特征信息,攻擊檢測系統(tǒng)的數(shù)據(jù)源主要來自主機、網(wǎng)絡(luò)和其他安全產(chǎn)品。基于主機的數(shù)據(jù)源主要有系統(tǒng)的配置信息、系統(tǒng)運行狀態(tài)信息、系統(tǒng)記賬信息、系統(tǒng)日志、系統(tǒng)安全性審計信息和應(yīng)用程序的日志;基于網(wǎng)絡(luò)的數(shù)據(jù)源主要有SNMP信息和網(wǎng)絡(luò)通信數(shù)據(jù)包;其他攻擊檢測系統(tǒng)的報警信息、其他網(wǎng)絡(luò)設(shè)備和安全產(chǎn)品的信息也是重要的數(shù)據(jù)源之一。信息分析階段的主要工作是利用一種或多種攻擊檢測技術(shù)對收集到的特征信息進行有效的組織、整理、分析和提取,從而發(fā)現(xiàn)存在的攻擊事件。這種行為的鑒別可以實時進行,也可以事后分析,在很多情況下,事后的進一步分析是為了尋找行為的責任人。動作響應(yīng)階段的主要工作是對信息分析的結(jié)果做出相應(yīng)的響應(yīng)。被動響應(yīng)是系統(tǒng)僅僅簡單地記錄和報告所檢測出的問題,主動響應(yīng)則是系統(tǒng)要為阻塞或影響進程而采取反擊行動。理想的情況下,系統(tǒng)的這一部分應(yīng)該具有豐富的響應(yīng)功能特性,并且這些響應(yīng)特性在針對安全管理小組中的每一位成員進行裁剪后,能夠為他們提供服務(wù)。

8.1.4攻擊檢測系統(tǒng)的部署攻擊檢測系統(tǒng)中事件產(chǎn)生器所收集信息的來源可以是主機、網(wǎng)絡(luò)和其他安全產(chǎn)品。如果信息源僅為單個主機,則這種攻擊檢測系統(tǒng)往往直接運行于被保護的主機之上;如果信息源來自多個主機或其他地方,則這種攻擊檢測系統(tǒng)一般由多個傳感器和一個控制臺組成,其中傳感器負責對信息進行收集和初步分析,控制臺負責綜合分析、攻擊響應(yīng)和傳感器控制。圖8-2為一典型的“傳感器-控制臺”結(jié)構(gòu)的攻擊檢測系統(tǒng)的部署方案。

圖8-2一個“傳感器-控制臺”結(jié)構(gòu)的攻擊檢測系統(tǒng)部署方案8.1.5攻擊檢測軟件Snort

Snort是一款用C語言開發(fā)的開放源代碼()的跨平臺網(wǎng)絡(luò)入侵檢測系統(tǒng),能夠方便地安裝和配置在網(wǎng)絡(luò)的任何一個節(jié)點上。

Snort有三種工作模式:嗅探器、數(shù)據(jù)包記錄器、網(wǎng)絡(luò)入侵檢測。嗅探器模式僅僅是從網(wǎng)絡(luò)上讀取數(shù)據(jù)包并作為連續(xù)不斷的流顯示在終端上。數(shù)據(jù)包記錄器模式把數(shù)據(jù)包記錄到硬盤上。網(wǎng)絡(luò)入侵檢測模式是最復(fù)雜的,但也是可配置的。

Snort使用基于規(guī)則的模式匹配技術(shù)來實現(xiàn)入侵檢測功能,其規(guī)則文件是一個ASCII文本文件,可以用常用的文本編輯器對其進行編輯。為了能夠快速、準確地進行檢測,Snort將檢測規(guī)則采用鏈表的形式進行組織。Snort的發(fā)現(xiàn)和分析能力取決于規(guī)則庫的容量和更新頻率。

8.1.6網(wǎng)絡(luò)數(shù)據(jù)包的捕獲在共享HUB下的任一臺計算機都能接收到本網(wǎng)段的所有數(shù)據(jù)包,這需要將網(wǎng)卡的工作模式設(shè)置為混雜模式,使之可以接收目標地址不是自己的MAC地址的數(shù)據(jù)包。在UNIX系統(tǒng)中可以用Libpcap包捕獲的函數(shù)庫直接與內(nèi)核驅(qū)動交互操作,實現(xiàn)對網(wǎng)絡(luò)數(shù)據(jù)包的捕獲。在Win32平臺上可以使用Winpcap,通過VxD虛擬設(shè)備驅(qū)動程序?qū)崿F(xiàn)網(wǎng)絡(luò)數(shù)據(jù)捕獲的功能。在交換HUB下的計算機只能接收發(fā)往自己的數(shù)據(jù)包和廣播包,交換HUB下數(shù)據(jù)包的捕獲需要在HUB處通過鏡像方法實現(xiàn)。8.2攻擊檢測方法攻擊檢測的基本假設(shè)是攻擊者的攻擊行為是能夠被感知的。根據(jù)檢測策略可以把攻擊檢測方法分為基于異常行為特征的攻擊檢測和基于正常行為特征的攻擊檢測?;诋惓P袨樘卣鞯墓魴z測:假定攻擊行為能夠表達為一種模式或特征,對已知的攻擊行為建立模式庫,把檢測到的行為與已知的攻擊模式相對比,如果匹配成功,則認為有攻擊行為發(fā)生。這種方法的的優(yōu)點是誤報率低,缺點是不能發(fā)現(xiàn)新型攻擊。

模式匹配、專家系統(tǒng)(規(guī)則推理)和狀態(tài)轉(zhuǎn)化分析是上述方法的具體實現(xiàn)形式。專家系統(tǒng)(規(guī)則推理)通過將安全專家的知識表示成If-Then結(jié)構(gòu)的規(guī)則(if部分表示構(gòu)成攻擊所要求的條件,then部分表示發(fā)現(xiàn)攻擊后采取的相應(yīng)措施)形成專家知識庫,然后運用推理算法檢測攻擊行為。

狀態(tài)轉(zhuǎn)化分析將攻擊過程看做一個行為序列,該行為序列導(dǎo)致系統(tǒng)從初始狀態(tài)轉(zhuǎn)入被攻擊狀態(tài)。分析時,需要針對每一種攻擊方法確定系統(tǒng)的初始狀態(tài)和被攻擊狀態(tài),以及導(dǎo)致狀態(tài)轉(zhuǎn)化的轉(zhuǎn)化條件(導(dǎo)致系統(tǒng)進入被攻擊狀態(tài)必須執(zhí)行的操作/特征事件),然后用狀態(tài)轉(zhuǎn)化圖來表示每一個狀態(tài)和特征事件。狀態(tài)轉(zhuǎn)化分析不適合分析過分復(fù)雜的事件,也不能檢測與系統(tǒng)狀態(tài)無關(guān)的攻擊行為。

基于正常行為特征的攻擊檢測:假定能夠建立正常行為的模式或特征,可以把與正常行為模式不同的行為視為攻擊或潛在的攻擊行為。比如通過統(tǒng)計分析可以將異常的網(wǎng)絡(luò)流量視為可疑行為。這種方法的優(yōu)點是能夠發(fā)現(xiàn)新型攻擊,其關(guān)鍵是對異常的判定尺度和特征的選擇,如果選擇不佳,會導(dǎo)致誤報率的升高。上述方法中,正常行為的模式或特征一般通過統(tǒng)計分析的方法來描述,通過對過去一段時間內(nèi)合法用戶行為數(shù)據(jù)的收集,然后采用門限法或輪廓法來實現(xiàn)對攻擊行為的判定。常用的統(tǒng)計分析模型有均值與標準差模型、多元模型和馬爾可夫過程模型。另外系統(tǒng)靜態(tài)配置分析、神經(jīng)網(wǎng)絡(luò)和數(shù)據(jù)挖掘也可用于攻擊檢測。例8-1是系統(tǒng)靜態(tài)配置分析中文件完整性檢驗的實現(xiàn)辦法。例8-1文件完整性檢驗。通常攻擊者攻擊時都會對一些文件進行改動,因此采用對文件系統(tǒng)進行完整性檢驗的攻擊檢測方式能夠檢測出對文件內(nèi)容的非法更改,從而判定攻擊。文件完整性檢驗首先將需要校驗的文件內(nèi)容進行散列計算,將生成的散列值與文件完整性數(shù)據(jù)庫中存儲的預(yù)先計算好的文件內(nèi)容的散列值進行比較,不一致則說明文件被非法更改,并可判定發(fā)生攻擊。8.3攻擊容忍與可生存系統(tǒng)8.3.1攻擊容忍隨著技術(shù)的發(fā)展,新的信息攻擊形式不斷涌現(xiàn),系統(tǒng)完全杜絕攻擊事件的發(fā)生是不太可能的。攻擊容忍的理念應(yīng)運而生且應(yīng)用前景非常廣闊。攻擊容忍的概念最早出見于1985年,這一理念改變傳統(tǒng)的以隔離、防御、檢測、響應(yīng)和恢復(fù)為主的思想,假定系統(tǒng)中存在一些受攻擊點,在系統(tǒng)可容忍的限度內(nèi),這些受攻擊點并不會對系統(tǒng)的服務(wù)造成災(zāi)難性影響,系統(tǒng)本身仍能保證最低質(zhì)量的服務(wù)。要實現(xiàn)上述目的,攻擊容忍系統(tǒng)必須具備自我診斷能力、故障隔離能力和還原重構(gòu)能力。攻擊容忍的研究主要圍繞實現(xiàn)上述能力展開。攻擊容忍系統(tǒng)的主要實現(xiàn)機制有攻擊檢測機制、攻擊遏制機制、安全通信機制、錯誤處理機制和數(shù)據(jù)轉(zhuǎn)移機制。攻擊遏制是通過結(jié)構(gòu)重構(gòu)和冗余等方式達到進一步阻止攻擊的目的;錯誤處理機制主要通過錯誤屏蔽的方法檢測和恢復(fù)系統(tǒng)發(fā)生失效后的錯誤。8.3.2可生存系統(tǒng)可生存性研究源于美國國防部有關(guān)信息拯救計劃,目的是開發(fā)具有遭到攻擊后能“劫后余生”的網(wǎng)絡(luò)及信息系統(tǒng)。在信息安全領(lǐng)域,可生存性概念可以認為是攻擊容忍概念的延拓。網(wǎng)絡(luò)的可生存性包括兩個方面:①在網(wǎng)絡(luò)出現(xiàn)故障的情況下,通過各種恢復(fù)技術(shù),來維持或恢復(fù)網(wǎng)絡(luò)服務(wù)使之達到可接受程度的性能;②網(wǎng)絡(luò)通過使用預(yù)防技術(shù),減輕故障或預(yù)防服務(wù)失效??缮嫦到y(tǒng)的關(guān)鍵特征是在面對攻擊、故障、意外事故時完成基本服務(wù)的能力。在完成基本服務(wù)的同時系統(tǒng)仍然保持其基本安全屬性,如數(shù)據(jù)完整性、機密性等其他屬性??缮嫘缘拈_發(fā)思路和設(shè)計模式主要有兩種:一種是基于入侵使用情景的重新設(shè)計;另一種是基于攻擊容忍技術(shù)的可生存系統(tǒng)設(shè)計方法。也就是說:①必須開發(fā)具有新的安全特征的高度可信賴的聯(lián)網(wǎng)技術(shù)和計算機系統(tǒng);②遺留系統(tǒng)的安全改造與增強需要采用包裝軟件的方法進行改造,而不是進行內(nèi)核改造;③采用所謂的蜜罐技術(shù)來欺騙敵人;④充分利用軟件代理技術(shù),實現(xiàn)新的入侵監(jiān)測系統(tǒng)。思考題

(1)攻擊檢測作用體現(xiàn)在哪些方面?

(2)基于主機的攻擊檢測數(shù)據(jù)源主要有哪些?

(3)代表性的攻擊檢測技術(shù)有哪些?

(4)什么是分布式攻擊檢測系統(tǒng)?

(5)攻擊容忍的含義是什么,這種系統(tǒng)采用的技術(shù)有哪些?

(6)什么是可生存網(wǎng)絡(luò)和系統(tǒng)?實驗8攻擊檢測一、實驗?zāi)康?/p>

(1)理解并掌握攻擊檢測的基本流程。

(2)掌握注冊表、系統(tǒng)日志的查看與修改方法。

(3)了解各類掃描器的實現(xiàn)原理。

(4)了解各種攻擊檢測軟件的使用方法。二、實驗準備

(1)理論上講,只要堅持跟蹤以下信息,幾乎所有網(wǎng)絡(luò)攻擊都能被檢測出來:①網(wǎng)絡(luò)擁擠程度和網(wǎng)絡(luò)連接;②Web日志與系統(tǒng)安全日志;③成功與失敗的登錄嘗試;④當前運行的應(yīng)用程序和服務(wù);⑤定時運行的應(yīng)用程序或啟動時運行的應(yīng)用程序;⑥對文件系統(tǒng)所做的改變。

(2)系統(tǒng)目錄下的Win.ini是一種特殊的初始化文件,主要為系統(tǒng)提供初始化服務(wù),在系統(tǒng)啟動時將被系統(tǒng)所訪問,并根據(jù)其所保存的參數(shù)值對系統(tǒng)進行配置。Windows專門提供了三個API函數(shù)GetProfileInt()、GetProfileString()和WriteProfileString()對Win.ini進行讀寫訪問。

(3)系統(tǒng)注冊表是一個多層次的結(jié)構(gòu)樹,在樹的根部共有六個預(yù)定義鍵,Windows提供了近30個API函數(shù)用于訪問系統(tǒng)注冊表,這些API函數(shù)提供了對注冊表進行鍵的創(chuàng)建、打開、關(guān)閉、刪除和對鍵值的設(shè)置、刪除等功能。通常對注冊表比較常用的操作不外乎對鍵或鍵值的添加、刪除與修改等,而注冊表中的各個鍵均有其特定的作用,通過對這些鍵的訪問和對鍵值的適當修改可以獲取到幾乎所有的同系統(tǒng)有關(guān)的軟、硬件信息并可對系統(tǒng)性能進行優(yōu)化。

(4)掃描在網(wǎng)絡(luò)監(jiān)控中具有重要的地位。通過對網(wǎng)絡(luò)的掃描,管理員可以及時了解網(wǎng)絡(luò)的安全配置和運行的應(yīng)用服務(wù)、發(fā)現(xiàn)安全漏洞、客觀評估網(wǎng)絡(luò)風險等級,還可以根據(jù)掃描的結(jié)果修補網(wǎng)絡(luò)安全漏洞和系統(tǒng)中的錯誤配置,有效地阻止攻擊事件的發(fā)生。要求熟悉相關(guān)網(wǎng)絡(luò)掃描原理。

三、實驗內(nèi)容

(1)分析、調(diào)試并運行第三章的例3-2,查看你的系統(tǒng)當前運行的進程。

(2)分析、調(diào)試并運行第三章的例3-2,檢查你的機器是否中了“冰河”病毒。

(3)如下是用C#?編寫的“讀取系統(tǒng)日志”程序,調(diào)試并運行該程序,分析并查看相關(guān)結(jié)果。usingSystem;usingSystem.Diagnostics;usingSystem.Security;usingSystem.Text;namespaceglog{classProgram{staticvoidmain(string[]args){Stringmachine=".";//localmachineConsole.WriteLine("\t\t\tWindowsLogpicker\n\t\t\t\tbyXti9er\n");Console.WriteLine("---------------------------\n");

if(args.Length==1){if(args[0]=="application"||args[0]=="system"||args[0]=="security"){Stringlog=args[0];EventLogaLog=newEventLog(log,machine);EventLogEntryentry;EventLogEntryCollectionentries=aLog.Entries;for(inti=0;i<entries.Count;i++){entry=entries[i];

Console.WriteLine("[Index]\t"+entry.Index+"\n[EventID]\t"+entry.EventID+"\n[TimeWritten]\t"+entry.TimeWritten+"\n[MachineName]\t"+entry.MachineName+"\n[Source]\t"+entry.Source+

"\n[UserName]\t"+entry.UserName+"\n[Message]\t"+entry.Message+"\n---------------------------------\n");}}else{Console.WriteLine("Usage:glog.exesystem(application,security)\n");}}else{Console.WriteLine("Usage:glog.exesystem(application,security)\n");}}}}

(4)編寫程序,讀取注冊表中HKEY_current_user\Software\Microsoft\Windows\CurrentVersion\run下的信息,檢查你機器的自動加載程序。

(5)根據(jù)下述要求和參考代碼編寫多線程TCPConnect()掃描程序,給出運行結(jié)果。每臺計算機都有65535個端口,對一個IP地址段內(nèi)多臺主機的大量端口進行掃描是比較耗時的。為了提高掃描速率,端口掃描程序的實現(xiàn)也應(yīng)采用多線程技術(shù)。各個線程分別調(diào)用Connect()函數(shù)連接同一主機的不同端口,并試圖在開放端口接收相關(guān)服務(wù)信息。每個線程的工作流程如下:①創(chuàng)建一個類型為sock-stream的流套接字。②調(diào)用connect()進行連接,根據(jù)返回值判斷端口是否開放。③對于開放端口調(diào)用select()判斷套接字狀態(tài)。④對于來自開放端口的可讀信息調(diào)用Receive()接收信息并顯示結(jié)果。⑤關(guān)閉套接字。相關(guān)的參考代碼如下:#include<winsock2.h>#include<windows.h>#include<stdio.h>#pragmacomment(lib,"ws2_32.lib")//defineglobalvariablelongMaxThread=100;HANDLEhSemaphore;longPreviousCount=0;intTargetIP;DWORDWINAPIportscan(LPVOIDlp);intmain(intargc,char**argv){HANDLEhThread=NULL;WSADATAwsd;inti;DWORDdwThreadID;if(argc!=4){printf("\n%s,scanport\n""usage:%s<targetIP><StartPort><StopPort>\n",argv[0],argv[0]);return1;}__try{//loadwinsocklibraryif(WSAStartup(MAKEWORD(2,2),&wsd)!=0){printf("Failedtoloadwinsocklibrary!Error%d\n",GetLastError());__leave;}//createsemaphorehSemaphore=CreateSemaphore(NULL,MaxThread,MaxThread,NULL);if(hSemaphore==NULL){printf("Failedtocreatesemaphore!Error%d\n",GetLastError());__leave;}//gettargetIPandtargetportrangeTargetIP=inet_addr(argv[1]);intTargetHost=ntohl(TargetIP);intStartPort=atoi(argv[2]);intStopPort=atoi(argv[3]);//createthreadtoscanfor(i=StartPort;i<=StopPort;i++){hThread=CreateThread(NULL,0,portscan,(LPVOID)i,0,&dwThreadID);if(hThread==NULL){printf("Failetocreatethread!Error%d\n",GetLastError());break;}Sleep(10);CloseHandle(hThread);WaitForSingleObject(hSemaphore,INFINITE);}//waitforallthreaddonewhile(1){WaitForSingleObject(hSemaphore,INFINITE);if(!ReleaseSemaphore(hSemaphore,1,&PreviousCount)){printf("\nmain()ReleaseSemaphorefailed:%d",GetLastError());Sleep(5000);break;}if(PreviousCount=(MaxThread-1)){printf("\n^o^scanend!\n");break;}Sleep(500);}}//tryend__fin

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論