亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        一種基于Linux的程序行為異常檢測系統(tǒng)的研究與開發(fā)

        2010-08-24 01:46:46涂俊英
        制造業(yè)自動化 2010年15期
        關(guān)鍵詞:數(shù)據(jù)源內(nèi)核調(diào)用

        涂俊英

        TU Jun-ying

        (孝感學(xué)院 計(jì)算機(jī)與信息科學(xué)學(xué)院,孝感 432000)

        0 引言

        入侵檢測技術(shù)針對的對象可以分為兩大類別,分別是異常檢測和誤用檢測,行為控制是異常檢測的核心。目前的行為控制研究分為四個(gè)方面,分別是行為描述、數(shù)據(jù)源選擇、行為匹配、正常行為學(xué)習(xí)。數(shù)據(jù)源的來源一般包括兩個(gè)方面:系統(tǒng)調(diào)用和審計(jì)數(shù)據(jù)。本文所關(guān)注的是出自Wirex的框架結(jié)構(gòu)Linux Security Module(簡稱LSM),該框架結(jié)構(gòu)統(tǒng)一支持Linux內(nèi)核的訪問控制。本文將從LSM中獲得新的數(shù)據(jù)源,作為程序行為建模的數(shù)據(jù),在此基礎(chǔ)上建立基于隱馬爾科夫的程序行為模型,主要目的在于在異常檢測方面降低誤報(bào)率,取得更好的效果。

        1 基于LSM 數(shù)據(jù)源的程序行為異常檢測手段

        1.1 檢測數(shù)據(jù)源的選取

        由于LSM設(shè)計(jì)的初衷即是為了使Linux系統(tǒng)的安全性得到增強(qiáng),而且可以提供大量的程序行為的信息,因此本文選擇其作為建立正常行為輪廓的數(shù)據(jù)源。LSM的優(yōu)勢在于能夠讓各類安全訪問控制模型在Linux下以可加載內(nèi)核模塊來實(shí)現(xiàn)。根據(jù)具體需求的不同,用戶能夠在Linux內(nèi)核中加載適合的安全模塊,使得Linux安全訪問控制機(jī)制的易用性以及靈活性均得到提升。與“系統(tǒng)調(diào)用”對比,LSM在系統(tǒng)調(diào)用或內(nèi)核函數(shù)內(nèi)進(jìn)行截獲點(diǎn)的部署,因而獲得了更加細(xì)的粒度。

        1.2 LSM數(shù)據(jù)源的提取

        LSM自身并不提供具體的安全策略。LSM對安全策略的定義是通過安全模塊的形式,并提供一個(gè)框架結(jié)構(gòu),修改了內(nèi)核。用此框架結(jié)構(gòu)來存放加入了安全策略的內(nèi)核,以根據(jù)策略實(shí)現(xiàn)系統(tǒng)訪問關(guān)鍵的資源前的安全檢查。

        例如,當(dāng)某個(gè)文件被應(yīng)用程序訪問時(shí),首先在內(nèi)核的系統(tǒng)調(diào)用下對inode進(jìn)行查詢,以完成傳統(tǒng)的安全檢查,而當(dāng)此應(yīng)用程序真正要打開該文件前,就會調(diào)用LSM鉤子函數(shù)來進(jìn)行探測。

        使用security_operations結(jié)構(gòu)體來完成對LSM數(shù)據(jù)的提取。該結(jié)構(gòu)體的定義位于security.h中,其實(shí)質(zhì)是一個(gè)hook函數(shù)的指針列表,因此對所有的hook函數(shù)的訪問均可通過這個(gè)結(jié)構(gòu)體進(jìn)行。hook函數(shù)在被調(diào)用的同時(shí),通過其調(diào)用軌跡也就得到了對該程序進(jìn)行監(jiān)控所需的行為特征,系統(tǒng)構(gòu)建一個(gè)叫做security operations的結(jié)構(gòu)體,該結(jié)構(gòu)體對鉤子函數(shù)的調(diào)用序列進(jìn)行詳細(xì)的記錄,將所記錄的數(shù)據(jù)作為數(shù)據(jù)源進(jìn)行異常檢測。

        1.3 隱馬爾可夫模型的建立

        隱馬爾可夫模型認(rèn)為,在正常情況下,系統(tǒng)中的進(jìn)程狀態(tài)是隨機(jī)的。將事件的觀察值序列定義為所獲取的被監(jiān)控程序的LSM消息序列,表示為:O1、O2……OT。隱馬爾可夫模型認(rèn)為,還有一個(gè)狀態(tài)序列隱藏在該觀察值序列后,表示的是程序?qū)嶋H處的狀態(tài),表示為:O1、O2……OT。首先假設(shè)進(jìn)程的狀態(tài)構(gòu)成馬爾可夫鏈,即:P(Qi| Qi-1……Q1)= P(Qi| Qi-1),并且進(jìn)程的狀態(tài)與具體時(shí)間無關(guān),即進(jìn)程具有平穩(wěn)性:P(Qi+1| Qi)=P(Qj+1| Qj),再假設(shè)監(jiān)控的LSM消息序列是輸出獨(dú)立的,由此構(gòu)建出離散化輸出模型(一階隱馬爾可夫)。

        以λ=(N,M,π,A,B)作為離散化輸出模型(隱馬爾可夫模型),對被檢測的程序LSM變化進(jìn)行表示,此LSM消息的集合即構(gòu)成了觀察值集合。A與B分別為狀態(tài)轉(zhuǎn)移概率矩陣與輸出概率矩陣N表示狀態(tài)的個(gè)數(shù),M表示觀察值的個(gè)數(shù),π表示初始狀態(tài)概率矢量。

        隱馬爾可夫模型建立之后,尚需對模型進(jìn)行離線訓(xùn)練。離線訓(xùn)練的內(nèi)容是在先斷開外部網(wǎng)絡(luò)的情況下,對接受檢測的信息系統(tǒng)提取LSM序列,結(jié)合Baum-Welch算法,對輸出概率最大的隱馬爾科夫模型參數(shù)進(jìn)行獲取,最終得到λ=(N,M,π,A,B)的隱馬爾科夫模型,對模型進(jìn)行離線訓(xùn)練的結(jié)果即為λ,其作用在于為下一步的在線檢測提供基礎(chǔ)。

        研究對象為被檢測程序的LSM短序列集。設(shè)置兩個(gè)窗口:內(nèi)窗口和外窗口。內(nèi)窗口大小為k,通過其每次向后滑動一個(gè)LSM序列,將監(jiān)控時(shí)獲取的LSM序列分別進(jìn)行處理,劃分為更短的序列,然后對每個(gè)短序列的具體出現(xiàn)概率進(jìn)行計(jì)算,計(jì)算出來的概率值ε設(shè)定為閾值,這樣只要發(fā)覺計(jì)算出的概率小于閾值ε,則判定系統(tǒng)安全出現(xiàn)異常,提示把異常的短序列數(shù)存儲下來。另外,再定義一個(gè)參數(shù)C來表示外滑動窗口的大小,并定義δ=T/C表示系統(tǒng)的異常程度,即異常的短序列在C個(gè)短序列中的比值。對C個(gè)短序列的異常度計(jì)算完畢之后,外窗口向后滑動一個(gè)短序列,實(shí)現(xiàn)對下一個(gè)異常度的計(jì)算,按照這種方法一直計(jì)算,假如發(fā)生了某一個(gè)異常度大于給定的閾值的情況免責(zé)判定程序出現(xiàn)異常,觸發(fā)報(bào)警。

        2 系統(tǒng)概要設(shè)計(jì)

        2.1 主機(jī)入侵檢測系統(tǒng)框架

        當(dāng)前,來自加州大學(xué)戴維斯分校安全實(shí)驗(yàn)室的公共入侵檢測框架CIDF是較多被使用的結(jié)構(gòu)模型。這種模型用以下幾個(gè)組件對入侵檢測系統(tǒng)進(jìn)行構(gòu)建,分別是:1)用E盒表示的事件產(chǎn)生器;2)用A盒表示的事件分析器;3)用R盒表示的響應(yīng)單元;4)用D盒表示的事件數(shù)據(jù)庫。

        框架的具體操作流程為:事件數(shù)據(jù)被E盒通過探測器進(jìn)行收集,收集到的事件傳送至A盒進(jìn)行處理分析;A、E盒分析之后的數(shù)據(jù)由D盒存儲,此外D盒還提供額外的提供信息;A、E盒中的數(shù)據(jù)被R盒提取出來,并在D盒處產(chǎn)生響應(yīng)。由通用入侵檢測對象和通用入侵規(guī)范語言對A、E、D及R盒之間的通信提供支持。

        2.2 入侵檢測系統(tǒng)總體設(shè)計(jì)

        入侵檢測系統(tǒng)總體設(shè)計(jì)的參照來自CIDF框架,并將整個(gè)入侵檢測系統(tǒng)劃分為以下幾個(gè)主要部分,分別是系統(tǒng)監(jiān)控部分、用戶與內(nèi)核通信部分、隱馬爾科夫事件分析部分以及結(jié)果響應(yīng)與記錄部分。下面的框圖闡釋出各個(gè)主要模塊及其模塊間的交互關(guān)系:

        圖1 入侵檢測系統(tǒng)總體設(shè)計(jì)各個(gè)主要模塊及其模塊間的交互關(guān)系

        從圖1中也可以看出,入侵檢測系統(tǒng)的整體操作過程是提取內(nèi)核空間的LSM序列,向用戶空間發(fā)送,進(jìn)而被用戶空間的隱馬爾科夫事件分析模塊處理和分析。

        3 系統(tǒng)詳細(xì)設(shè)計(jì)

        3.1 LSM監(jiān)控模塊的設(shè)計(jì)

        LSM監(jiān)控模塊主要完成以下功能:1)進(jìn)入內(nèi)核進(jìn)行監(jiān)控,對程序的LSM消息序列進(jìn)行獲取和存儲;2)對LSM消息序列進(jìn)行保存。本文采用了內(nèi)核鏈表中的反包含技術(shù)對內(nèi)核維護(hù)的LSM消息隊(duì)列進(jìn)行設(shè)計(jì)。

        3.2 內(nèi)核與用戶空間通訊模塊設(shè)計(jì)

        雙向數(shù)據(jù)傳輸具體做法是:調(diào)用netlink_kernel_create函數(shù)在LSM監(jiān)控模塊的初始化函數(shù)中創(chuàng)建一個(gè)netlink socket,應(yīng)用程序在用戶空間發(fā)來的請求和數(shù)據(jù)均可通過這個(gè)socket被內(nèi)核程序所獲取。使用標(biāo)準(zhǔn)的socketAPI在用戶空間的應(yīng)用程序創(chuàng)建的netlink socket,可以以一定的時(shí)間粒度,基于這個(gè)socket通過發(fā)送請求消息給內(nèi)核,被內(nèi)核netlink socket接收,對netlink_unicast函數(shù)進(jìn)行調(diào)用來發(fā)送消息。截獲LSM監(jiān)控模塊,并在隊(duì)列中進(jìn)行保存,向用戶空間發(fā)送隊(duì)列中的LSM數(shù)據(jù),以此實(shí)現(xiàn)用戶空間與內(nèi)核空間的通訊。

        3.3 隱馬爾科夫事件分析模塊的設(shè)計(jì)

        圖2顯示了隱馬爾科夫事件分析模塊的程序流程:閾值,則向結(jié)果記錄與響應(yīng)模塊發(fā)送警報(bào),提示程序中出現(xiàn)了異常狀況。因此,檢測模式進(jìn)行異常檢測是通過對從內(nèi)核得到的LSM序列進(jìn)行持續(xù)的處理而實(shí)現(xiàn)的。對于訓(xùn)練模式而言,被監(jiān)控程序的LSM序列來自用戶空間通訊模塊,并寫入設(shè)計(jì)格式的文件,若訓(xùn)練的條件滿足,則結(jié)合Baum-Welch算法來訓(xùn)練該序列,從而獲取隱馬爾科夫模型輸出概率最大的參數(shù)。

        3.4 系統(tǒng)調(diào)用監(jiān)控模塊的設(shè)計(jì)

        為了實(shí)現(xiàn)系統(tǒng)調(diào)用數(shù)據(jù)與LSM數(shù)據(jù)源的直觀的對比,采用syscallMonitor系統(tǒng)調(diào)用監(jiān)控模塊來實(shí)現(xiàn)對服務(wù)程序的系統(tǒng)調(diào)用序列的截獲。具體的實(shí)現(xiàn)原理為:首先對自己的系統(tǒng)調(diào)用進(jìn)行定義,然后替換操作系統(tǒng)中原來的系統(tǒng)調(diào)用。第一步是對要監(jiān)控的系統(tǒng)調(diào)用函數(shù)進(jìn)行定義,第二步是替換操作系統(tǒng)中原來的系統(tǒng)調(diào)用,在module的退出函數(shù)中向sys_call_table中賦值原系統(tǒng)調(diào)用函數(shù)地址,即可實(shí)現(xiàn)。

        圖2 隱馬爾科夫事件分析模塊的程序流程

        該模塊具備兩種不同的工作方式,分別是檢測模式和訓(xùn)練模式:對于檢測模式而言,被監(jiān)控程序的LSM序列來自內(nèi)核空間和用戶空間通訊模塊。此LSM序列存儲在隊(duì)列結(jié)構(gòu)中,為下一步的滑動窗口處理做好準(zhǔn)備。如果發(fā)現(xiàn)異常度超過了

        4 結(jié)束語

        本文基于Linux平臺,闡述了在LSM數(shù)據(jù)源的支持下構(gòu)建隱馬爾可夫模型的檢測方法,并最終實(shí)現(xiàn)了在Linux平臺下的異常檢測原型系統(tǒng)。從而在異常檢測方面降低誤報(bào)率,取得更好的檢測效果。下一步的工作是對異常事件的主動響應(yīng)進(jìn)行研究,提取被監(jiān)控程序的大量LSM信息,同時(shí)監(jiān)控多個(gè)程序,提高其檢測效果和性能。

        [1] 張響亮,王偉,管曉宏.基于隱馬爾可夫模型的程序行為異常檢測[J].西安交通大學(xué)學(xué)報(bào),2005,39(10):1056-1059

        [2] 王偉.多信息源的實(shí)時(shí)入侵檢測方法研究[D].西安,西安交通大學(xué),2005

        猜你喜歡
        數(shù)據(jù)源內(nèi)核調(diào)用
        萬物皆可IP的時(shí)代,我們當(dāng)夯實(shí)的IP內(nèi)核是什么?
        強(qiáng)化『高新』內(nèi)核 打造農(nóng)業(yè)『硅谷』
        核電項(xiàng)目物項(xiàng)調(diào)用管理的應(yīng)用研究
        基于嵌入式Linux內(nèi)核的自恢復(fù)設(shè)計(jì)
        Linux內(nèi)核mmap保護(hù)機(jī)制研究
        LabWindows/CVI下基于ActiveX技術(shù)的Excel調(diào)用
        Web 大數(shù)據(jù)系統(tǒng)數(shù)據(jù)源選擇*
        基于不同網(wǎng)絡(luò)數(shù)據(jù)源的期刊評價(jià)研究
        基于系統(tǒng)調(diào)用的惡意軟件檢測技術(shù)研究
        基于真值發(fā)現(xiàn)的沖突數(shù)據(jù)源質(zhì)量評價(jià)算法
        国产爆乳美女娇喘呻吟久久| 亚洲精品无码永久在线观看你懂的| 国产精品无码久久久久久久久久| 亚洲av无码一区二区二三区下载| 国产精品欧美成人片| 熟女少妇精品一区二区三区| 一区二区和激情视频| 一本一道久久a久久精品综合| 无码国产精品一区二区免| 精品人妻一区二区蜜臀av| 国产成人高清在线观看视频 | 免费无码又黄又爽又刺激| 麻神在线观看免费观看| 中文字幕人妻第一区| 特级毛片a级毛片在线播放www| 精品高清国产乱子伦| 亚洲熟女少妇一区二区三区青久久| 国产强被迫伦姧在线观看无码| 国产午夜福利精品久久2021| 无码流畅无码福利午夜| 日韩免费精品在线观看| 国产无吗一区二区三区在线欢| 在线视频精品免费| 日本成人三级视频网站| 日韩精品在线免费视频| 人妻av乱片av出轨| 黑人巨大精品欧美在线观看| 久久精品蜜桃美女av| 加勒比一本heyzo高清视频| 3344永久在线观看视频| 狠狠亚洲婷婷综合久久久 | 亚洲av福利天堂一区二区三| 欧妇女乱妇女乱视频| 亚洲欧洲AV综合色无码| 一区二区中文字幕在线观看污污 | 伊人影院成人在线观看| 亚洲乱码中文字幕久久孕妇黑人| 成人天堂资源www在线| 亚洲一区二区三区99区| 国产精品一区二区三区自拍| 国产在线视频一区二区三区|