999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于JSON的計算機網絡入侵監測規則設計與實現

2022-09-02 01:07:46賈寶林
自動化儀表 2022年8期
關鍵詞:規則特征檢測

賈寶林,連 棟

(上海工業自動化儀表研究院有限公司,中國 上海 200233)

0 引言

隨著網絡技術的迅猛發展,網絡安全問題也越發嚴峻。傳統的防火墻與殺毒軟件已無法滿足日益增長的安全需求。入侵檢測系統是對其他安全工具(如防火墻等)網絡入侵檢測的一種有效彌補方法[1],可以提供多層次、全方位的立體安全防護策略,最大程度地保障網絡安全。

本文提出了一種基于Java Script 對象簡譜(Java Script object notation,JSON)的計算機網絡入侵監測規則設計方法。該方法在通用匹配方法的基礎上,針對性地對各應用協議的具體字段進行特征匹配,使用多種子規則混合匹配的方式,既保證了匹配效率,又有效提高了匹配準確率。

1 入侵檢測系統原理及構成

隨著網絡安全技術的發展,除了防火墻和殺毒系統的防護以外,入侵檢測技術也已成為抵御網絡攻擊的有效方式。入侵檢測系統(intrusion detection system,IDS)被認為是防火墻之后的第二道安全閘門,能夠承接防護和響應的過程,在不影響系統性能的情況下對系統進行監測[2]。入侵檢測系統對計算機系統與網絡中的安全事件檢測的技術主要包括數據采集、分析與結果處理三個功能[3]。

入侵檢測系統主要通過以下步驟來實現功能:①分析和監聽用戶及系統行為活動;②設計系統結構,發現系統的弱點;③識別攻擊行為,并發出警報;④分析統計異常的行為;⑤對數據的完整性進行評估。

入侵檢測的過程有信息收集、分析和處理三個步驟。收集信息是入侵檢測的第一步[4]。對于入侵檢測系統而言,典型的數據收集方式是通過網絡鏈路的端口鏡像或分光設備把正常的網絡通信數據復制一份至檢測系統。系統在獲得數據包后,會進行一系列預處理,包括數據包分析、包重組、協議解析等,然后將處理后的數據進行后續的行為分析。其中,入侵行為分析是入侵檢測的核心。其本質是根據用戶行為的抽象描述和已有的安全策略,使用推理或模式匹配等智能技術判斷用戶的行為是否為入侵行為。

2 基于JSON的規則設計過程

目前,商用入侵檢測系統大多基于規則庫的模型。規則庫的完備程度決定了系統性能的優劣[5],而規則設計更是重中之重。針對傳統的規則庫特征描述文件較為繁雜、可讀性較差、對協議的支持深度不夠的情況,本文提出了一種基于JSON的計算機網絡入侵監測規則設計方法,并從需求分析、數據分析、特征規則設計等方面進行了詳細描述,方便用戶使用和理解該設計方法。

2.1 需求分析

入侵檢測系統中,入侵行為分析是入侵檢測的核心。規則庫描述入侵攻擊事件的特征和相應的響應規則,并控制入侵檢測引擎,是入侵檢測系統能否有效檢測入侵的關鍵[6]。檢測規則的存儲方式以及規則內容的易讀性直接影響著規則獲取能力和規則應用效率,是入侵檢測系統中的基本問題之一。因此,其對入侵檢測系統規則的存儲方式模式、規則庫的構建研究和改進具有重要價值。目前,主流的入侵特征規則主要通過對數據包數據區直接進行模式匹配、規則判斷,或者在通過端口或特征位判斷出協議后,再對指定數據區進行特征匹配。同時,其規則庫中特征描述文件較為煩雜,可讀性較差,且對協議的支持深度不夠,無法滿足在協議日益多樣的情況下對內容進行特征匹配的需求。總體來看,目前主流特征規則庫的設計存在可擴展性弱、智能化低的局限。在這種背景下,進行入侵檢測規則設計時,既要滿足對通用字段的有效匹配,又要滿足各種協議字段內容的精確匹配;同時,還需要兼顧后期的可擴展性,以及復雜邏輯下多種模塊組合匹配的需求。

2.2 數據分析

