收藏查看我的收藏0有用+1已投票0軟件測試方法編輯鎖定本詞條由“科普**”科學百科詞條編寫與應用工作項目審核,。軟件測試是使用人工或自動的手段來運行或測定某個軟件系統(tǒng)的過程,其目的在于檢驗它是否滿足規(guī)定的需求或弄清預期結果與實際結果之間的差別,。[1]從是否關心軟件內部結構和具體實現(xiàn)的角度劃分,,測試方法主要有白盒測試和黑盒測試。白盒測試方法主要有代碼檢査法,、靜態(tài)結構分析法,、靜態(tài)質量度量法、邏輯覆蓋法,、基夲路徑測試法,、域測試、符號測試,、路徑覆蓋和程序變異,。黑盒測試方法主要包括等價類劃分法、邊界值分析法,、錯誤推測法,、因果圖法、判定表驅動法,、正交試驗設計法,、功能圖法、場景法等。[1]從是否執(zhí)行程序的角度劃分,,測試方法又可分為靜態(tài)測試和動態(tài)測試,。靜態(tài)測試包括代碼檢査、靜態(tài)結構分析,、代碼質量度量等,。動態(tài)測試由3部分組成:構造測試實例、執(zhí)行程序和分析程序的輸出結果,。負載測試證實系統(tǒng)最大承載量較宣傳數(shù)據(jù)低18%,。軟件測試服務機構
等價類劃分法將不能窮舉的測試過程進行合理分類,從而保證設計出來的測試用例具有完整性和**性,。有數(shù)據(jù)輸入的地方,,可以使用等價類劃分法。從大量數(shù)據(jù)中挑選少量**數(shù)據(jù)進行測試有效等價類:符合需求規(guī)格說明書規(guī)定的數(shù)據(jù)用來測試功能是否正確實現(xiàn)無效等價類:不合理的輸入數(shù)據(jù)**—用來測試程序是否有強大的異常處理能力(健壯性)使用**少的測試數(shù)據(jù),,達到**好的測試質量邊界值分析法對輸入或輸出的邊界值進行測試的一種黑盒測試方法,。是作為對等價類劃分法的補充,這種情況下,,其測試用例來自等價類的邊界,。邊界點1、邊界是指相對于輸入等價類和輸出等價類而言,,稍高于,、稍低于其邊界值的一些特定情況。2,、邊界點分為上點,、內點和離點。如果是范圍[1,100]需要選擇0,1,2,50,99,100,101如果是個數(shù)**多20個[0,20]需要測0,10,20,,-1,21因果圖分析法用畫圖的方式表達輸入條件和輸出結果之間的關系,。1恒等2與3或4非5互斥1個或者不選6***必須是1個7包含可以多選不能不選8要求如果a=1,則要求b必須是1,,反之如果a=0時,,b的值無所謂9**關系當a=1時,要求b必須為0,;而當a=0時,。陜西第三方軟件檢測中心艾策紡織品檢測實驗室配備氣候老化模擬艙,驗證戶外用品的耐久性與色牢度,。
此外格式結構信息具有明顯的語義信息,,但基于格式結構信息的檢測方法沒有提取決定軟件行為的代碼節(jié)和數(shù)據(jù)節(jié)信息作為特征。某一種類型的特征都從不同的視角反映刻畫了可執(zhí)行文件的一些性質,,字節(jié)碼n-grams,、dll和api信息,、格式結構信息都部分捕捉到了惡意軟件和良性軟件間的可區(qū)分信息,但都存在著一定的局限性,,不能充分,、綜合、整體的表示可執(zhí)行文件的本質,,使得檢測結果準確率不高,、可靠性低、泛化性和魯棒性不佳,。此外,,惡意軟件通常偽造出和良性軟件相似的特征,逃避反**軟件的檢測,。技術實現(xiàn)要素:本發(fā)明實施例的目的在于提供一種基于多模態(tài)深度學習的惡意軟件檢測方法,,以解決現(xiàn)有采用二進制可執(zhí)行文件的單一特征類型進行惡意軟件檢測的檢測方法檢測準確率不高,、檢測可靠性低,、泛化性和魯棒性不佳的問題,以及其難以檢測出偽造良性軟件特征的惡意軟件的問題,。本發(fā)明實施例所采用的技術方案是,,基于多模態(tài)深度學習的惡意軟件檢測方法,按照以下步驟進行:步驟s1,、提取軟件樣本的二進制可執(zhí)行文件的dll和api信息,、pe格式結構信息以及字節(jié)碼n-grams的特征表示,生成軟件樣本的dll和api信息特征視圖,、格式信息特征視圖以及字節(jié)碼n-grams特征視圖,。
對一些質量要求和可靠性要求較高的模塊,一般要滿足所需條件的組合覆蓋或者路徑覆蓋標準,。[2]軟件測試方法集成測試集成測試是軟件測試的第二階段,,在這個階段,通常要對已經嚴格按照程序設計要求和標準組裝起來的模塊同時進行測試,,明確該程序結構組裝的正確性,,發(fā)現(xiàn)和接口有關的問題,比如模塊接口的數(shù)據(jù)是否會在穿越接口時發(fā)生丟失,;各個模塊之間因某種疏忽而產生不利的影響,;將模塊各個子功能組合起來后產生的功能要求達不到預期的功能要求;一些在誤差范圍內且可接受的誤差由于長時間的積累進而到達了不能接受的程度,;數(shù)據(jù)庫因單個模塊發(fā)生錯誤造成自身出現(xiàn)錯誤等等,。同時因集成測試是界于單元測試和系統(tǒng)測試之間的,所以,,集成測試具有承上啟下的作用,。因此有關測試人員必須做好集成測試工作,。在這一階段,一般采用的是白盒和黑盒結合的方法進行測試,,驗證這一階段設計的合理性以及需求功能的實現(xiàn)性,。[2]軟件測試方法系統(tǒng)測試一般情況下,系統(tǒng)測試采用黑盒法來進行測試的,,以此來檢查該系統(tǒng)是否符合軟件需求,。本階段的主要測試內容包括健壯性測試、性能測試,、功能測試,、安裝或反安裝測試、用戶界面測試,、壓力測試,、可靠性及安全性測試等。用戶體驗測評中界面交互評分低于同類產品均值15.6%,。
3)pe可選頭部有效尺寸的值不正確,,(4)節(jié)之間的“間縫”,(5)可疑的代碼重定向,,(6)可疑的代碼節(jié)名稱,,(7)可疑的頭部***,(8)來自,,(9)導入地址表被修改,,(10)多個pe頭部,(11)可疑的重定位信息,,(12)把節(jié)裝入到vmm的地址空間,,(13)可選頭部的sizeofcode域取值不正確,(14)含有可疑標志,。存在明顯的統(tǒng)計差異的格式結構特征包括:(1)無證書表,;(2)調試數(shù)據(jù)明顯小于正常文件,(3).text,、.rsrc,、.reloc和.rdata的characteristics屬性異常,(4)資源節(jié)的資源個數(shù)少于正常文件,。生成軟件樣本的字節(jié)碼n-grams特征視圖,,是統(tǒng)計了每個短序列特征的詞頻(termfrequency,tf),,即該短序列特征在軟件樣本中出現(xiàn)的頻率,。先從當前軟件樣本的所有短序列特征中選取詞頻tf**高的多個短序列特征;然后計算選取的每個短序列特征的逆向文件頻率idf與詞頻tf的乘積,,并將其作為選取的每個短序列特征的特征值,,,,表示該短序列特征表示其所在軟件樣本的能力越強;**后在選取的詞頻tf**高的多個短序列特征中選取,,生成字節(jié)碼n-grams特征視圖,。:=tf×idf;tf(termfrequency)是詞頻,,定義如下:其中,,ni,j是短序列特征i在軟件樣本j中出現(xiàn)的次數(shù),∑knk,j指軟件樣本j中所有短序列特征出現(xiàn)的次數(shù)之和,。代碼簽名驗證確認所有組件均經過可信機構認證,。湖南卓碼軟件測評有限公司
企業(yè)數(shù)字化轉型指南:艾策科技的實用建議。軟件測試服務機構
且4個隱含層中間間隔設置有dropout層,。用于輸入合并抽取的高等特征表示的深度神經網絡包含2個隱含層,,其***個隱含層的神經元個數(shù)是64,第二個神經元的隱含層個數(shù)是10,,且2個隱含層中間設置有dropout層,。且所有dropout層的dropout率等于。本次實驗使用了80%的樣本訓練,,20%的樣本驗證,,訓練50個迭代以便于找到較優(yōu)的epoch值,。隨著迭代數(shù)的增加,,中間融合模型的準確率變化曲線如圖17所示,模型的對數(shù)損失變化曲線如圖18所示,。從圖17和圖18可以看出,,當epoch值從0增加到20過程中,模型的訓練準確率和驗證準確率快速提高,,模型的訓練對數(shù)損失和驗證對數(shù)損失快速減少,;當epoch值從30到50的過程中,中間融合模型的訓練準確率和驗證準確率基本保持不變,,訓練對數(shù)損失緩慢下降,;綜合分析圖17和圖18的準確率和對數(shù)損失變化曲線,選取epoch的較優(yōu)值為30,。確定模型的訓練迭代數(shù)為30后,,進行了10折交叉驗證實驗。中間融合模型的10折交叉驗證的準確率是%,,對數(shù)損失是,,混淆矩陣如圖19所示,規(guī)范化后的混淆矩陣如圖20所示,。中間融合模型的roc曲線如圖21所示,,auc值為,,已經非常接近auc的**優(yōu)值1。(7)實驗結果比對為了綜合評估本實施例提出融合方案的綜合性能,。軟件測試服務機構