欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于系統(tǒng)調(diào)用的軟件行為評(píng)估方法

文檔序號(hào):9765888閱讀:576來(lái)源:國(guó)知局
一種基于系統(tǒng)調(diào)用的軟件行為評(píng)估方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于計(jì)算機(jī)軟件技術(shù)領(lǐng)域,具體設(shè)及一種基于系統(tǒng)調(diào)用的軟件行為評(píng)估方 法。
【背景技術(shù)】
[0002] 現(xiàn)有的軟件行為評(píng)估模型,依據(jù)其采集系統(tǒng)調(diào)用的方式的不同可W分為如下3類(lèi): 動(dòng)態(tài)模型、靜態(tài)模型和混合模型,運(yùn)=種模型對(duì)應(yīng)的收集系統(tǒng)調(diào)用的方式分別是動(dòng)態(tài),靜態(tài) W及混合。
[0003] 靜態(tài)建模的方法指不對(duì)程序進(jìn)行執(zhí)行,但是直接分析程序的二進(jìn)制代碼或者程序 的源代碼,從分析的結(jié)果里面捜集到所需要的系統(tǒng)調(diào)用等信息,進(jìn)而建立模型。
[0004] 動(dòng)態(tài)建模的方法需要大量的數(shù)據(jù)來(lái)支撐,可W對(duì)程序進(jìn)行大量的正常運(yùn)行,在運(yùn) 行過(guò)程中對(duì)程序的系統(tǒng)調(diào)用進(jìn)行監(jiān)控和記錄,從而生成模型,該模型是依賴外部輸入的。 [000引Dyck模型是第一個(gè)動(dòng)態(tài)和靜態(tài)相結(jié)合的模型,即混合模型,該模型是被Giffin提 出的。該異常檢測(cè)系統(tǒng)會(huì)按照某種特定的規(guī)則對(duì)二進(jìn)制代碼進(jìn)行重新寫(xiě),運(yùn)樣,重寫(xiě)后的二 進(jìn)制可W使生成的模型更加完備。然后運(yùn)行重寫(xiě)后的可執(zhí)行文件,對(duì)運(yùn)行過(guò)程進(jìn)行實(shí)時(shí)的 監(jiān)控,檢測(cè)該程序的行為,然后查看自己建立的模型,看檢測(cè)得到的結(jié)果是否與模型吻合。
[0006] 其中現(xiàn)有的一種模型為隱馬爾科夫模型,通過(guò)建立隱馬爾科夫模型來(lái)對(duì)軟件行為 進(jìn)行評(píng)估。
[0007] 其中隱馬爾科夫模型由5部分組成,分別為:
[0008] 隱含狀態(tài)S:無(wú)法直接觀察得到的狀態(tài),但是運(yùn)些狀態(tài)之間的關(guān)系是滿足馬爾科夫 的性質(zhì)的。
[0009] 可觀測(cè)狀態(tài)0:可W直接觀測(cè)得到的狀態(tài),運(yùn)些狀態(tài)是與W上提到的隱含狀態(tài)相關(guān) 聯(lián)的,雖然關(guān)聯(lián),但是0的個(gè)數(shù)不一定和S的個(gè)數(shù)相同。
[0010] 初始矩陣31:表示在初始時(shí)刻,W上提到的隱含狀態(tài)S的概率矩陣,例如,在時(shí)刻t = 1時(shí),P(Si) =Pi,則此時(shí)JT= [P1,化…化]。
[0011] 隱含狀態(tài)轉(zhuǎn)移矩陣A:是指從一個(gè)狀態(tài)轉(zhuǎn)移到另一個(gè)狀態(tài)的概率矩陣,例如,Au = P (Sj I Si)就表示狀態(tài)Si轉(zhuǎn)移為Sj的概率。
[0012] 觀測(cè)狀態(tài)轉(zhuǎn)移矩陣B:表示在隱含狀態(tài)是某條件下觀測(cè)狀態(tài)為某狀態(tài)的概率,例 如,Bu = P(化I &),表示隱含狀態(tài)&條件下觀測(cè)狀態(tài)為化的概率。
[0013] 評(píng)估問(wèn)題解決的是如果給出了某個(gè)觀測(cè)序列和特定的模型參數(shù),從而計(jì)算出該觀 測(cè)序列在給出的運(yùn)個(gè)模型下出現(xiàn)的概率,該問(wèn)題是異常檢測(cè)的關(guān)鍵問(wèn)題,也就是說(shuō),異常檢 測(cè)就是檢測(cè)給定的觀測(cè)序列,在良性執(zhí)行軟件后形成的馬爾科夫模型中出現(xiàn)的概率,從而 評(píng)估運(yùn)個(gè)概率的大小來(lái)確定被檢測(cè)的運(yùn)個(gè)觀測(cè)序列是不是軟件正常執(zhí)行產(chǎn)生的。向前算法 (forward)是用來(lái)計(jì)算給定觀測(cè)序列在訓(xùn)練形成的馬爾科夫模型下出現(xiàn)的概率PIOlM的算 法。W下是PIOlM的算法:
[0014] 定義向前變量at(i)為:
[0015] at(i)=P{〇i〇2〇3'''〇t,H(t) = SilW
[0016] 上式中,某個(gè)參數(shù)模型A和部分觀測(cè)序列O1O2O3…〇T,并且t時(shí)刻的時(shí)候,狀態(tài)為Si 的幾率??捎眠f歸法解得at(i),其步驟如下:
[0017] 1)將 at(i)初始化:ai(i)= Wibi(Oi)
[0018] 2)遞歸法計(jì)算:而1 (./') = [i>, (0。,-, A 化1),其中如; /=1
[0019] 3)最后計(jì)算:巧 = /=1
[0020] 給定某觀測(cè)序列和某模型參數(shù),從而找到依照某種原則的情況下隱含狀態(tài)。
[0021] 狀態(tài)最優(yōu)的情況,解碼問(wèn)題其實(shí)就是找到隱含狀態(tài)最優(yōu)解的問(wèn)題,解碼問(wèn)題中,常 用維特比,即Viterbi,算法來(lái)尋找答案。
[0022] 給定模型參數(shù)人=(A,B,3t巧的見(jiàn)察序列〇1〇2〇3..價(jià),在運(yùn)里假設(shè)在T時(shí)刻,讓P(Q,01人)的取值 能夠變成最大的狀就的值知,則記p(Q,〇i入}為見(jiàn)I;!品;貫在
[002引在運(yùn)里,定義輔助變量Sw(j): Sw(j) = [maxSt(i )aij]bj(Ot+1)
[0024] 要想找到最優(yōu)的隱含狀態(tài)序列,需要記錄每個(gè)能讓P(Q,〇| A)的取值變成最大的狀 態(tài)值,所W,在運(yùn)里,還需要定義一個(gè)狀態(tài)回溯公式:恥+1( j) =argmaxSt(i)aijbj(〇t+i)
[0025] 如果不知道隱馬爾科夫模型的參數(shù),怎樣設(shè)定模型里面的參數(shù)才能讓給出的觀察 序列的概率實(shí)現(xiàn)最大化的效果,一般采用Baum-WeIch和Reversed Viterbi算法來(lái)找到答 案。
[0026] 首先定義前向變量和后向變量:at(i) = P(〇i〇2'''〇t,qt=Si I A) ;Pt(i ) = P(〇t+ l〇t+2...〇T,Clt = Si I 入);
[0027] 然后給出隱馬爾科夫模型參數(shù)A和觀測(cè)序列0,并且t時(shí)刻的時(shí)候,隱藏狀態(tài)為Si的 幾率大小為:
[0028] 在某隱馬爾科夫模型參數(shù)和某觀察序列的條件下,t運(yùn)個(gè)時(shí)刻是狀態(tài)Si,與此同 時(shí),t+1運(yùn)個(gè)時(shí)刻是狀態(tài)Sj的概率大小記為W下值:Ct (i , j)-p (qt-Si, qt+1-Sj I 0,入)
[0029] W上定義的兩個(gè)概率變量也存在一定關(guān)系:^媽= £《〇'J)。 ?/=1
[0030] 現(xiàn)有的隱馬爾科夫模型在生成模型時(shí),通常把所有的系統(tǒng)調(diào)用當(dāng)做可能的觀察 值,系統(tǒng)調(diào)用序列當(dāng)做觀察值序列,軟件的安全狀態(tài)和不安全狀態(tài)作為隱馬爾可夫模型中 的兩個(gè)隱藏狀態(tài),由于系統(tǒng)調(diào)用本身數(shù)量眾多,加之對(duì)軟件的一個(gè)操作有可能又很多系統(tǒng) 調(diào)用序列組成,所W生成模型的時(shí)間消耗較大,效率較低;同時(shí),僅靠隱馬爾科夫模型對(duì)軟 件行為評(píng)估,最終得到的評(píng)估結(jié)果準(zhǔn)確率有所偏差。在傳統(tǒng)的軟件行為動(dòng)態(tài)分析建模的方 法中采用的軟件系統(tǒng)調(diào)用序列與訓(xùn)練得到的軟件系統(tǒng)調(diào)用序列知識(shí)庫(kù)進(jìn)行比對(duì)從而發(fā)現(xiàn) 軟件此次行為異常的方法效率較低。

【發(fā)明內(nèi)容】

[0031] 有鑒于此,本發(fā)明提供了一種基于系統(tǒng)調(diào)用的軟件行為評(píng)估方法,目的是將隱馬 爾科夫模型對(duì)軟件行為的評(píng)估值與系統(tǒng)調(diào)用監(jiān)測(cè)評(píng)估結(jié)果相結(jié)合對(duì)軟件行為進(jìn)行評(píng)估,得 到更加完善和準(zhǔn)確的軟件行為的評(píng)估結(jié)果。
[0032] 為了達(dá)到上述目的,本發(fā)明的技術(shù)方案包括如下步驟:
[0033] 步驟1、對(duì)軟件執(zhí)行進(jìn)行監(jiān)控,跟蹤軟件運(yùn)行軌跡,并從中提取出軟件運(yùn)行時(shí)的系 統(tǒng)調(diào)用信息、模塊入口地址和函數(shù)調(diào)用返回地址。
[0034] 步驟2、根據(jù)模塊入口地址和系統(tǒng)調(diào)用函數(shù)返回地址計(jì)算出相對(duì)內(nèi)存偏移量;利用 系統(tǒng)調(diào)用信息和相對(duì)內(nèi)存偏移量形成的二元組和確認(rèn)知識(shí)庫(kù)中的標(biāo)準(zhǔn)二元組進(jìn)行對(duì)比,得 到一個(gè)評(píng)估值,該評(píng)估值作為系統(tǒng)調(diào)用監(jiān)測(cè)評(píng)估結(jié)果;確認(rèn)知識(shí)庫(kù)為由在軟件正常運(yùn)行過(guò) 程中形成的系統(tǒng)調(diào)用信息和相對(duì)內(nèi)存偏移量的二元組組成的集合。
[0035] 步驟3通過(guò)隱馬爾科夫模型評(píng)估得到的在正常的軟件行為的模型下此次軟件運(yùn)行 出現(xiàn)的概率,作為模型評(píng)估結(jié)果,將系統(tǒng)調(diào)用監(jiān)測(cè)評(píng)估結(jié)果和模型評(píng)估結(jié)果相結(jié)合作為軟 件行為最終評(píng)估結(jié)果。
[0036] 進(jìn)一步地,利用系統(tǒng)調(diào)用信息和相對(duì)內(nèi)存偏移量形成的二元組和確認(rèn)知識(shí)庫(kù)中的 標(biāo)準(zhǔn)二元組進(jìn)行對(duì)比,設(shè)定評(píng)估值初始為0,若系統(tǒng)調(diào)用信息或者相對(duì)內(nèi)存偏移量與確認(rèn) 知識(shí)庫(kù)中的每一項(xiàng)標(biāo)準(zhǔn)二元組不同,則該軟件的評(píng)估值減1,若系統(tǒng)調(diào)用信息和相對(duì)內(nèi)存偏 移量與確認(rèn)知識(shí)庫(kù)中的其中一項(xiàng)標(biāo)準(zhǔn)二元組相同,則該軟件的評(píng)估值加1。
[0037] 進(jìn)一步地,系統(tǒng)調(diào)用信息中包括系統(tǒng)調(diào)用序列,則通過(guò)隱馬爾科夫模型評(píng)估時(shí),對(duì) 系統(tǒng)調(diào)用序列進(jìn)行簡(jiǎn)化后輸入到隱馬爾科夫模型中,其中系統(tǒng)調(diào)用序列的簡(jiǎn)化過(guò)程如下:
[0038] 1)從系統(tǒng)調(diào)用序列中提取出長(zhǎng)度為1的序列組成序列集。
[0039] 2)若序列集中長(zhǎng)度為1的序列不少于2個(gè),則在序列集中任意選取兩個(gè)長(zhǎng)度為1的 序列組成長(zhǎng)度為2的序列,判斷長(zhǎng)度為2的序列的概率是否大于組成該長(zhǎng)度為2的序列的任 意一個(gè)長(zhǎng)度為1的序列概率的a倍,若是則將該長(zhǎng)度為2的序列加入序列集中,否則舍棄該長(zhǎng) 度為2的序列;若組成長(zhǎng)度為2的序列的一個(gè)長(zhǎng)度為1的序列的概率與該長(zhǎng)度為2的序列的概 率相等,則將該長(zhǎng)度化的序列從序列集中刪除;a為預(yù)設(shè)值。
[0040] 3)若序列集中長(zhǎng)度為2
當(dāng)前第1頁(yè)1 2 3 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
怀集县| 顺义区| 上犹县| 筠连县| 五台县| 监利县| 罗甸县| 闽侯县| 万盛区| 兴城市| 林州市| 贵溪市| 左权县| 岐山县| 汾西县| 陵川县| 资兴市| 积石山| 东兰县| 涿州市| 瑞安市| 井陉县| 静乐县| 阿瓦提县| 龙泉市| 吉安县| 凤翔县| 新昌县| 高雄县| 沾益县| 克东县| 关岭| 尼勒克县| 民权县| 沿河| 遵义市| 乌审旗| 克东县| 米易县| 桃源县| 嵊泗县|