傳輸控制協議/網際互連協議(trasmission control protocol/Internet protocol,TCP/IP)在一定程度上參考了開放式系統互聯通信通信參考模型(open system interconnection reference model, OSI)的體系結構。TCP/IP協議共有四層,從下到上分別是網絡接入層、網絡層、傳輸層和應用層[7]。應用層的主要協議有電信網絡協議(telecom municationnet work protocol,Telnet)、文件傳輸協議(file transfer protocol, FTP)、簡單郵件傳輸協議(simple mail transfer protocol, SMTP)等,用于接收來自傳輸層的數據或者按不同應用要求與方式將數據傳輸至傳輸層。傳輸層的主要協議有用戶數據報協議(user datagram protocol, UDP)、傳輸控制協議(transmission control protocol, TCP),是使用者使用平臺和計算機信息網內部數據結合的通道,可以實現數據傳輸與數據共享。網絡層的主要協議有網際控制報文協議(internet control message protocol, ICMP)、網際互連協議(internet protocol, IP)、網絡組管理協議(internet group management protocol, IGMP),主要負責網絡中數據包的傳送等。網絡接入層又稱網路接口層或數據鏈路層,主要協議有地址解析協議(address resolution protocol, ARP)、反向地址轉換協議(reverse address resolution protocol, RARP),主要功能是提供鏈路管理錯誤檢測、對不同通信媒介有關信息細節問題進行有效處理等[8]。本規則設計主要針對的是應用層協議解析后的數據,同時通過內置一些固定字段以兼顧數據鏈路層、網絡層、傳輸層等字段內容。

數據包在前置協議解析模塊中統一結構化處理為JSON數據結構體,包含了網絡層、傳輸層等基礎信息和應用層協議數據信息。以超文本傳輸協議(hyper text transfer protocol, HTTP)為例,經結構化處理后的數據結構應包含IP、端口、請求統一資源定位符(uniform resource locator,URL)、主機等字段。HTTP協議示例字段如表1所示。JSON作為一種輕量級數據交換格式,具有良好的延展性和可閱讀性,只要通過指定的鍵值即可完成字段的讀取,可以方便地與特征規則字段進行匹配。

表1 HTTP協議示例字段表

不同的應用協議對應不同的應用場景,同時也會出現不同的匹配需求。如在工控環境下的Modbus協議,在很多情況下并不需要知道操作的具體內容,只要是寫數據即為敏感操作,需要對該操作進行告警。在這種背景下,只需要對功能碼進行匹配即可實現。而一些通用的應用協議(如HTTP等)的應用范圍較廣,進行特征匹配時更在意其字段的內容是否出現攻擊行為等。此時,就需要對其內容作進一步的特征規則匹配。

在特征內容匹配方面,除了常規的字符串比較、模式匹配之外,協議應該還具有進一步的匹配能力,如數據范圍的大小限定、指定數據偏移位置及長度的限定、通用正則匹配的需求以及字段匹配前的預處理功能等。

2.3 特征規則設計

JSON是一種輕量級的數據交換格式,非常易于理解和編寫,且數據格式簡單,易于讀寫、解析[9]。其具有良好的自我描述性,同時還具有較為明確的層級結構。在本文中,特征規則文本設計為JSON格式字符串存儲,在整體結構上分為規則描述特征和規則內容兩個部分。

①規則描述部分作為本條特征的概要信息,指定了本條特征的規則計算方式與應用層協議,主要包含匹配類型、匹配協議、規則表達式這三個字段。規則描述與匹配鍵值如表2所示。匹配類型字段主要規定了當前特征規則匹配方式。本設計中的特征規則設計使用混合匹配方式,此處固定為mixed。匹配協議字段主要用于確保當前特征規則與解析后的應用層協議數據保持一致,避免交叉匹配,降低匹配效率。規則表達式字段構建了具體的子規則值運算邏輯,從規則表達式中提取出對應的子規則名稱與運算邏輯。在進行子規則匹配后,按運算邏輯對匹配結果進行計算,可獲取最終的特征規則匹配結果。

表2 規則描述與匹配鍵值表

規則表達式字段計算使用類似逆波蘭式算法,對已經匹配的子規則值進行邏輯計算,并根據得出的最終結果判斷當前數據是否命中此規則。在規則表達式中共包含兩種類型字符:規則名稱字符,主要用于定義子規則名稱,包含所有字母、數字、下劃線和中劃線;邏輯字符,主要用于各子規則值之間的邏輯運算,包含“&”、“|”、“!”、“(”和“)”。該規則表達式支持以下邏輯操作: 與操作(“&&”);或操作(“||”);非操作(“!”);括號操作(“()”)。在進行邏輯運算時,首先從規則表達式中提取出各子規則名稱,然后根據子規則名稱提取各子規則匹配值,最后對值進行邏輯運算并得出結果。

