第三方軟件檢測機構在開展第三方軟件測試的過程中,需要保持測試整體的嚴謹性,也需要對測試結果負責并確保公平公正性。所以,在測試過程中,軟件測試所使用的測試工具也是很重要的一方面。我們簡單介紹一下在軟件檢測過程中使用的那些軟件測試工具。眾所周知,軟件測試的參數(shù)項目包括功能性、性能、安全性等參數(shù),而其中出具軟件測試報告主要的就是性能測試和安全測試所需要使用到的工具了。一、軟件測試性能測試工具這個參數(shù)的測試工具有l(wèi)oadrunner,jmeter兩大主要工具,國產化性能測試軟件目前市場并未有比較大的突破,其中l(wèi)oadrunner是商業(yè)軟件測試工具,jmeter為開源社區(qū)版本的性能測試工具。從第三方軟件檢測機構的角度上來說,是不太建議使用開源測試工具的。首先,開源測試工具并不能確保結果的準確性,雖然技術層面上來說都可以進行測試,但是因為開源更多的需要考量軟件測試人員的測試技術如何進行使用,涉及到了人為因素的影響,一般第三方軟件檢測機構都會使用loadrunner作為性能測試的工具來進行使用。而loadrunner被加拿大的一家公司收購以后,在整個中國市場區(qū)域的銷售和營銷都以第三方軟件檢測機構為基礎來開展工作??煽啃栽u估連續(xù)運行72小時出現(xiàn)2次非致命錯誤。軟件功能測試性能測試
快速原型模型部分需求-原型-補充-運行外包公司預先不能明確定義需求的軟件系統(tǒng)的開發(fā),更好的滿足用戶需求并減少由于軟件需求不明確帶來的項目開發(fā)風險。不適合大型系統(tǒng)的開發(fā),前提要有一個展示性的產品原型,在一定程度上的補充,限制開發(fā)人員的創(chuàng)新。螺旋模型每次功能都要**行風險評估,需求設計-測試很大程度上是一種風險驅動的方法體系,在每個階段循環(huán)前,都進行風險評估。需要有相當豐富的風險評估經驗和專門知識,在風險較大的項目開發(fā)中,很有必要,多次迭代,增加成本。軟件測試模型需求分析-概要設計-詳細設計-開發(fā)-單元測試-集成測試-系統(tǒng)測試-驗收測試***清楚標識軟件開發(fā)的階段包含底層測試和高層測試采用自頂向下逐步求精的方式把整個開發(fā)過程分成不同的階段,每個階段的工作都很明確,便于控制開發(fā)過程。缺點程序已經完成,錯誤在測試階段發(fā)現(xiàn)或沒有發(fā)現(xiàn),不能及時修改而且需求經常變化導致V步驟反復執(zhí)行,工作量很大。W模型開發(fā)一個V測試一個V用戶需求驗收測試設計需求分析系統(tǒng)測試設計概要設計集成測試設計詳細設計單元測試設計編碼單元測試集成集成測試運行系統(tǒng)測試交付驗收測試***測試更早的介入,可以發(fā)現(xiàn)開發(fā)初期的缺陷。軟件第三方鑒定機構艾策檢測團隊采用多模態(tài)傳感器融合技術,構建智能工廠設備狀態(tài)健康監(jiān)測體系。
在不知道多長的子序列能更好的表示可執(zhí)行文件的情況下,只能以固定窗口大小在字節(jié)碼序列中滑動,產生大量的短序列,由機器學習方法選擇可能區(qū)分惡意軟件和良性軟件的短序列作為特征,產生短序列的方法叫n-grams?!?80074ff13b2”的字節(jié)碼序列,如果以3-grams產生連續(xù)部分重疊的短序列,將得到“080074”、“0074ff”、“74ff13”、“ff13b2”四個短序列。每個短序列特征的權重表示有多種方法。**簡單的方法是如果該短序列在具體樣本中出現(xiàn),就表示為1;如果沒有出現(xiàn),就表示為0,也可以用。本實施例采用3-grams方法提取特征,3-grams產生的短序列非常龐大,將產生224=(16,777,216)個特征,如此龐大的特征集在計算機內存中存儲和算法效率上都是問題。如果短序列特征的tf較小,對機器學習可能沒有意義,選取了tf**高的5000個短序列特征,計算每個短序列特征的,每個短序列特征的權重是判斷其所在軟件樣本是否為惡意軟件的依據(jù),也是區(qū)分每個軟件樣本的依據(jù)。(4)前端融合前端融合的架構如圖4所示,前端融合方式將三種模態(tài)的特征合并,然后輸入深度神經網(wǎng)絡,隱藏層的***函數(shù)為relu,輸出層的***函數(shù)是sigmoid,中間使用dropout層進行正則化,防止過擬合,優(yōu)化器。
本發(fā)明屬于惡意軟件防護技術領域::,涉及一種基于多模態(tài)深度學習的惡意軟件檢測方法。背景技術:::惡意軟件是指在未明確提示用戶或未經用戶許可的情況下,故意編制或設置的,對網(wǎng)絡或系統(tǒng)會產生威脅或潛在威脅的計算機軟件。常見的惡意軟件有計算機**(簡稱**)、特洛伊木馬(簡稱木馬)、計算機蠕蟲(簡稱蠕蟲)、后門、邏輯**等。惡意軟件可能在用戶不知情的情況下竊取計算機用戶的信息和隱私,也可能非法獲得計算機系統(tǒng)和網(wǎng)絡資源的控制,破壞計算機和網(wǎng)絡的可信性、完整性和可用性,從而為惡意軟件控制者謀取非法利益。騰訊安全發(fā)布的《2017年度互聯(lián)網(wǎng)安全報告》顯示,2017年騰訊電腦管家pc端總計攔截**近30億次,平均每月攔截木馬**近,共發(fā)現(xiàn)**或木馬***。這些數(shù)目龐大、名目繁多的惡意軟件侵蝕著我國的***、經濟、文化、***等各個領域的信息安全,帶來了前所未有的挑戰(zhàn)。當前的反**軟件主要采用基于特征碼的檢測方法,這種方法通過對代碼進行充分研究,獲得惡意軟件特征值(即每種惡意軟件所獨有的十六進制代碼串),如字節(jié)序列、特定的字符串等,通過匹配查找軟件中是否包含惡意軟件特征庫中的特征碼來判斷其是否為惡意軟件。整合多學科團隊的定制化檢測方案,體現(xiàn)艾策服務于制造的技術深度。
比黑盒適用性廣的優(yōu)勢就凸顯出來了。[5]軟件測試方法手動測試和自動化測試自動化測試,顧名思義就是軟件測試的自動化,即在預先設定的條件下運行被測程序,并分析運行結果。總的來說,這種測試方法就是將以人驅動的測試行為轉化為機器執(zhí)行的一種過程。對于手動測試,其在設計了測試用例之后,需要測試人員根據(jù)設計的測試用例一步一步來執(zhí)行測試得到實際結果,并將其與期望結果進行比對。[5]軟件測試方法不同階段測試編輯軟件測試方法單元測試單元測試主要是對該軟件的模塊進行測試,通過測試以發(fā)現(xiàn)該模塊的實際功能出現(xiàn)不符合的情況和編碼錯誤。由于該模塊的規(guī)模不大,功能單一,結構較簡單,且測試人員可通過閱讀源程序清楚知道其邏輯結構,首先應通過靜態(tài)測試方法,比如靜態(tài)分析、代碼審查等,對該模塊的源程序進行分析,按照模塊的程序設計的控制流程圖,以滿足軟件覆蓋率要求的邏輯測試要求。另外,也可采用黑盒測試方法提出一組基本的測試用例,再用白盒測試方法進行驗證。若用黑盒測試方法所產生的測試用例滿足不了軟件的覆蓋要求,可采用白盒法增補出新的測試用例,以滿足所需的覆蓋標準。其所需的覆蓋標準應視模塊的實際具體情況而定。無障礙測評認定視覺障礙用戶支持功能缺失4項。北京第三方軟件測評
企業(yè)數(shù)字化轉型指南:艾策科技的實用建議。軟件功能測試性能測試
optimizer)采用的是adagrad,batch_size是40。深度神經網(wǎng)絡模型訓練基本都是基于梯度下降的,尋找函數(shù)值下降速度**快的方向,沿著下降方向迭代,迅速到達局部**優(yōu)解的過程就是梯度下降的過程。使用訓練集中的全部樣本訓練一次就是一個epoch,整個訓練集被使用的總次數(shù)就是epoch的值。epoch值的變化會影響深度神經網(wǎng)絡的權重值的更新次數(shù)。本次實驗使用了80%的樣本訓練,20%的樣本驗證,訓練50個迭代以便于找到較優(yōu)的epoch值。隨著迭代數(shù)的增加,前端融合模型的準確率變化曲線如圖5所示,模型的對數(shù)損失變化曲線如圖6所示。從圖5和圖6可以看出,當epoch值從0增加到5過程中,模型的驗證準確率和驗證對數(shù)損失有一定程度的波動;當epoch值從5到50的過程中,前端融合模型的訓練準確率和驗證準確率基本不變,訓練和驗證對數(shù)損失基本不變;綜合分析圖5和圖6的準確率和對數(shù)損失變化曲線,選取epoch的較優(yōu)值為30。確定模型的訓練迭代數(shù)為30后,進行了10折交叉驗證實驗。前端融合模型的10折交叉驗證的準確率是%,對數(shù)損失是,混淆矩陣如圖7所示,規(guī)范化后的混淆矩陣如圖8所示。前端融合模型的roc曲線如圖9所示,該曲線反映的是隨著檢測閾值變化下檢測率與誤報率之間的關系曲線。軟件功能測試性能測試