版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 計(jì)算機(jī)科學(xué)學(xué)院</b></p><p> 入侵檢測技術(shù)期末課程設(shè)計(jì)</p><p> 題 目 snort入侵檢測系統(tǒng) </p><p> 學(xué) 號(hào) xxx </p><p> 班 級(jí) xxx </p>&
2、lt;p> 姓 名 xxx </p><p> 指導(dǎo)教師 xxx </p><p> 成 績 </p><p> 完成時(shí)間 2012 年 6 月</p><p> snort入侵檢測系統(tǒng)</p>
3、<p><b> 一、課程設(shè)計(jì)目的</b></p><p> ?。?)通過實(shí)驗(yàn)深入理解入侵檢測系統(tǒng)的原理和工作方式。</p><p> ?。?)熟悉入侵檢測工具snort在Windows操作系統(tǒng)中的安裝和配置方法</p><p> 二、課程設(shè)計(jì)的原理</p><p><b> 引言</
4、b></p><p> snort是一個(gè)免費(fèi)的基于libpcap的輕量級(jí)網(wǎng)絡(luò)入侵檢測系統(tǒng)。它能夠跨系統(tǒng)平臺(tái)操作,自帶輕量級(jí)的入侵檢測工具可以用于監(jiān)視小型的TCP/IP網(wǎng)絡(luò),在進(jìn)行網(wǎng)絡(luò)監(jiān)視時(shí)snort能夠把網(wǎng)絡(luò)數(shù)據(jù)和規(guī)則進(jìn)行模式匹配,從而檢測出可能的入侵企圖,同時(shí)它也可以使用SPADE插件,使用統(tǒng)計(jì)學(xué)方法對(duì)網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行異常檢測,這些強(qiáng)大的檢測功能為網(wǎng)絡(luò)管理員對(duì)于入侵行為做出適當(dāng)?shù)姆磽籼峁┝俗銐虻男畔ⅰ?lt
5、;/p><p> snort使用一種易于擴(kuò)展的模塊化體系結(jié)構(gòu),開發(fā)人員可以加入自己編寫的模塊來擴(kuò)展snort的功能。這些模塊包括:HTTP解碼插件、TCP數(shù)據(jù)流重組插件、端口掃描檢測插件、FLEXRESP插件以及各種日志輸入插件等。</p><p> 同時(shí)snort還是一個(gè)自由、簡潔、快速、易于擴(kuò)展的入侵檢測系統(tǒng),已經(jīng)被移植到了各種UNIX平臺(tái)和Win98,Win2000上。它也是目前安全
6、領(lǐng)域中,最活躍的開放源碼工程之一。在Snort.org上幾乎每天都提供了最新的規(guī)則庫以供下載,由于snort本身是自由的源碼開放工程所以在使用snort時(shí)除了必要的硬件外軟件上基本上不需要有任何額外的開銷。這相對(duì)于少則上千多則上萬的商業(yè)入侵檢測系統(tǒng)來說,無疑是最好的替代產(chǎn)品之一。</p><p> 本文主要論述了snort的背景知識(shí)以及它的基于規(guī)則的入侵檢測機(jī)制,同時(shí)對(duì)于如何使用也作了概括說明。</p&g
7、t;<p><b> 入侵檢測技術(shù)簡介</b></p><p> 入侵檢測就是一個(gè)監(jiān)視計(jì)算機(jī)系統(tǒng)或者網(wǎng)絡(luò)上發(fā)生的事件,然后對(duì)其進(jìn)行安全分析的過程。它可以用來發(fā)現(xiàn)外部攻擊與合法用戶濫用特權(quán),根據(jù)用戶的歷史行為,基于用戶的當(dāng)前操作,完成對(duì)入侵的檢測,記錄入侵證據(jù),為數(shù)據(jù)恢復(fù)和事故處理提供依據(jù)。入侵檢測系統(tǒng)的原理如圖A所示:</p><p> 圖A入侵檢
8、測的原理圖</p><p> 大多數(shù)的入侵檢測系統(tǒng)都可以被歸入到基于主機(jī)、基于網(wǎng)絡(luò)以及分布式三類?;谥鳈C(jī)的入侵檢測系統(tǒng)是一種早期的IDS設(shè)計(jì)模型,它主要設(shè)計(jì)用來監(jiān)視單一的服務(wù)器,因?yàn)镈NS、Email和web服務(wù)器是多數(shù)網(wǎng)絡(luò)攻擊的目標(biāo),這些攻擊大約占據(jù)全部網(wǎng)絡(luò)攻擊事件的1/3以上,基于主機(jī)的入侵檢測系統(tǒng)就是為了解決這些問題而設(shè)計(jì)的,它能夠監(jiān)視針對(duì)主機(jī)的活動(dòng)(用戶的命令、登錄/退出過程,使用數(shù)據(jù)等等),它的特點(diǎn)
9、就是針對(duì)性好而且,效果明顯,誤報(bào)率低?;诰W(wǎng)絡(luò)的入侵檢測系統(tǒng)是后于基于主機(jī)入侵檢測系統(tǒng)而出現(xiàn)的,它主要用于集中用于監(jiān)控通過網(wǎng)絡(luò)互連的多個(gè)服務(wù)器和客戶機(jī),能夠監(jiān)視網(wǎng)絡(luò)數(shù)據(jù)發(fā)現(xiàn)入侵或者攻擊的蛛絲馬跡。分布式IDS通過分布于各個(gè)節(jié)點(diǎn)的傳感器或者代理對(duì)整個(gè)網(wǎng)絡(luò)和主機(jī)環(huán)境進(jìn)行監(jiān)視,中心監(jiān)視平臺(tái)收集來自各個(gè)節(jié)點(diǎn)的信息監(jiān)視這個(gè)網(wǎng)絡(luò)流動(dòng)的數(shù)據(jù)和入侵企圖。</p><p> 在入侵檢測系統(tǒng)中,系統(tǒng)將用戶的當(dāng)前操作所產(chǎn)生的數(shù)據(jù)同用
10、戶的歷史操作數(shù)據(jù)根據(jù)一定的算法進(jìn)行檢測,從而判斷用戶的當(dāng)前操作是否是入侵行為,然后系統(tǒng)根據(jù)檢測結(jié)果采取相應(yīng)的行動(dòng)。入侵檢測的過程是一個(gè)機(jī)器(檢測工具)與人(黑客)對(duì)抗的決策分析過程,其技術(shù)基礎(chǔ)是基于知識(shí)的智能推理,需要用到人工智能的相關(guān)技術(shù)。</p><p> 各種入侵檢測系統(tǒng)使用的檢測方法可以分為兩類:基于特征碼的檢測方法和異常檢測。使用基于特征碼檢測方法的系統(tǒng)從網(wǎng)絡(luò)獲得數(shù)據(jù),然后從中發(fā)現(xiàn)以知的攻擊特征。例如
11、:在某些URL中包含一些奇怪的Unicode編碼字符就是針對(duì)IIS Unicode缺陷的攻擊特征。此外各種模式匹配技術(shù)的應(yīng)用,提高了這種檢測方法的精確性。使用異常檢測的系統(tǒng)能夠把獲得的數(shù)據(jù)與一個(gè)基準(zhǔn)進(jìn)行比較,檢測這些數(shù)據(jù)是否異常。例如:如果一個(gè)雇員的工作時(shí)間是上9點(diǎn)到下午5點(diǎn),但是在某個(gè)晚上他的計(jì)算機(jī)記錄了他曾經(jīng)在半夜登錄了公司的郵件服務(wù)器,這就是一個(gè)異常事件,需要深入調(diào)查?,F(xiàn)在,大量的統(tǒng)計(jì)學(xué)方法用于這個(gè)領(lǐng)域。</p>&
12、lt;p><b> Snort簡介</b></p><p> snort是一個(gè)基于libpcap的輕量級(jí)網(wǎng)絡(luò)入侵檢測系統(tǒng)。根據(jù)snort.org,輕量級(jí)入侵檢測系統(tǒng)是這樣定義的:首先它能夠方便地安裝和配置在網(wǎng)絡(luò)的任何一個(gè)節(jié)點(diǎn)上,而且不會(huì)對(duì)網(wǎng)絡(luò)運(yùn)行產(chǎn)生太大的影響,同時(shí)輕量級(jí)入侵檢測系統(tǒng)還應(yīng)該具有跨系統(tǒng)平臺(tái)操作,最小的系統(tǒng)要求以及易于部署和配置等特征,并且管理員能夠利用它在短時(shí)間內(nèi)通過
13、修改配置進(jìn)行實(shí)時(shí)的安全響應(yīng)。</p><p> Snort是一個(gè)典型的輕量級(jí)入侵檢測系統(tǒng),首先可以運(yùn)行在多種操作系統(tǒng)平臺(tái),例如UNIX系列和Win9X,Win2000(需要libpcap for Win32的支持),與很多商業(yè)產(chǎn)品相比,它對(duì)操作系統(tǒng)的依賴性比較低。它的分發(fā)源碼文件壓縮包大約只有100KB,在一臺(tái)一般性能的計(jì)算機(jī)上編譯安裝時(shí)大約只需幾分鐘的時(shí)間,另外配置激活也大約只需要十幾分鐘的時(shí)間,安裝以后即便
14、不對(duì)它進(jìn)行維護(hù)也能長時(shí)間穩(wěn)定運(yùn)行。其次用戶可以根據(jù)自己的需要及時(shí)在短時(shí)間內(nèi)調(diào)整檢測策略。就檢測攻擊的種類來說,據(jù)最新的規(guī)則包文件snortrules-stable.tar.gz(Sep 4 02:15:18 2002)snort共有33類,1867條檢測規(guī)則,其中包括對(duì)緩沖區(qū)溢出,端口掃描和CGI攻擊等等。</p><p><b> Snort規(guī)則</b></p><p
15、> Snort是基于規(guī)則的模式匹配的,這種體系結(jié)構(gòu)非常靈活,用戶可以到http://www.snort.org/dl/signatures/下載最新的規(guī)則,在snort.org上幾乎每幾天就會(huì)有新的規(guī)則被更新,同時(shí)用戶也可以自己書寫新的規(guī)則,Snort規(guī)則文件是一個(gè)ASCII文本文件,可以用常用的文本編輯器對(duì)其進(jìn)行編輯。規(guī)則文件的內(nèi)容由以 下幾部分組成:</p><p> 變量定義:在這里定義的變量可以
16、在創(chuàng)建Snort規(guī)則時(shí)使用。</p><p> Snort規(guī)則:在入侵檢測時(shí)起作用的規(guī)則,這些規(guī)則應(yīng)包括了總體的入侵檢測策略。</p><p> 預(yù)處理器:即插件,用來擴(kuò)展Snort的功能。如用portscan來檢測端口掃描。</p><p> 包含文件Include Files:可以包括其它Snort規(guī)則文件。</p><p> 輸
17、出模塊:Snort管理員通過它來指定記錄日志和警告的輸出。當(dāng)Snort調(diào)用告警及日志子系統(tǒng)時(shí)會(huì)執(zhí)行輸出模塊。</p><p> 規(guī)則具體的書寫不再做說明,如果想想進(jìn)行更進(jìn)一步了解可以到snort.org的文檔中心去下載snort的官方文檔《Snort Users Manual》中的Writing Snort Rules章節(jié)(其鏈接是http://www.snort.org/docs/writing_rules/
18、chap2.html#tth_chAp2)。</p><p> Snort與tcpdump的比較</p><p> 如果用盡量簡單的話來定義tcpdump,就是:Dump the traffic on a network.,即根據(jù)使用者的定義對(duì)網(wǎng)絡(luò)上的數(shù)據(jù)包進(jìn)行截獲的包分析工具。作為互聯(lián)網(wǎng)上經(jīng)典的系統(tǒng)管理員必備工具,tcpdump以其強(qiáng)大的功能,靈活的截取策略,成為每個(gè)高級(jí)的系統(tǒng)管理員
19、分析網(wǎng)絡(luò),排查問題等所必備的工具之一。顧名思義,tcpdump可以將網(wǎng)絡(luò)中傳送的數(shù)據(jù)包的“頭”完全截獲下來提供分析。它支持針對(duì)網(wǎng)絡(luò)層、協(xié)議、主機(jī)、網(wǎng)絡(luò)或端口的過濾,并提供and、or、not等邏輯語句來幫助你去掉無用的信息。</p><p> 從表面上看來,Snort與tcpdump是非常相似的,Snort與它的最大的共同之處在于都是基于libpcap的并且支持BPF過濾機(jī)制,所以本質(zhì)上都是調(diào)用的捕獲數(shù)據(jù)包的庫
20、函數(shù),但是snort的目的不僅僅是在于記錄這個(gè)數(shù)據(jù)包而是從安全的角度考慮出發(fā)來解析它,并且tcpdump主要是分析第二層或者第三層的報(bào)文來進(jìn)行網(wǎng)絡(luò)故障診斷,而snort則主要針對(duì)于應(yīng)用層的數(shù)據(jù)進(jìn)行分析從而實(shí)現(xiàn)檢測入侵行為。除此之外,由于tcpdump旨在快速完整地記錄流量,所以它制定了特殊的輸出格式,速度快,但是不易看懂,而snort就提供了更為友好的輸出格式,有利于系統(tǒng)管理員的直接分析。</p><p> s
21、nort的體系結(jié)構(gòu)</p><p> 圖B snort的體系結(jié)構(gòu)</p><p> 數(shù)據(jù)包捕獲和解碼子系統(tǒng)(Decoder)</p><p> 該子系統(tǒng)的功能為捕獲網(wǎng)絡(luò)得傳輸數(shù)據(jù)并按照TCP/IP協(xié)議的不同層次將數(shù)據(jù)包進(jìn)行解析。Snort利用libpcap庫函數(shù)進(jìn)行采集數(shù)據(jù), 該庫函數(shù)可以為應(yīng)用程序提供直接從鏈路層捕獲數(shù)據(jù)包的接口函數(shù)并可以設(shè)置數(shù)據(jù)包的過濾器以
22、來捕獲指定的數(shù)據(jù)。網(wǎng)絡(luò)數(shù)據(jù)采集和解析機(jī)制是整個(gè)NIDS實(shí)現(xiàn)的基礎(chǔ),其中關(guān)鍵的是要保證高速和低的丟包率,這不僅僅取決于軟件的效率還同硬件的處理能力相關(guān)。對(duì)于解析機(jī)制來說,能夠處理數(shù)據(jù)包的類型的多樣性也同樣非常重要,目前,snort可以處理以太網(wǎng),令牌環(huán)以及SLIP等多種類型的包。</p><p> 檢測引擎(the detect engine)</p><p> 檢測引擎是snort的核
23、心,準(zhǔn)確和快速是衡量其性能的重要指標(biāo),前者主要取決于對(duì)入侵行為特征碼的提取的精確性和規(guī)則撰寫的簡潔實(shí)用性,由于網(wǎng)絡(luò)入侵檢測系統(tǒng)是被動(dòng)防御的——只能被動(dòng)的檢測流經(jīng)本網(wǎng)絡(luò)的數(shù)據(jù),而不能主動(dòng)發(fā)送數(shù)據(jù)包去探測,所以只有將入侵行為的特征碼歸結(jié)為協(xié)議的不同字段的特征值,通過檢測該特征值來決定入侵行為是否發(fā)生。后者主要取決于引擎的組織結(jié)構(gòu),是否能夠快速地進(jìn)行規(guī)則匹配。 </p><p> 為了能夠快速準(zhǔn)確地進(jìn)行檢測
24、,snort將檢測規(guī)則利用鏈表的形式進(jìn)行組織,分為兩部分:規(guī)則頭和規(guī)則選項(xiàng)。前者是所有規(guī)則共有的包括IP地址、端口號(hào)等,后者根據(jù)不同規(guī)則包括相應(yīng)的字段關(guān)鍵字。下圖C是Snort的創(chuàng)始人Martin Roesch所作的檢測規(guī)則的示意圖。</p><p> 圖C 檢測規(guī)則的結(jié)構(gòu)示意圖</p><p> 當(dāng)進(jìn)行規(guī)則的匹配時(shí),在鏈表的兩個(gè)方向同時(shí)進(jìn)行,檢測引擎只檢測那些在一開始在規(guī)則解析器中設(shè)
25、置好了的規(guī)則選項(xiàng)。當(dāng)檢測引擎檢測到第一個(gè)與被解碼的包相匹配的規(guī)則時(shí),檢測引擎觸發(fā)相應(yīng)的動(dòng)作并返回。</p><p><b> 日志/報(bào)警子系統(tǒng)</b></p><p> snort對(duì)每個(gè)被檢測的數(shù)據(jù)包都定義了如下的三種處理方式:alert(發(fā)送報(bào)警信息),log(記錄該數(shù)據(jù)包)和pass(忽略該數(shù)據(jù)包)。這其實(shí)是具體定義在檢測規(guī)則中的。其具體的完成是在日志/報(bào)警子
26、系統(tǒng)中完成的,日志子系統(tǒng)允許你將包解碼收集到的信息以可讀的格式或以tcpdump格式記錄下來。報(bào)警子系統(tǒng)使其將報(bào)警信息發(fā)送到syslog、flat文件、Unix套接字或數(shù)據(jù)庫中。</p><p><b> 三、課程設(shè)計(jì)任務(wù)</b></p><p> 1、Windows環(huán)境下安裝和配置snort</p><p> (1)、安裝Snort和W
27、incap包</p><p><b> 2.AppServ</b></p><p> ?。?)安裝AppServ</p><p> 啟動(dòng)AppServ安裝文件后,出現(xiàn)如圖所示的設(shè)置服務(wù)器信息界面:</p><p> 在Server Name中輸入服務(wù)器IP地址:localhost:</p><p
28、> Administrator's Email Address 中輸入郵箱地址:1051466395@qq.com</p><p> 監(jiān)聽端口設(shè)為8080</p><p> 點(diǎn)擊next,進(jìn)入下一界面:</p><p> 在出現(xiàn)的界面中輸入密碼(123):</p><p> "Character Sets
29、and Collations"選擇"GB 2312Simplified Chinese",</p><p><b> 如下圖所示:</b></p><p> 然后單擊"Install",進(jìn)入安裝過程,出現(xiàn)下圖:</p><p> 安裝完成后將C:\Appserv\php5目錄下的php.i
30、ni-dist 文件改名為php.Ini,并啟動(dòng)Apache和MySql。</p><p> ?。刂泼姘濉芾怼?wù) 確保Apache和MySql已啟動(dòng))</p><p> 安裝完成后可以查看(MySQL啟動(dòng)如下圖)</p><p> 在瀏覽器中輸入http://localhost :8080 出現(xiàn):</p><p><b>
31、; 表示安裝成功!</b></p><p> (2)測試AppServ</p><p> 首先查看"控制面板"/"管理"/"服務(wù)",確保Apache和MySQL已經(jīng)啟動(dòng),然后,在瀏覽器中輸入http://localhost :8080/phpinfo.php,(下圖)</p><p>
32、可以了解php的一些信息。</p><p> 最后打開瀏覽器,輸入http://localhost :8080/phpMyAdmin/index.php,</p><p> 下圖)輸入用戶名root和密碼,可以瀏覽數(shù)據(jù)庫內(nèi)容</p><p> ?。?)配置AppServ</p><p> 第一步,編輯Apache服務(wù)器配置文件。打開Ap
33、ache2.2\conf文件中的httpd.conf,檢查相應(yīng)的一些值</p><p> 進(jìn)入Apache服務(wù)器配置文件</p><p> 需要檢查一下一些值:</p><p> LoadModule php5_module D:/AppServ\php5\php5apache2_2.dll</p><p> # 'Main&
34、#39; server configuration</p><p><b> #</b></p><p> # The directives in this section set up the values used by the 'main'</p><p> # server, which responds to a
35、ny requests that aren't handled by a</p><p> # <VirtualHost> definition. These values also provide defaults for</p><p> # any <VirtualHost> containers you may define later in
36、the file.</p><p><b> #</b></p><p> # All of these directives may appear inside <VirtualHost> containers,</p><p> # in which case these default settings will be
37、overridden for the</p><p> # virtual host being defined.</p><p><b> #</b></p><p><b> #</b></p><p> # ServerAdmin: Your address, where proble
38、ms with the server should be</p><p> # e-mailed. This address appears on some server-generated pages, such</p><p> # as error documents. e.g. admin@your-domain.com</p><p><b&
39、gt; #</b></p><p> ServerAdmin 1051466395@qq.com</p><p><b> #</b></p><p> # ServerName gives the name and port that the server uses to identify itself.</p>
40、;<p> # This can often be determined automatically, but we recommend you specify</p><p> # it explicitly to prevent problems during startup.</p><p><b> #</b></p><
41、;p> # If your host doesn't have a registered DNS name, enter its IP address here.</p><p><b> #</b></p><p> ServerName localhost:8080</p><p><b> #</b&
42、gt;</p><p> # DocumentRoot: The directory out of which you will serve your</p><p> # documents. By default, all requests are taken from this directory, but</p><p> # symbolic lin
43、ks and aliases may be used to point to other locations.</p><p><b> #</b></p><p> DocumentRoot "D:/AppServ/www"</p><p><b> #</b></p><p
44、> # Each directory to which Apache has access can be configured with respect</p><p> # to which services and features are allowed and/or disabled in that</p><p> # directory (and its subdi
45、rectories). </p><p><b> #</b></p><p> # First, we configure the "default" to be a very restrictive set of </p><p> # features. </p><p><b&g
46、t; #</b></p><p> <Directory /></p><p> Options FollowSymLinks ExecCGI Indexes</p><p> AllowOverride None</p><p> Order deny,allow</p><p>
47、 Deny from all</p><p> Satisfy all</p><p> </Directory></p><p><b> #</b></p><p> # Note that from this point forward you must specifically allow&l
48、t;/p><p> # particular features to be enabled - so if something's not working as</p><p> # you might expect, make sure that you have specifically enabled it</p><p><b> # b
49、elow.</b></p><p><b> #</b></p><p><b> #</b></p><p> # This should be changed to whatever you set DocumentRoot to.</p><p><b> #&l
50、t;/b></p><p> <Directory "D:/AppServ/www"></p><p> 第二步,編輯phpMyAdmin中的關(guān)鍵文件。打開D:\AppServ\www\phpMyAdmin\libraries目錄下的config.default.php文件</p><p> 設(shè)置phpMyadmin的UR
51、L,$cfg['PmaAbsoluteUri'] = 'http://localhost:8080/phpmyadmin/'</p><p> $cfg['blowfish_secret'] = '123'</p><p> $cfg['DefaultLang'] = 'zh-gb2312'
52、</p><p> $cfg['DefaultCharset'] = 'gb2312'</p><p> $cfg['Servers'][$i]['auth_type'] = 'cookie'</p><p> 第三步,配置php.ini。打開C:\WINDOWS|php.
53、ini文件</p><p> 第四步,配置php.ini。打開C:\WINDOWS|php.ini文件。修改后的值如下圖:</p><p> 第五步,對(duì)Mysql進(jìn)行修改。首先需要建立Snort運(yùn)行必需的Snort 庫和Snort_archive庫:</p><p> 創(chuàng)建表schema和event的代碼如下所示:</p><p>
54、CREATE TABLE `schema` ( vseq INT UNSIGNED NOT NULL,</p><p> ctime DATETIME NOT NULL,</p><p> PRIMARY KEY (vseq));</p><p> INSERT INTO `schema` (vseq, ctime) VA
55、LUES ('107', now()); </p><p> CREATE TABLE event ( sid INT UNSIGNED NOT NULL,</p><p> cid INT UNSIGNED NOT NULL,</p><p> signature INT UNSIGNE
56、D NOT NULL, </p><p> timestamp DATETIME NOT NULL,</p><p> PRIMARY KEY (sid,cid),</p><p> INDEX sig (signature),</p><p> INDEX time (timestamp));<
57、/p><p> 執(zhí)行結(jié)果如下圖所示:</p><p> 第六步,使用C:\Snort\schemas目錄下的create_MySQL腳本建立Snort運(yùn)行必需的數(shù)據(jù)表。在此,可以通過MySQL提示符下運(yùn)行SQL語句show tables來檢驗(yàn)配置的正確性</p><p> 其中c:\Snort為Snort的安裝目錄,打開命令提示符,運(yùn)行以下命令:</p>
58、;<p> mysql -D Snort -u root -p < c:\Snort\schemas\create_mysql</p><p> mysql -D Snort_archive -u root -p < c:\Snort\schemas\create_Mysql</p><p> 每次提示輸入root的密碼,輸入密碼即可建立所需要的表。<
59、/p><p> 通過MySQL提示符下運(yùn)行SQL語句show tables來檢驗(yàn)配置的正確性</p><p> 第七步,必須在Appache服務(wù)器主機(jī)上建立ACID和Snort用戶,并且設(shè)置權(quán)限和密碼</p><p> (主要是根據(jù)課本步驟修改代碼)</p><p><b> 代碼如下:</b></p>
60、<p> grant usage on *.* to "acid"@"localhost" identified by "acidtest";</p><p> grant usage on *.* to "snort"@"localhost" identified by "snortte
61、st";</p><p> grant select,insert,update,delete,create on *.* to "snort"@"localhost" identified by "snorttest";</p><p> grant select,insert,update,delete,crea
62、te,alter on snort. * to "acid"@"localhost";</p><p> grant select,insert on snort. * to "snort"@"localhost";</p><p> grant select,insert,update,delete,cr
63、eate,alter on snort_archive. * to "acid"@"localhost";</p><p> set password for "snort"@"locahost"=password('123');</p><p> set password for &quo
64、t;acid"@"locahost"=password('123');</p><p> 在Mysql中運(yùn)行如下:</p><p> 在Appache服務(wù)器主機(jī)上建立ACID和Snort用戶</p><p><b> 設(shè)置權(quán)限和密碼</b></p><p><b&
65、gt; 設(shè)置結(jié)果如圖所示:</b></p><p> ?。?)、安裝Adodb,jpGraph和ACID</p><p> 移動(dòng)文件adodb jpgraph acid 得到: </p><p> Adodb生成目錄:d:\AppServ\php5\adodb</p><p> jpgraph生成目錄:d:\AppS
66、erv\php5\jpgraph</p><p> acid 生成目錄:d:\AppServ\www\acid</p><p> 修改d:\AppServ\www\acid中的 acid-conf.php文件</p><p> $DBlib_path = "d:\AppServ\php5\adodb";</p><p&g
67、t; $alert_dbname = "snort";</p><p> $alert_host = "localhost";</p><p> $alert_port = "3306";</p><p> $alert_user = "acid";&
68、lt;/p><p> $alert_password = "123";</p><p> $archive_dbname = "snort_archive";</p><p> $archive_host = "localhost";</p><p> $archiv
69、e_port = "";</p><p> $archive_user = "acid";</p><p> $archive_password = "123";</p><p> $ChartLib_path = "d:\AppServ\php5\jpggraph\src&
70、quot;;</p><p> 打開acid_conf.php文件修改并保存,結(jié)果如下圖:</p><p> 在mysql命令端輸入如下命令并回車,出現(xiàn)如下所示,表明運(yùn)行成功:</p><p> 最后在瀏覽器中輸入http://localhost:8080/acid/acid-db-setup.php 出現(xiàn)如下界面:</p><p>&
71、lt;b> 說明 安裝成功</b></p><p> ?。?)、配置snort</p><p> 修改d:\snort\etc\snort.conf 主要改絕對(duì)路徑:</p><p><b> 修改前</b></p><p><b> 修改后</b></p>
72、<p> 然后還需要修改引用路徑:</p><p> dynamicpreprocessor directory d:/snort/lib/snort_dynamicpreprocessor/</p><p> dynamicengine d:/snort/lib/snort_dynamicengine/libsf_engine.dll</p><p&
73、gt; 設(shè)置snort 輸出alert 到mysql server</p><p> 1>把“# var HOME_NET 10.1.1.0/24”改成“var HOME_NET 192.168.0.4/24”你自己LAN內(nèi)的地址,把前面的#號(hào)去掉。</p><p> 2>把“var RULE_PATH ../rules”改成“var RULE_PATH /etc/sno
74、rt”</p><p> 3>把“# output database: log, mysql, user=root password=test dbname=db host=localhost”改成“output database: log, mysql, user=root password=123 dbname=snort host=localhost”把前面的#號(hào)去掉。</p><
75、;p> 4>把“# include $RULE_PATH/web-attacks.rules</p><p> # include $RULE_PATH/backdoor.rules</p><p> # include $RULE_PATH/shellcode.rules</p><p> # include $RULE_PATH/policy
76、.rules</p><p> # include $RULE_PATH/porn.rules</p><p> # include $RULE_PATH/info.rules</p><p> # include $RULE_PATH/icmp-info.rules</p><p> #include $RULE_PATH/viru
77、s.rules</p><p> # include $RULE_PATH/chat.rules</p><p> # include $RULE_PATH/multimedia.rules</p><p> # include $RULE_PATH/p2p.rules”前面的#號(hào)刪除。</p><p> 修改完畢后,保存退出。<
78、;/p><p><b> ?。?)、系統(tǒng)測試</b></p><p> 1)、phpMyAdmin測試</p><p> Snort系統(tǒng)全部安裝完以后,用戶將可以使用root、acid、snort3個(gè)賬戶ID登錄phpMyAdmin。這3個(gè)用戶能否順利登陸關(guān)系到整個(gè)snort系統(tǒng)能否順利運(yùn)行,因此必須進(jìn)行檢測。登陸時(shí)先后輸入3個(gè)用戶名和密碼,如
79、圖:</p><p> 如果用戶不慎忘記數(shù)據(jù)庫acid密碼,可以通過程序組中的AppServ組內(nèi)的重置密碼命令恢復(fù)acid的密碼,如圖:</p><p> phpMyAdmin重置密碼界面1</p><p> phpMyAdmin重置密碼界面2</p><p> 2)、命令行界面測試</p><p> 用戶可
80、以使用如下命令測試snort是否正常工作: d:\snort\bin>snort -c</p><p> d:\snort\etc\snort.conf -l "</p><p> d:\snort\log -d -e -X</p><p> 重新啟動(dòng)snort后,經(jīng)過一系列初始化,如果看到“小豬”,就標(biāo)志著snort已經(jīng)正常啟動(dòng)了。<
81、;/p><p> 然后用另外一臺(tái)主機(jī)ping 本機(jī),snort 即可監(jiān)控到如下圖的情況:snort成功捕捉數(shù)據(jù)包,</p><p> 2、Windows下Snort的使用</p><p> IDScenter是一款Windows平臺(tái)下基于Snort的界面工具。它雖然簡化了Snort的的使用,但我們?nèi)匀槐仨氄莆誗nort和網(wǎng)絡(luò)的相關(guān)知識(shí)。他不但具有省去了敲代碼的繁瑣
82、工作,而且提供了管理功能。主要特點(diǎn)有:①支持Snort的2.0,1.9,1.8,1.7。②支持Snort服務(wù)模式。</p><p> ?、跾nort配置向?qū)?,包括設(shè)置Snort變量,配置預(yù)處理插件,輸出插件,指定規(guī)則集。④規(guī)則編輯器,支持Snort2.0的所有規(guī)則選項(xiàng),還可以從文件和web站點(diǎn)導(dǎo)入現(xiàn)存的規(guī)則集⑤監(jiān)視,允許監(jiān)視多達(dá)10報(bào)警文件和MySQL數(shù)據(jù)庫信息。⑥日志回收功能,允許根據(jù)指定的時(shí)間表壓縮和備份日志
83、文件。⑦集成的日志查看器,可查看文件日志,XML日志和HTML日志。</p><p> 安裝snort界面工具IDScenter</p><p> IDScenter界面</p><p><b> 四、設(shè)計(jì)總結(jié)</b></p><p> 入侵檢測已經(jīng)日益成為網(wǎng)絡(luò)安全中不可或缺的一部分,它為網(wǎng)絡(luò)提供了一個(gè)防御層,在
84、這一層中我們可以預(yù)先定義可能的入侵行為以便對(duì)網(wǎng)絡(luò)活動(dòng)進(jìn)行監(jiān)視,當(dāng)發(fā)現(xiàn)在可能的入侵行為時(shí)就會(huì)報(bào)警通知系統(tǒng)管理員?,F(xiàn)在計(jì)算機(jī)安全市場上有許多入侵檢測系統(tǒng),但它們都面臨一個(gè)共同的問題,就是難于配置而且一般價(jià)格不菲,Snort相對(duì)于它們來說在這方面有相當(dāng)大的優(yōu)勢。</p><p> Snort是一個(gè)典型的輕量級(jí)入侵檢測系統(tǒng),首先可以運(yùn)行在多種操作系統(tǒng)平臺(tái),例如UNIX系列和Win9X,Win2000(需要libpcap
85、 for Win32的支持),與很多商業(yè)產(chǎn)品相比,它對(duì)操作系統(tǒng)的依賴性比較低。它的分發(fā)源碼文件壓縮包大約只有100KB,在一臺(tái)一般性能的計(jì)算機(jī)上編譯安裝時(shí)大約只需幾分鐘的時(shí)間,另外配置激活也大約只需要十幾分鐘的時(shí)間,安裝以后即便不對(duì)它進(jìn)行維護(hù)也能長時(shí)間穩(wěn)定運(yùn)行。snort使用一種易于擴(kuò)展的模塊化體系結(jié)構(gòu),開發(fā)人員可以加入自己編寫的模塊來擴(kuò)展snort的功能。這些模塊包括:HTTP解碼插件、TCP數(shù)據(jù)流重組插件、端口掃描檢測插件、FLEX
86、RESP插件以及各種日志輸入插件等。</p><p> 通過這次課程設(shè)計(jì)深入理解了入侵檢測系統(tǒng)的原理和工作方式,熟悉入侵檢測工snort在Windows操作系統(tǒng)中的安裝和配置方法,在整個(gè)設(shè)計(jì)過程中,遇到了很多錯(cuò)誤,進(jìn)過查閱資料最后基本完成了本次課程設(shè)計(jì)。</p><p><b> 參考文獻(xiàn)</b></p><p> Snort分析報(bào)告:L
87、inuxAid.com</p><p> Martin Roesch Snort —Lightweight Intrusion Detection for Networks:Snort.org</p><p> Steven J. Scott Snort Install Manual—Snort,MySQL,Redhat7.2</p><p> 胡昌振,李貴濤
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(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è)計(jì)---基于snort的入侵檢測系統(tǒng)
- 基于snort入侵檢測系統(tǒng)的研究.pdf
- Snort入侵檢測系統(tǒng)的研究和改進(jìn).pdf
- 基于SNORT入侵檢測系統(tǒng)的算法研究.pdf
- Snort入侵檢測系統(tǒng)的研究與改進(jìn).pdf
- 基于Snort的Web入侵檢測系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).pdf
- 基于snort的入侵檢測系統(tǒng)的研究與設(shè)計(jì).pdf
- 基于Snort的入侵檢測系統(tǒng)研究.pdf
- Snort入侵檢測系統(tǒng)的警報(bào)日志分析.pdf
- 基于Snort網(wǎng)絡(luò)入侵檢測系統(tǒng)研究.pdf
- 畢業(yè)論文——網(wǎng)絡(luò)入侵檢測系統(tǒng)(snort)研究
- 入侵檢測系統(tǒng)與SNORT規(guī)則庫研究.pdf
- 基于snort的入侵檢測系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 基于Snort的入侵檢測應(yīng)用系統(tǒng)設(shè)計(jì)與實(shí)施.pdf
- 基于Snort的入侵檢測系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn).pdf
- 基于Snort的入侵檢測系統(tǒng)研究與設(shè)計(jì).pdf
- 基于Snort高速入侵檢測系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 網(wǎng)絡(luò)入侵檢測系統(tǒng)Snort的研究與改進(jìn).pdf
- Snort網(wǎng)絡(luò)入侵檢測系統(tǒng)的研究與改進(jìn).pdf
- 基于Snort的分布式入侵檢測系統(tǒng).pdf
評(píng)論
0/150
提交評(píng)論