之所以被稱為黑盒測試是因為可以將被測程序看成是一個無法打開的黑盒,而工作人員在不軟件測試方法考慮任何程序內部結構和特性的條件下,根據需求規(guī)格說明書設計測試實例,并檢查程序的功能是否能夠按照規(guī)范說明準確無誤的運行。其主要是對軟件界面和軟件功能進行測試。對于黑盒測試行為必須加以量化才能夠有效的保證軟件的質量。[5](2)白盒測試。其與黑盒測試不同,它主要是借助程序內部的邏輯和相關信息,通過檢測內部動作是否按照設計規(guī)格說明書的設定進行,檢查每一條通路能否正常工作。白盒測試是從程序結構方面出發(fā)對測試用例進行設計。其主要用于檢查各個邏輯結構是否合理,對應的模塊**路徑是否正常以及內部結構是否有效。常用的白盒測試法有控制流分析、數據流分析、路徑分析、程序變異等,其中邏輯覆蓋法是主要的測試方法。[5](3)灰盒測試?;液袦y試則介于黑盒測試和白盒測試之間。灰盒測試除了重視輸出相對于出入的正確性,也看重其內部表現。但是它不可能像白盒測試那樣詳細和完整。它只是簡單的靠一些象征性的現象或標志來判斷其內部的運行情況,因此在內部結果出現錯誤,但輸出結果正確的情況下可以采取灰盒測試方法。因為在此情況下灰盒比白盒**。第三方驗證實際啟動速度較廠商宣稱慢0.7秒。軟件安全測評費
每一種信息的來源或者形式,都可以稱為一種模態(tài)。例如,人有觸覺,聽覺,視覺,嗅覺。多模態(tài)機器學習旨在通過機器學習的方法實現處理和理解多源模態(tài)信息的能力。多模態(tài)學習從1970年代起步,經歷了幾個發(fā)展階段,在2010年后***步入深度學習(deeplearning)階段。在某種意義上,深度學習可以被看作是允許我們“混合和匹配”不同模型以創(chuàng)建復雜的深度多模態(tài)模型。目前,多模態(tài)數據融合主要有三種融合方式:前端融合(early-fusion)即數據水平融合(data-levelfusion)、后端融合(late-fusion)即決策水平融合(decision-levelfusion)以及中間融合(intermediate-fusion)。前端融合將多個**的數據集融合成一個單一的特征向量空間,然后將其用作機器學習算法的輸入,訓練機器學習模型,如圖1所示。由于多模態(tài)數據的前端融合往往無法充分利用多個模態(tài)數據間的互補性,且前端融合的原始數據通常包含大量的冗余信息。因此,多模態(tài)前端融合方法常常與特征提取方法相結合以剔除冗余信息,基于領域經驗從每個模態(tài)中提取更高等別的特征表示,或者應用深度學習算法直接學習特征表示,然后在特性級別上進行融合。后端融合則是將不同模態(tài)數據分別訓練好的分類器輸出決策進行融合,如圖2所示。電網軟件安全評測無障礙測評認定視覺障礙用戶支持功能缺失4項。
步驟s2、將軟件樣本中的類別已知的軟件樣本作為訓練樣本,基于多模態(tài)數據融合方法,將訓練樣本的dll和api信息特征視圖、格式信息特征視圖以及字節(jié)碼n-grams特征視圖輸入深度神經網絡,訓練多模態(tài)深度集成模型;步驟s3、將軟件樣本中的類別未知的軟件樣本作為測試樣本,并將測試樣本的dll和api信息特征視圖、格式信息特征視圖以及字節(jié)碼n-grams特征視圖輸入步驟s2訓練得到的多模態(tài)深度集成模型中,對測試樣本進行檢測并得出檢測結果。進一步的,所述提取軟件樣本的二進制可執(zhí)行文件的dll和api信息的特征表示,是統(tǒng)計當前軟件樣本的導入節(jié)中引用的dll和api;所述提取軟件樣本的二進制可執(zhí)行文件的pe格式結構信息的特征表示,是先對當前軟件樣本的二進制可執(zhí)行文件進行格式結構解析,然后按照格式規(guī)范提取**該軟件樣本的格式結構信息;所述提取軟件樣本的二進制可執(zhí)行文件的字節(jié)碼n-grams的特征表示,是先將當前軟件樣本件的二進制可執(zhí)行文件轉換為十六進制字節(jié)碼序列,然后采用n-grams方法在十六進制字節(jié)碼序列中滑動,產生大量的連續(xù)部分重疊的短序列特征。進一步的,采用3-grams方法在十六進制字節(jié)碼序列中滑動產生連續(xù)部分重疊的短序列特征。進一步的。
先將訓練樣本的dll和api信息特征視圖、格式信息特征視圖以及字節(jié)碼n-grams特征視圖分別輸入至一個深度神經網絡中抽取高等特征表示,然后合并抽取的高等特征表示并將其作為下一個深度神經網絡的輸入進行模型訓練,得到多模態(tài)深度集成模型。進一步的,所述多模態(tài)深度集成模型的隱藏層的***函數采用relu,輸出層的***函數采用sigmoid,中間使用dropout層進行正則化,優(yōu)化器采用adagrad。進一步的,所述訓練得到的多模態(tài)深度集成模型中,用于抽取dll和api信息特征視圖的深度神經網絡包含3個隱含層,且3個隱含層中間間隔設置有dropout層;用于抽取格式信息特征視圖的深度神經網絡包含2個隱含層,且2個隱含層中間設置有dropout層;用于抽取字節(jié)碼n-grams特征視圖的深度神經網絡包含4個隱含層,且4個隱含層中間間隔設置有dropout層;用于輸入合并抽取的高等特征表示的深度神經網絡包含2個隱含層,且2個隱含層中間設置有dropout層;所述dropout層的dropout率均等于。本發(fā)明實施例的有益效果是,提出了一種基于多模態(tài)深度學習的惡意軟件檢測方法,應用了多模態(tài)深度學習方法來融合dll和api、格式結構信息、字節(jié)碼n-grams特征。代碼簽名驗證確認所有組件均經過可信機構認證。
它已被擴展成與軟件生命周期融為一體的一組已定義的活動。測試活動遵循軟件生命周期的V字模型。測試人員在需求分析階段便開始著手制訂測試計劃,并根據用戶或客戶需求建立測試目標,同時設計測試用例并制訂測試通過準則。在集成級上,應成立軟件測試**,提供測試技術培訓,關鍵的測試活動應有相應的測試工具予以支持。在該測試成熟度等級上,沒有正式的評審程序,沒有建立質量過程和產品屬性的測試度量。集成級要實現4個成熟度目標,它們分別是:建立軟件測試**,制訂技術培訓計劃,軟件全壽命周期測試,控制和監(jiān)視測試過程。(I)建立軟件測試**軟件測試的過程及質量對軟件產品質量有直接影響。由于測試往往是在時間緊,壓力大的情況下所完成的一系列復雜的活動,因此應由訓練有素的人員組成測試組。測試組要完成與測試有關的多種活動,包括負責制訂測試計劃,實施測試執(zhí)行,記錄測試結果,制訂與測試有關的標準和測試度量,建立鍘試數據庫,測試重用,測試**以及測試評價等。建立軟件測試**要實現4個子目標:1)建立全**范圍內的測試組,并得到上級管理層的領導和各方面的支持,包括經費支持。2)定義測試組的作用和職責。3)由訓練有素的人員組成測試組。網絡安全新時代:深圳艾策的防御策略解析。軟件測評技術要求
創(chuàng)新光譜分析技術賦能艾策檢測,實現食品藥品中微量有害物質的超痕量檢測。軟件安全測評費
不*可以用于回歸測試,也可以為以后的測試提供參考。[4](8)錯誤不可避免原則。在測試時不能首先假設程序中沒有錯誤。[4]軟件測試方法分類編輯軟件測試方法的分類有很多種,以測試過程中程序執(zhí)行狀態(tài)為依據可分為靜態(tài)測試(StaticTesting,ST)和動態(tài)測試(DynamicTesting,DT);以具體實現算法細節(jié)和系統(tǒng)內部結構的相關情況為根據可分黑盒測試、白盒測試和灰盒測試三類;從程序執(zhí)行的方式來分類,可分為人工測試(ManualTesting,MT)和自動化測試(AutomaticTesting,AT)。[5]軟件測試方法靜態(tài)測試和動態(tài)測試(1)靜態(tài)測試。靜態(tài)測試的含義是被測程序不運行,只依靠分析或檢查源程序的語句、結構、過程等來檢查程序是否有錯誤。即通過對軟件的需求規(guī)格說明書、設計說明書以及源程序做結構分析和流程圖分析,從而來找出錯誤。例如不匹配的參數,未定義的變量等。[5](2)動態(tài)測試。動態(tài)測試與靜態(tài)測試相對應,其是通過運行被測試程序,對得到的運行結果與預期的結果進行比較分析,同時分析運行效率和健壯性能等。這種方法可簡單分為三個步驟:構造測試實例、執(zhí)行程序以及分析結果。[5]軟件測試方法黑盒測試、白盒測試和灰盒測試(1)黑盒測試。軟件安全測評費