現(xiàn)如今云計(jì)算的發(fā)展日益迅速,其安全問題也越來越受到重視,本發(fā)明針對(duì)云環(huán)境下的文件安全問題,提出了一種云環(huán)境下基于petri網(wǎng)的文件隱私泄露檢測方法,對(duì)文件進(jìn)行有效監(jiān)督與保護(hù)。本發(fā)明屬于信息安全領(lǐng)域。
背景技術(shù):
:“云計(jì)算”這個(gè)詞離我們的生活越來越近,在云計(jì)算時(shí)代,用戶的數(shù)據(jù)往往會(huì)統(tǒng)一存儲(chǔ)在云服務(wù)器端,以便能夠更快的獲得所需的云服務(wù)。但隨著云計(jì)算這種模式的發(fā)展,各種各樣的安全問題也凸顯出來,用戶存儲(chǔ)在云端的數(shù)據(jù)被泄露的事件時(shí)有發(fā)生?,F(xiàn)如今云計(jì)算平臺(tái)都是分布式計(jì)算和分布式存儲(chǔ)的方式,例如hadoop與spark平臺(tái),這樣的計(jì)算方式與存儲(chǔ)方式體現(xiàn)了云計(jì)算快速高效的特點(diǎn),也在一定程度上保證了數(shù)據(jù)的安全。分布式文件存儲(chǔ)系統(tǒng)是將數(shù)據(jù)存儲(chǔ)在各個(gè)節(jié)點(diǎn)上,擁有了本地文件系統(tǒng)所無法具備的數(shù)據(jù)備份和數(shù)據(jù)安全的優(yōu)點(diǎn)。但云環(huán)境下用戶對(duì)文件的操作是否合理?是否有隱私泄露的行為?成為了云環(huán)境下亟待解決的問題。由于云計(jì)算還在發(fā)展成熟之中,還沒有一些較為成熟的方法防止以上的問題的發(fā)生,通常只能通過認(rèn)證協(xié)議來辨別用戶身份,而不能發(fā)現(xiàn)用戶的一些不正當(dāng)操作。技術(shù)實(shí)現(xiàn)要素:本發(fā)明的目的是提出一種在云環(huán)境下文件惡意操作的檢測方法,利用云環(huán)境下系統(tǒng)的文件日志信息,對(duì)分布式文件系統(tǒng)的操作行為進(jìn)行建模分析,系統(tǒng)日志記錄了系統(tǒng)中產(chǎn)生的各種各樣的問題,我們可以利用日志信息來分析一些問題產(chǎn)生的原因,找到解決方法。同樣云計(jì)算平臺(tái)工作也會(huì)產(chǎn)生大量的日志信息,利用這些日志信息我們能從中找到一些用戶的行為,及時(shí)發(fā)現(xiàn)并制止不正當(dāng)?shù)男袨?。為了?shí)現(xiàn)上述技術(shù)目的,本發(fā)明采用如下的技術(shù)方案:一種云環(huán)境下基于petri網(wǎng)的文件隱私泄露檢測方法,當(dāng)計(jì)算機(jī)程序啟動(dòng)之后,監(jiān)控程序就會(huì)開始監(jiān)控在主節(jié)點(diǎn)之下生成的審計(jì)日志文件,一旦有新的日志信息生成,監(jiān)控程序會(huì)立即去獲取此信息,此時(shí),檢測程序被激活;所述檢測程序包括以下步驟,首先,通過命令在服務(wù)器端開啟hdfs的審計(jì)日志系統(tǒng),審計(jì)日志內(nèi)容包含了分布式文件的一些操作行為,然后,從審計(jì)日志中收集關(guān)鍵行為信息,將日志文件中的信息分類,依據(jù)關(guān)鍵詞過濾,獲取想要的信息,最后,整理得到的關(guān)鍵行為信息,建立行為分析模型;行為分析模型的分析是檢測程序的第二部分,當(dāng)程序檢測到有關(guān)鍵行為信息輸入時(shí),petri網(wǎng)分析模型程序就開始分析工作,首先產(chǎn)生空的令牌,去接收整理之后的數(shù)據(jù)信息,此時(shí),令牌包含了一組對(duì)文件操作的關(guān)鍵行為信息;令牌經(jīng)由各個(gè)不同變遷的判斷,觸發(fā)其中的某幾個(gè)變遷,最終令牌會(huì)到達(dá)某個(gè)判決位置,對(duì)令牌所經(jīng)過的路徑進(jìn)行判決,做出響應(yīng),最后,令牌被回收。其具體步驟如下:步驟1:監(jiān)控程序?qū)崟r(shí)監(jiān)控日志信息的變更,當(dāng)日志信息變更,監(jiān)控程序會(huì)立即做出響應(yīng),獲取產(chǎn)生的日志信息;步驟2:用過濾算法將獲取的日志信息進(jìn)行過濾刪選,得到與檢測相關(guān)的數(shù)據(jù)信息;步驟3:整理過濾得到的數(shù)據(jù)信息,將其變形為<時(shí)間,用戶名及ip地址,操作行為,文件路徑,文件去向>的指定格式,并將上述的操作行為進(jìn)行分類:第一類、不能引起文件隱私信息泄露:創(chuàng)建文件、查看列表狀態(tài);第二類、不恰當(dāng)?shù)奈募僮鞯粫?huì)造成隱私信息泄露:刪除文件、重命名文件、設(shè)置文件權(quán)限;第三類、可能造成文件隱私信息泄露:打開文件;第四類、會(huì)造成文件隱私信息泄露:獲取文件內(nèi)容、復(fù)制文件、移動(dòng)文件;結(jié)合泄露路徑完整性原則與行為分類標(biāo)準(zhǔn),建立完整的petri網(wǎng)檢測模型;步驟4:激活petri網(wǎng)檢測模型,產(chǎn)生空的令牌,令牌經(jīng)過模型的t1變遷,將被賦予整理之后的日志數(shù)據(jù);步驟5:t2,t3,t4,t5變遷會(huì)同時(shí)對(duì)令牌中的數(shù)據(jù)信息進(jìn)行檢測,當(dāng)滿足自身?xiàng)l件的變遷會(huì)被觸發(fā),令牌會(huì)經(jīng)由此變遷進(jìn)入下一個(gè)位置狀態(tài);步驟6:當(dāng)令牌到達(dá)判決位置時(shí),判決位置會(huì)對(duì)令牌做出響應(yīng);步驟7:響應(yīng)結(jié)束之后,令牌會(huì)進(jìn)入結(jié)束位置并被清零回收。令牌的響應(yīng)規(guī)則如下:步驟6.1:當(dāng)進(jìn)行創(chuàng)建文件/查看列表狀態(tài)操作時(shí),不涉及文件內(nèi)容泄露,此時(shí),判決不給予響應(yīng);步驟6.2:當(dāng)進(jìn)行刪除文件/重命名文件/設(shè)置文件權(quán)限操作時(shí),屬于不正當(dāng)操作,會(huì)被計(jì)入用戶行為數(shù)據(jù)庫,累計(jì)一定次數(shù)之后,做出警示響應(yīng);步驟6.3:當(dāng)進(jìn)行打開文件操作時(shí),涉及文件內(nèi)容,有可能泄露文件內(nèi)容,做出警示響應(yīng);步驟6.4:當(dāng)進(jìn)行獲取文件內(nèi)容/復(fù)制文件/移動(dòng)文件操作時(shí),認(rèn)定文件有極大的概率被泄露,此時(shí)記錄用戶信息進(jìn)入行為數(shù)據(jù)庫,并警示用戶對(duì)文件的操作行為,返回用戶操作的時(shí)間、ip地址、文件去向信息。本發(fā)明一種云環(huán)境下基于petri網(wǎng)的文件隱私泄露檢測方法的有益效果是:本發(fā)明一種基于petri網(wǎng)的文件隱私信息泄露檢測方法,利用hdfs的審計(jì)日志系統(tǒng)收集用戶的行為信息。旨在維護(hù)云環(huán)境下用戶文件信息安全,檢測出不恰當(dāng)?shù)奈募僮餍袨?,并給予警示。該方法主要具有以下優(yōu)點(diǎn):1)高效性:檢測方法是以petri網(wǎng)為模型的方法,petri網(wǎng)的并發(fā)性與云計(jì)算的快速并行處理相結(jié)合,能夠高效的檢測出一些不恰當(dāng)?shù)奈募僮餍袨?,并給予警示。2)實(shí)時(shí)性:用來檢測的信息來源于hdfs的審計(jì)日志,審計(jì)日志是系統(tǒng)實(shí)時(shí)更新的,可以實(shí)時(shí)的獲取信息并處理,然后傳遞給模型方法去處理信息得到結(jié)果,做到實(shí)時(shí)監(jiān)控文件操作行為。3)可行性:檢測方法所用到行為信息是由系統(tǒng)日志產(chǎn)生,行為信息具有真實(shí)性,模型檢測的方法也是由代碼產(chǎn)生,無研究人員和用戶的參與,具有很好的可行性。附圖說明圖1是基于petri網(wǎng)完整的檢測模型;圖2是整個(gè)檢測方法工作流程圖。具體實(shí)施方式一種基于petri網(wǎng)的文件隱私信息泄露檢測方法基于以下兩點(diǎn):首先,從日志系統(tǒng)篩選獲取系統(tǒng)中用戶的行為;其次,將得到的行為信息利用petri網(wǎng)進(jìn)行建模分析。利用petri網(wǎng)的特性,可以同時(shí)從多個(gè)方面對(duì)信息進(jìn)行分析,極大的提高了分析的效率。云環(huán)境下對(duì)文件系統(tǒng)的操作檢測可以很好的避免不正當(dāng)行為引起的信息泄露。系統(tǒng)日志的實(shí)時(shí)更新也意味著檢測方法能夠?qū)崟r(shí)對(duì)文件操作進(jìn)行監(jiān)控,對(duì)不正當(dāng)?shù)男袨榻o以警報(bào)提示。日志信息快速準(zhǔn)確的獲取結(jié)合高效的petri網(wǎng)建模分析方法,能夠有效的發(fā)現(xiàn)不正當(dāng)?shù)奈募袨?,并給予警示。本發(fā)明利用petri網(wǎng)建模方法的優(yōu)點(diǎn),能夠快速有效的檢測出對(duì)文件的惡意行為。petri網(wǎng)是一種適合于描述異步的、并發(fā)的計(jì)算機(jī)系統(tǒng)模型,擁有直觀的圖形表達(dá)方式,在軟件設(shè)計(jì),數(shù)據(jù)分析,協(xié)議驗(yàn)證等方面應(yīng)用廣泛。petri網(wǎng)是由位置、變遷、有向弧以及令牌等元素組成。位置用于描述可能的系統(tǒng)局部狀態(tài)(條件或狀況);變遷用于描述修改系統(tǒng)狀態(tài)的事件;有向弧用于描述局部狀態(tài)和事件之間的關(guān)系。petri網(wǎng)同樣擁有一些規(guī)則:有向弧是有方向的,令牌不能反方向流動(dòng);兩個(gè)位置或者變遷之間是不能有弧連接的;位置中可以擁有任意數(shù)量的令牌。當(dāng)令牌經(jīng)過若干個(gè)變遷之后到達(dá)最終位置時(shí),就可依據(jù)令牌中的內(nèi)容來判斷相應(yīng)模型所檢測出來的結(jié)果。綜上,我們可以利用petri網(wǎng)對(duì)文件的操作安全進(jìn)行建模分析。本發(fā)明主要是利用petri網(wǎng)的建模方法對(duì)用戶的文件操作行為進(jìn)行建模分析。petri網(wǎng)的并發(fā)特性能夠同時(shí)依據(jù)不同的標(biāo)準(zhǔn)對(duì)各個(gè)不同的行為進(jìn)行判定。要想分析用戶對(duì)文件的操作行為,就必須從文件系統(tǒng)日志中獲取用戶的行為信息:基于spark平臺(tái)的云環(huán)境使用的是hdfs(hadoopdistributedfilesystem),hdfs與一般的分布式文件系統(tǒng)一樣,將數(shù)據(jù)存儲(chǔ)在不同的節(jié)點(diǎn)之上。在云服務(wù)器上是無法直接查找其所處的位置,必須通過系統(tǒng)的分布式文件日志來獲取其文件行為。首先,通過命令在服務(wù)器端開啟hdfs的審計(jì)日志系統(tǒng),審計(jì)日志內(nèi)容包含了分布式文件的一些操作行為。例如:訪問文件的用戶、時(shí)間、ip地址,對(duì)文件的操作方法,文件的去向等。然后,從審計(jì)日志中收集我們需要的信息,將日志文件中的信息分類,依據(jù)關(guān)鍵詞過濾,獲取想要的信息。最后,整理得到的信息行為,建立行為分析模型。依據(jù)泄露路徑完整性原則來劃分模型判定標(biāo)準(zhǔn):泄露路徑完整性:當(dāng)用戶對(duì)一個(gè)文件進(jìn)行某種操作后,文件被轉(zhuǎn)移到另一條路徑上,則稱文件泄露路徑為完整的,即發(fā)生了信息的泄露;反之,若用戶并沒有轉(zhuǎn)移文件,則稱泄露路徑不完整,即可能發(fā)生信息的泄露。審計(jì)日志里包括的關(guān)鍵信息:訪問的時(shí)間(time)、訪問者的狀態(tài)(allowed)、訪問者的用戶名(ugi)、訪問者的ip地址(ip)、訪問者對(duì)文件的操作行為(cmd)、所訪問的文件的路徑(src)、文件的目的路徑(dst)。從日志信息里面過濾出上述的關(guān)鍵信息,用戶對(duì)文件的操作行為(cmd):打開文件(open),創(chuàng)建文件(create),刪除文件(delete),重命名文件(rename),查看列表狀態(tài)(liststatus),設(shè)置文件權(quán)限(setpermission),獲取文件內(nèi)容(getfileinfo),復(fù)制文件(copy),移動(dòng)文件(move)??梢詫⑸鲜龅男袨檫M(jìn)行分類:1).不能引起文件隱私信息泄露:創(chuàng)建文件(create)、查看列表狀態(tài)(liststatus)。2).不恰當(dāng)?shù)奈募僮鞯粫?huì)造成隱私信息泄露:刪除文件(delete)、重命名文件(rename)、設(shè)置文件權(quán)限(setpermission)。3).可能造成文件隱私信息泄露:打開文件(open)。4).會(huì)造成文件隱私信息泄露:獲取文件內(nèi)容(getfileinfo)、復(fù)制文件(copy)、移動(dòng)文件(move)。結(jié)合泄露路徑完整性原則與行為分類標(biāo)準(zhǔn),可以建立完整的petri網(wǎng)的分析模型。模型主要分為3類:不會(huì)發(fā)生文件隱私信息泄露的行為;可能發(fā)生文件隱私信息泄露的行為;造成文件隱私信息泄露的行為。一、系統(tǒng)結(jié)構(gòu)本發(fā)明在結(jié)構(gòu)上主要分為兩個(gè)部分。云環(huán)境下用戶文件操作行為的獲取和petri網(wǎng)檢測模型的建立。如今云環(huán)境下常用的分布式文件系統(tǒng)是hadoop分布式文件系統(tǒng)(hadoopdistributedfilesystem,hdfs),云服務(wù)器上幾乎所有的文件都是存儲(chǔ)在hdfs上的。用戶的文件操作行為信息是從hdfs的審計(jì)日志上獲得,審計(jì)日志上信息是一條條產(chǎn)生的,產(chǎn)生的每條信息都會(huì)被實(shí)時(shí)的獲取,然后將這條信息處理得到我們需要的格式:<時(shí)間,用戶名及ip地址,操作行為,文件路徑,文件去向>(<time,ugi/ip,cmd,src,dst>)。petri網(wǎng)模型是檢測的主要部分,包含了檢測的標(biāo)準(zhǔn)與方法。petri網(wǎng)模型有4類位置:開始位置(startplace)、中間位置(midplace)、判決位置(judgeplace)、結(jié)束位置(endplace)。用戶對(duì)文件的各種操作在模型中表示引起令牌變化的變遷,每個(gè)變遷表示一類引起相同變化的操作。在文件操作中可以分為4類變化:create/liststatus(不造成文件內(nèi)容泄露);delete/rename/setpermission(不恰當(dāng)操作但沒造成文件內(nèi)容泄露);open(可能造成信息泄露);getfileinfo/copy/move(造成了信息的泄露)。在模型中變遷就是每個(gè)判決關(guān)卡,只有滿足相應(yīng)條件,令牌才被允許通過,到達(dá)下一個(gè)位置狀態(tài)。位置和變遷之間由有向弧連接起來,這樣就組成了一個(gè)完整的petri網(wǎng)模型。最后在判決位置會(huì)對(duì)用戶的行為給以警示信息并記錄進(jìn)入用戶行為數(shù)據(jù)庫。二、方法流程1.開啟審計(jì)日志。在云環(huán)境下通過配置log4j.properties文件開啟hdfs審計(jì)日志,開啟日志記錄之后在主節(jié)點(diǎn)下的hdfs‐audit.log中會(huì)記錄所有用戶對(duì)分布式文件的操作。2.獲取日志信息?!魧?shí)時(shí)的獲取產(chǎn)生的每一條日志信息,將一條完整的信息導(dǎo)出?!魧?dǎo)出的信息進(jìn)行變換過濾,過濾掉我們不需要或不關(guān)心的數(shù)據(jù),變換成為<時(shí)間,用戶名及ip地址,操作行為,文件路徑,文件去向>(<time,ugi/ip,cmd,src,dst>)這樣的格式,以便后續(xù)的操作。3.建立完整的檢測模型?!敉暾膒etri網(wǎng)模型如圖1所示;◆p1中的小黑點(diǎn)表示令牌,令牌格式為<時(shí)間,用戶名及ip地址,操作行為,文件路徑,文件去向>。◆p1表示開始位置;p8是結(jié)束位置;p3、p4、p5、p7這些位置表示判決位置,當(dāng)令牌到達(dá)這些位置時(shí),表示文件進(jìn)行了某種操作,判決位置會(huì)根據(jù)自身的條件作出不同的反應(yīng),若到達(dá)p7位置,則表示文件被移動(dòng)到了某條路徑上,發(fā)生了文件的信息泄露,在p7位置時(shí)就會(huì)根據(jù)令牌內(nèi)容給用戶一個(gè)警示。若到達(dá)的是p3位置,則不會(huì)發(fā)出警示。最后無論經(jīng)過哪個(gè)位置,令牌都會(huì)被清零進(jìn)入p8位置,等待下一輪的檢測。剩下的p2和p6位置表示中間位置。每一個(gè)變遷即每一類操作,如表1所示,表1表示模型中各個(gè)變遷表示的內(nèi)容,不同的操作會(huì)造成不同的結(jié)果,也是對(duì)行為最直接的判斷。變遷內(nèi)容變遷內(nèi)容t1輸入數(shù)據(jù)(給令牌賦值)t5getfileinfo/copy/movet2create/liststatust6dstt3opent7清空令牌內(nèi)容t4delete/rename/setpermission表1表2表示審計(jì)日志中的信息類型。表2為了方便描述,以一個(gè)用戶對(duì)一個(gè)分布式文件進(jìn)行移動(dòng)(move)操作為例。具體的實(shí)施步驟如下:步驟1:數(shù)據(jù)信息<time,user/address,move,path1,path2>,此數(shù)據(jù)信息表示在time時(shí)間時(shí),地址為address的user用戶將path1路徑的文件移動(dòng)到了path2路徑上,將此數(shù)據(jù)信息輸入檢測模型中。步驟2:經(jīng)過變遷t1,令牌被賦予數(shù)據(jù)信息,由于并發(fā)性,變遷t2、t3、t4、t5會(huì)同時(shí)進(jìn)行判斷。步驟3:t5被觸發(fā),令牌由變遷t5進(jìn)入到p6位置,然后經(jīng)由t6進(jìn)入判決位置p7。步驟4:在p7位置,由于令牌中記錄了完整的泄露路徑(由path1到path2),根據(jù)泄露路徑完整性原則,系統(tǒng)會(huì)對(duì)用戶給予一個(gè)警示并記錄,表示發(fā)生了一次文件信息泄露的行為。步驟5:經(jīng)過t7位置,令牌清零,進(jìn)入p8位置,繼續(xù)進(jìn)行下一次的檢測。當(dāng)前第1頁12