②在特征規則內容部分定義了當前特征的詳細信息。規則中,各字段與數據包中結構化后的數據字段相同,以方便、快速地建立映射關系。在此部分中,可以包含多個key-value鍵值對。每個key對應的是待匹配的應用層協議字段名稱。通過key,可以直接從JSON結構化協議數據中提取對應內容。同時,為了滿足網絡層、傳輸層協議字段的匹配需要,本設計內置通用字段匹配。其在數據包中的名稱相對固定:內置字段以下劃線“_”為開頭;源IP、源端口、數據流方向、傳輸層協議字段分別以_sip、_sport、_direction、_proto等表示。

當前特征的子規則為key-value鍵值對中的value部分。每個子規則均包含特征值、子規則名稱、匹配方法、匹配選項這四個字段。

特征子規則鍵值如表3所示。

表3 特征子規則鍵值表

規則表達式算法流程如圖1所示。

圖1 規則表達式算法流程圖

特征值字段描述了當前子規則特征的具體內容,可以為數字和字符串2種形式。當特征值字段為數字時,對應的匹配類型固定為“number”,在待匹配值與此字段值相等時即為命中此子規則;當特征值字段為字符串形式時,其具體形式與匹配類型直接相關聯。子規則名稱字段定義了當前特征子規則的名稱,主要用于最后的匹配結果邏輯運算。

本設計內置了多種匹配方法,可適配不同情況下的需求。當匹配方法為“number”時,value值中的數據采用開閉區間的方法進行范圍控制,若value值為“m-n”,則限定范圍是m到n之間;若value值為“m-”,則限定范圍是大于m;若value值為“-n”,則限定范圍是小于n。匹配方法關鍵字定義如表4所示。

表4 匹配方法關鍵字定義表

匹配選項字段作為匹配方法的補充選項,定義了匹配時的相關參數,同時還對待匹配數據進行預處理。通過nocase字段,可以在字符串匹配時不區分大小寫;通過offset和depth字段,可以在匹配時,截取指定位置及長度的數據與特征規則進行比對;通過pre_func內置的預處理方法,可以在匹配前對指定數據進行處理,如URL解碼等操作。

3 樣本分析與驗證測試

①在實際環境中的網絡入侵,很多都是基于HTTP協議的。例如:通用漏洞披露(common vulnerabilities & exposures,CVE)編號為CVE-2013-2567的漏洞,其特征名稱為“Apache Struts 對象導航圖語言(object graph navigution language,OGNL)表達式注入漏洞”。攻擊者通過內部賬戶可以在未授權的情況下訪問用戶不可見的敏感文件。在本攻擊特征中,使用的通信協議為HTTP,通過get請求,發送經過URL編碼的URL地址,在URL中包含“/cgi-bin/mft/”“wireless_mft.cgi”“manufacture.cgi”“username”“password”等固定字段。其中,“wireless_mft.cgi”與“manufacture.cgi”其中之一即可,“username”和“password”兩個字段順序隨機,且中間會出現隨機字符。基于以上特征信息,生成的特征規則匹配類型match_type固定為mixed,匹配協議為HTTP。規則匹配需要同時滿足請求方法為get和符合兩種URL地址中的一個。請求方法特征子規則使用String完全匹配的方式。URL特征子規則使用正則匹配方式。最終結果基于“Method && (Url1 || Url2)”進行混合運算。其中:URL1值應為"/cgi-bin/mft/(wireless_mft.cgi|manufacture.cgi)?.*username.*password.*";URL2值應為"/cgi-bin/mft/(wireless_mft.cgi|manufacture.cgi)?.*password.*username.*"。兩者均使用“url_decode”關鍵字進行預處理解碼。

②在部分工控網絡環境中,只需要對儀器儀表等進行周期性數據監控。此時,一般只需要對數據進行讀操作。寫操作則需要更高的控制權限。當網絡中出現對某臺設備嘗試寫操作時,就需要對此動作進行告警。在這種情況下,對寫的內容并沒有嚴格的限定。根據這種需求,同樣可以通過本文中的特征規則進行實現。以Modbus協議寫單寄存器告警為例,匹配類型match_type固定為mixed,匹配協議為Modbus,子規則特征中只需要對功能碼Func_code字段進行數字比較即可。其中:“寫單寄存器”功能碼值為6;匹配方式為數字匹配;使用關鍵字“number”。

③本文以某地區部門工業安全流量審計平臺為例。入侵檢測引擎是該平臺的重要子模塊。根據用戶需求,在進行特征處理時,不僅要對網絡通用的入侵特征進行告警,還要對工控環境下不安全的寫操作進行告警;同時,在部分工控協議中,需要對指定字段數值范圍進行界限判斷,并在數據異常時產生告警信息。在此背景下,將基于JSON的規則設計應用在協議數據匹配引擎開發中,并將其集成至審計平臺中。系統結構如圖2所示。

