Snort規(guī)則的分析
- 期刊名字:三峽大學(xué)學(xué)報(bào)
- 文件大?。?33kb
- 論文作者:丁志芳,李曉秋,王清賢,李梅林
- 作者單位:信息工程大學(xué)信息工程學(xué)院
- 更新時(shí)間:2020-09-25
- 下載次數(shù):次
第24卷第5期二峽大學(xué)學(xué)報(bào)(自然科學(xué)版)VoL21 No.52002年10月J of China Thrce Gorges Univ. (Natural Sciences)(ct. 2002Snort規(guī)則的分析丁志芳李曉秋王清賢李梅林(信息工程大學(xué)信息工程學(xué)院,鄭州450002)摘要:入侵檢測系統(tǒng)是計(jì)算機(jī)網(wǎng)絡(luò)安全系統(tǒng)的一個(gè)重要組成部分,目前國內(nèi)外有許多實(shí)驗(yàn)室和公司在從事入侵檢測系統(tǒng)的研究和開發(fā),并已完成一些原型系統(tǒng)和商業(yè)產(chǎn)品.Snort是國外的一個(gè)開放源代碼的入侵檢測系統(tǒng),文章系統(tǒng)分析Snort規(guī)則的組成,詳細(xì)介紹了各個(gè)部分的含義,并對不同版本之間的差別進(jìn)行了總結(jié)。這對于進(jìn)行入侵檢測系統(tǒng)研究,建立自己的攻擊特征庫都有很大的幫助.關(guān)鍵詞: Snort;規(guī)則; 入侵檢測; 網(wǎng)絡(luò) 安全中圖分類號: TP393. 08文獻(xiàn)標(biāo)識(shí)碼: A文章編號:1007-7081(2002 )05-041904Analysis of Snort RulesDing Zhifang Li Xiaoqiu Wang Qingxian Li Meilin( Information Engineeing Univ. ,Zhengzhou, 450002 ,China)Abstract Intrusion detection system(IDS) is very important for network security. At prcscnt, IDS is beingstudied and developed by tany la boratories and companies.' There are some protot ypes and commercial prod-ucts. Srnorl is an II)S with open source code. This paper systematically analyzes the composition and seman-tics of Snort rules, which may be of great help for crcating signature database.Keywords Snort; rules; intrusion detection; net work securitySnort是由Sourcefire公司Martin. Roesch等人號內(nèi)的內(nèi)容是規(guī)則選項(xiàng).在規(guī)則選項(xiàng)中,位于“:"之前開發(fā)的.個(gè)開放源代碼的入侵檢測系統(tǒng), 由于它的詞稱為選項(xiàng)關(guān)鍵字。規(guī)則選項(xiàng)并不是對每一個(gè)規(guī)速度快、性能好、使用方便、容易管理和配置等優(yōu)則而言都是必需的部分,它們只是用來更好地定義所點(diǎn),使Snort成為世界上用戶最多的產(chǎn)品之一。尤要進(jìn)行的某種處理(記錄、報(bào)警、忽略等)的數(shù)據(jù)包類其足Snort使用一個(gè)簡便的規(guī)則描述語言,這個(gè)規(guī)型,只有當(dāng)規(guī)則中的每一個(gè)元素都為真時(shí),才能觸發(fā)則描述語言不僅靈活而且功能強(qiáng)大. Snort 1.8. 以對應(yīng)的規(guī)則動(dòng)作.前的版本要求-條Snort規(guī)則寫在一行,在現(xiàn)在的版本中,一條規(guī)則可以寫在多行,每行的行尾用反1規(guī)則頭斜線續(xù)接.Snort規(guī)則分成兩部分:規(guī)則頭和規(guī)則選項(xiàng)。規(guī)1.1 規(guī)則行為則頭包含規(guī)則的行為、協(xié)議、源地址、目的地址、子網(wǎng)Snort采用了靈活的插件形式米組織規(guī)則庫,即掩碼、源和目的端口信息。規(guī)則選項(xiàng)包含報(bào)警信息以按照人侵行為的種類分為相應(yīng)的插件,用戶可以根據(jù)及用于確定是否觸發(fā)規(guī)則響應(yīng)動(dòng)作而需要檢查的數(shù)需要選取對應(yīng)的插件進(jìn)行檢測,每一類插件中包括據(jù)包區(qū)域位置信息.了數(shù)10條的檢測規(guī)則,分別代表同一類型的不同人例如:alert tep any any -> 192. 168. 1. 0/2411I ( content:“100 01 86 a5 |”; msg:“mountd ac-中國煤化工為.規(guī)則行為是當(dāng)cess" ;)在這個(gè)例子中,左括號前面是規(guī)則頭.圓括發(fā)現(xiàn)-MYHCNMHG定的屬性時(shí),Snorl收稿日期:2002 05 10作者簡介;丁志芳(1963-),講師.420三峽大學(xué)學(xué)報(bào)(自然科學(xué)版)2002年10月將做什么。在Snort1.8.3版本中,規(guī)則有5種缺省還有一個(gè)否定操作符“!”用于IP地址,這種操作符告的行為:報(bào)警(alert)、記日志(log).忽略(pass)、啟動(dòng)訴Snort系統(tǒng)除了所指定地址之外的任意地址.(activate).動(dòng)態(tài)(dynamic).而在Snortl. 6版本中,以上規(guī)則數(shù)據(jù)包源地址來源于外部網(wǎng),而日標(biāo)地只有前3種行為。址是在內(nèi)部網(wǎng)的Tcp數(shù)據(jù)包.Alert選擇 -個(gè)報(bào)警的方法,然后記日志。也可以規(guī)定IP地址表.在一個(gè)方括號里用一個(gè)Log 記錄該數(shù)據(jù)包。逗號將兩個(gè)IP地址和CIIR塊分開,目前,IP地址Pass忽略該數(shù)據(jù)包.表不包含兩個(gè)地址段之間的地址空間.Activate報(bào)警并開始其他的動(dòng)態(tài)規(guī)則.如:alert tep ! [192. 168. 1.0/24,10. 1. 1. 0/24Dynamic保 留空閑.直到有活動(dòng)規(guī)則激活。然]any->后作為一個(gè)日志規(guī)則行動(dòng).[192. 168. 1.0/24, 10.1.1.0/24] 111 (content:用戶也能定義自己的規(guī)則類型,然后將這種規(guī)則“100 01 86 a5l"; msg:“extennal mounid access";)類型與一個(gè)或多個(gè)輸出插件聯(lián)系起來作為Snort 規(guī)1.4 端口號則的行為.表示端口號的方式有4種方式: Any是一個(gè)通下面的例子是建它一個(gè)規(guī)則類型,這個(gè)規(guī)則類型配符,意味著任何端lI;靜態(tài)端口(Static por!)是用一將記錄tepdump日志.個(gè)單獨(dú)的端口號表示;端口否定(Portnegation)是用Ruletype suspicious一個(gè)否定操作符“!”表示,否定操作符“!”能夠應(yīng)用于除了Any以外的其他幾種端口形式.端口的范圍lype log output(Port range)是用一個(gè)范圍操作符“:”表示,范圍操作log_ tcpdump: suspicious. log符“:”的使用可以有多種形式.如: log tcp any :1024 -> 192. 168. 1. 0/24下面的例子是建立一個(gè)規(guī)則類型,這個(gè)規(guī)則類型500:將記錄syslog日志和-個(gè)MySQl.數(shù)據(jù)庫.記錄源端口小于等于1024.而目標(biāo)端口大于等Ruletype redalert于500的Tep數(shù)據(jù)包.log tcp any any -> 192. 168. 1. 0/24 ! 6000:type alert outpul6010alert_ syslog: LOG_ AUTHLOG_ ALERT記錄源端口任何端口,而目標(biāo)端口大于6000小oulpul database: log, nysql,于等于6010的Tep數(shù)據(jù)包.user = snort dbname = snort host = localhost1.5 方向操作符方向操作符“->”指示數(shù)據(jù)流量的方向,位于1.2協(xié)議方向操作符左邊的IP地址和端口號表示來自源主機(jī),在Snort規(guī)則中的下.個(gè)域是協(xié)議.Snort當(dāng)前的數(shù)據(jù)包流量,位于方向操作符右邊的IP地址和端只分析了4種協(xié)議(TCP,UDP, ICMP和IP)的可口號則指示目的主機(jī).還有雙向操作符“<>”,這個(gè)疑行為。未來的版本可能支持更多的協(xié)議,如:ARP,雙向操作符告訴Snort操作符兩邊的一對IP地址和IGRP, GRE, OSPF, RIP, IPX 等等。端口號既是源主機(jī)的也是目的主機(jī)的。這對于分析1.3 IP地址或記錄源和目的雙方流量是十分合適的,象Telnet規(guī)則頭的下一部分是處理給出的IP地址和端I1或POP3會(huì)話。信息,關(guān)鍵字Any用來定義任意的地址. Snort不支持對規(guī)則文件中的IP地址進(jìn)行主機(jī)名查詢.地址由2規(guī)則選項(xiàng)數(shù)字IP地址和CIDR塊組成. CIDR塊表示網(wǎng)絡(luò)掩碼.一個(gè)CIDR塊掩碼/24表示是一個(gè)C類網(wǎng),/16規(guī)則選項(xiàng)作為檢測時(shí)的重要標(biāo)準(zhǔn)組成了Snorl表示是一個(gè)B類網(wǎng),/32表示是一個(gè)特殊的主機(jī)地人侵中國煤化工點(diǎn)既靈活而且功能強(qiáng)址。如: 192.168.1.0/24將意昧地址塊是從大.|YHCNMHG同行為制定相應(yīng)的檢192.168.1.1到196.168.1.255.使用這個(gè)形式指定地測選項(xiàng)內(nèi)容,它不僅檢測范圍廣,并且定義了檢測到址信息的規(guī)則將在這個(gè)地址區(qū)問內(nèi)檢查對應(yīng)數(shù)據(jù)包攻擊時(shí)該做出什么響應(yīng).所有的Snort 規(guī)則選項(xiàng)之的地址.CI)R川少量字符來表示巨大的地址空問.間用分號“;”分隔,規(guī)則選項(xiàng)關(guān)鍵字與它的參數(shù)問用第24卷第5期丁志芳等Snorr規(guī)則的分析421胃號“:”分隔. Snort1.8.3中有35個(gè)規(guī)則選項(xiàng)關(guān)鍵并以字節(jié)代碼的形式表示. content有3個(gè)輔助關(guān)鍵字:字,而Snort1.6中只有21種規(guī)則選項(xiàng)關(guān)鍵字.下面.offset設(shè)定模式搜索的起始偏移量.談?wù)凷nortl.6規(guī)則選項(xiàng)關(guān)鍵字,其中有3個(gè)關(guān)鍵字.depth從它的搜索區(qū)域開始,設(shè)置內(nèi)容模式匹是作為對檢測到攻擊時(shí)的反應(yīng):配的最大深度.msg在警 報(bào)和數(shù)據(jù)包日志顯示一條消息.. nocase在內(nèi)容匹配時(shí),不區(qū)分大小寫..logto 將數(shù)據(jù)包記錄到一個(gè)用戶指定的文件flags檢測各種TCP的標(biāo)志符。在Snort中有名,而不用標(biāo)準(zhǔn)輸出文件名.9個(gè)標(biāo)志符。它們是F(FIN)、S(SYN)、R(RST)、P. resp 激活的響應(yīng)選項(xiàng)(如切斷連接等) .(PSH)、A( ACK)、U(URG)、2(Reserved bit 2)、1.resp實(shí)現(xiàn)對滿足特定規(guī)則網(wǎng)絡(luò)流量的響應(yīng)動(dòng)(Reserved bit 1) .0(No TCP Flag Set).還有3個(gè)邏作,它能夠主動(dòng)關(guān)閉非法的連接。對于該模式,下面輯操作符用來為給出的標(biāo)志指定匹配的標(biāo)準(zhǔn),即是一些合法的參數(shù).“十”匹配所有的標(biāo)志,“*”匹配任何的標(biāo)志;“!”沒有rst_ _snd 向發(fā)送方發(fā)送TCP一RST數(shù)據(jù)包.標(biāo)志。主要用于非法端口掃描或者其他非法探測主rst_ rev向接受方發(fā)送 TCP-RST數(shù)據(jù)包.機(jī)操作系統(tǒng)類型等.rst_ _all向收發(fā)雙方發(fā)送TCP_ _RST數(shù)據(jù)包.seq檢測試TCP序列號的值。檢測主機(jī)發(fā)送的icmp_ .net向 發(fā)送方發(fā)送.序列號集是否是固定的集合,人侵者可以利用該值ICMP_ NET .UNREACH數(shù)據(jù)包.冒充合法用戶向被入侵者發(fā)送數(shù)據(jù),偽裝正常的通信icmp_ host向 發(fā)送方發(fā)送。以竊取信息或者其他非法活動(dòng).ICMP_ HOST UNREACH數(shù)據(jù)包 .ack檢測TCP確認(rèn)字段的值.NMAPTCPicmp_ port向發(fā)送方發(fā)送.PING攻山會(huì)設(shè)置該項(xiàng)的值為0,從而判斷可能正在ICMP_ PORT_UNREACH數(shù)據(jù)包.用NMAP進(jìn)行非法掃描.icmp_all向發(fā)送方發(fā)送上述所有的ICMP數(shù)據(jù)itype檢測ICMP類型字段的值.除了正常的類包型值外,該選項(xiàng)還可以設(shè)定超出正常范圍的類型值,這個(gè)選項(xiàng)參數(shù)可以結(jié)合起來傳送多個(gè)響應(yīng)信息用于檢測非法的ICMP類型值,因?yàn)檫@些非法值有時(shí)到目的主機(jī),多個(gè)參數(shù)之間用逗號分隔.可用于拒絕服務(wù)攻擊和過載攻擊。如:alert tcp any ay -> 192. 168. 1. 0/24 1524icode檢測ICMP數(shù)據(jù)包的代碼值、它可以用來(flags: S; resp: rst_ all; msg:“Root shell backdoor檢測可疑的網(wǎng)絡(luò)流量.attempt";)session記錄指定會(huì)話的應(yīng)用層信息,記錄在alert udp any any -> 192. 168. 1. 0/24 31 (re-TCP會(huì)話中的會(huì)話數(shù)據(jù).sp: icmp_ port,icmp_ host; Tmnsg: “Hacker's Paradiseicmp. .id測試- -個(gè)ICMP ECHO數(shù)據(jù)包的ID字access attermpt" ;)段值.另外-些規(guī)則選項(xiàng)關(guān)鍵字都是針對協(xié)議中的不同icmp. _seq測試.“個(gè)ICMP ECH0包的ICMP序字段設(shè)置的,針對不同的攻擊行為檢測不同的內(nèi)容:列號的值..tl 測試IP數(shù)據(jù)包的'TTL(time to live)字段ipoption如IP選項(xiàng)出現(xiàn)在一個(gè)數(shù)據(jù)包里,該選的值.該選項(xiàng)只有在精確匹配時(shí)才為真。它主要用項(xiàng)將搜索某一個(gè)特定選項(xiàng),象源路由器等。該選項(xiàng)于對Traceroutes 試探活動(dòng)的檢測.的有效參數(shù)有:id 檢測IP數(shù)據(jù)包分組的ID字段是否等于指rr -記錄路由(Record route)定值,用于檢測黑客的固定攻擊,例如設(shè)置該字段為eol -列表尾(End of list)31337在某些入侵手法中非常普遍.nop -空操作(No op)dsize測試數(shù)據(jù)包負(fù)載的大小是否等于指定的ts -時(shí)間戳(Time Stamp)值.它可以設(shè)定為任意值,可以用大于“>”和小于sec - P安全詵項(xiàng)(IP securily option)“<”號來指示大小范圍.來監(jiān)控可能的緩沖區(qū)溢出.中國煤化工ree rouing). content 在數(shù)據(jù)包中搜索指定的模式。這是最MHC N M H Gurce routing)重要的一個(gè)選項(xiàng),用于在數(shù)據(jù)包的數(shù)據(jù)段中搜索指定sarid -流標(biāo)示( Stream identifier)的內(nèi)容并觸發(fā)響應(yīng)動(dòng)作,可以搜索包含混合的文本和受限和非受限的源路不能同時(shí)出現(xiàn)在一個(gè)規(guī)則二進(jìn)制數(shù)據(jù),二進(jìn)制數(shù)據(jù)位于一對管道符號“1"之間中.422三峽大學(xué)學(xué)報(bào)(自然科學(xué)版)2002年10月.rpe-監(jiān)控RPC服務(wù)中特定應(yīng)川/進(jìn)程調(diào)用的調(diào)之內(nèi)對超過P個(gè)端口發(fā)送UDP數(shù)據(jù)包.端口掃描可用情況,查看RPC請求,并自動(dòng)解析程序、過程、和以是對任一IP地址的多個(gè)端I,也可以是對多個(gè)IP程序版本號信息,當(dāng)所有的3個(gè)變量都匹配時(shí),該選地址的同--端口.Snortl.6版本可以處理單對單和項(xiàng)才表示成功.選項(xiàng)調(diào)用的格式是“程序,過程.版本單對多方式的端口掃描.而現(xiàn)在的版本可以處理分布.號”過程和版本號可用通配符“*”表示,式的端口掃描(多對一或多對多).端口掃描也包括如:alerI tep any any -> 192. 168. 1. 0/24 111單獨(dú)的“隱蔽掃描”數(shù)據(jù)包,比如NULL, FIN,SYN-(rpe: 100000, # ,3; msg:“RPC getport (TCP)";) .FIN,XMAS等.該模塊的參數(shù)有:alert udp any any 一> 192. 168. 1. 0/21 111networktomonitor-端口掃描檢測針對網(wǎng)絡(luò)/(rpc: 100083, *,* ; msg;“RPC ttdb";)CIDR地址塊.numberofports-檢測時(shí)閭間隔內(nèi)的最大端口3預(yù)處理數(shù)目.detection period一端口檢測的時(shí)閭間隔(以秒預(yù)處理程序從Snort版本1.5開始引人,它的引計(jì)).入大大擴(kuò)展了Snort系統(tǒng)功能,使程序員和用戶可以logdir/ filename用于存放警報(bào)信息的目錄/很容易地加人模塊化的插件。其代碼在檢測引擎運(yùn)文件名,警報(bào)同時(shí)寫入標(biāo)準(zhǔn)的警告文件中.行前被調(diào)用,但在數(shù)據(jù)包解碼完畢之后才進(jìn)行調(diào)用.格式:portscan: < network to mnonitor> < number為檢測做鋪墊,從而提高檢測的準(zhǔn)確性和速度.of ports>
-
C4烯烴制丙烯催化劑 2020-09-25
-
煤基聚乙醇酸技術(shù)進(jìn)展 2020-09-25
-
生物質(zhì)能的應(yīng)用工程 2020-09-25
-
我國甲醇工業(yè)現(xiàn)狀 2020-09-25
-
石油化工設(shè)備腐蝕與防護(hù)參考書十本免費(fèi)下載,絕版珍藏 2020-09-25
-
四噴嘴水煤漿氣化爐工業(yè)應(yīng)用情況簡介 2020-09-25
-
Lurgi和ICI低壓甲醇合成工藝比較 2020-09-25
-
甲醇制芳烴研究進(jìn)展 2020-09-25
-
精甲醇及MTO級甲醇精餾工藝技術(shù)進(jìn)展 2020-09-25