圖2 系統結構圖

在平臺正常運行情況下,通過對不同的樣本數據進行回放的方式對規則引擎的可靠性、有效性進行了測試。分別以10 mbit/s、50 mbit/s、100 mbit/s的速度對平臺數據口進行數據包回放,以測試平臺數據處理性能。回放的數據包中混合多種特征包,如Modbus協議敏感操作數據包、部分攻擊特征數據包以及多種應用協議的正常數據交互包等,用于測試異常行為檢測效果。根據測試反饋,其結果完全符合設計要求。

4 結論

本文根據入侵檢測系統在網絡安全需求日益增加的背景,提出了一種基于JSON的計算機網絡入侵監測規則設計方法,通過需求調研、數據分析、架構設計、系統驗證與測試等的完整流程,設計出一套高效、擴展性良好的特征規則設計方法。在通用匹配方法的基礎上,針對性地對各應用協議的具體字段進行特征匹配,使用多種子規則混合匹配的方式,在保證匹配效率的基礎上有效提高了匹配準確率。

本文設計一定程度上可以為入侵檢測系統的攻擊特征庫的設計提供參考,并為設計人員在進行特征匹配規則設計時提供一種可行的思路與方法。同時,在后續研究工作中,應多考慮新型的網絡應用場景,解決如何在實際環境中進行實時性和適應性驗證的問題[10]。

猜你喜歡
規則特征檢測
撐竿跳規則的制定
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
數獨的規則和演變
如何表達“特征”
不忠誠的四個特征
當代陜西(2019年10期)2019-06-03 10:12:04
讓規則不規則
Coco薇(2017年11期)2018-01-03 20:59:57
抓住特征巧觀察
TPP反腐敗規則對我國的啟示
主站蜘蛛池模板: 久久久亚洲国产美女国产盗摄| 久久精品一品道久久精品| 天堂成人在线视频| 中文字幕无线码一区| 全色黄大色大片免费久久老太| 国产一区免费在线观看| 国产黄色视频综合| 国产丝袜91| 暴力调教一区二区三区| 国产成人区在线观看视频| 欧美一区二区精品久久久| 国产综合欧美| 亚洲国产成人久久精品软件| 国产精品护士| 国内嫩模私拍精品视频| 99久久这里只精品麻豆| 一区二区在线视频免费观看| 国产精品主播| 免费日韩在线视频| 欧美一区国产| av一区二区三区高清久久| 97久久免费视频| 亚洲一区二区成人| 中文字幕欧美日韩| 全午夜免费一级毛片| 日韩欧美国产另类| 不卡视频国产| 国产黄在线观看| 日韩大片免费观看视频播放| 国产一区二区三区精品欧美日韩| 国产精品精品视频| 成人另类稀缺在线观看| 免费高清a毛片| 亚洲bt欧美bt精品| 日韩大乳视频中文字幕| 国产特一级毛片| 国产免费人成视频网| 日韩福利在线观看| 国产亚洲精久久久久久无码AV| 视频一本大道香蕉久在线播放| 91精品国产丝袜| 亚洲久悠悠色悠在线播放| 久久一日本道色综合久久| 日韩一二三区视频精品| 亚洲国产理论片在线播放| 欧美成人免费| 国产人人乐人人爱| 国产在线小视频| 一级福利视频| 免费A∨中文乱码专区| av在线手机播放| 综合天天色| 四虎精品免费久久| 亚洲国产AV无码综合原创| 日本三区视频| 一本无码在线观看| 亚洲中文精品久久久久久不卡| 色综合成人| 国产波多野结衣中文在线播放| 国产精品亚洲αv天堂无码| 91久久国产成人免费观看| 国产91丝袜在线观看| 日日拍夜夜操| 人妻出轨无码中文一区二区| 性视频久久| 高h视频在线| 国产剧情无码视频在线观看| 免费毛片视频| jizz国产在线| 国产青榴视频在线观看网站| 成人a免费α片在线视频网站| 999福利激情视频| 精品一区二区无码av| 欧美日韩免费| 狠狠色香婷婷久久亚洲精品| 欧洲免费精品视频在线| 无码中文字幕精品推荐| 中文国产成人久久精品小说| 国产微拍精品| 欧美中文字幕在线视频 | 欧美亚洲欧美| 国产麻豆91网在线看|