《Computer Standards & Interfaces》:Leveraging activation and optimisation layers as dynamic strategies in the multi-task fuzzing scheme
編輯推薦:
為解決基于機器學習的模糊測試中激活函數、優化策略及敏感性分析未充分探索的問題,研究人員開展了關于 LReLU 激活、Nadam 優化和敏感性分析對模糊測試影響的研究。結果表明這些改進可提升性能,對軟件測試意義重大。
在軟件安全領域,模糊測試(Fuzzing)作為一種強大的自動化軟件測試技術,對于發現軟件漏洞、增強軟件的穩健性起著至關重要的作用。它通過向程序提供動態生成的輸入,能挖掘出那些可能被忽視的缺陷。早期的模糊測試主要是隨機生成輸入,隨著技術的發展,如今已演變得更為復雜和智能,開始利用結構化和反饋驅動的方法來提高測試用例生成的效率。近年來,機器學習(ML)技術的融入更是為模糊測試帶來了新的變革,它使得模糊測試能夠自適應地生成輸入、優化漏洞檢測策略。
然而,即便取得了這些進展,基于 ML 的模糊測試仍面臨諸多挑戰。其中,激活函數、優化策略以及訓練后的敏感性分析等關鍵領域在模糊測試的背景下尚未得到充分研究,這在很大程度上限制了模糊測試在性能提升和漏洞檢測方面的潛力。為了突破這些限制,來自未知研究機構的研究人員開展了一項旨在改進神經網絡驅動的模糊測試的研究,相關成果發表在《Computer Standards 》上。
研究人員聚焦于三個關鍵的神經網絡參數,即 Leaky Rectified Linear Unit(LReLU)激活、Nesterov - accelerated Adaptive Moment Estimation(Nadam)優化和敏感性分析,提出了一種新的模糊測試方案 LMTFuzz。在研究過程中,研究人員運用了多種關鍵技術方法。首先,對 MTFuzz 框架進行深入剖析,理解其基線模型的工作原理和存在的問題。針對 MTFuzz 代碼中邏輯不一致的地方進行修正,確保實驗的準確性。其次,通過數學推導和實驗對比,詳細分析 LReLU 與 ReLU 激活函數、Nadam 與 Adam 優化器之間的差異,量化它們對模型性能的影響。此外,利用敏感性分析技術,確定神經網絡中對輸出變化影響最大的層,優化梯度計算的選擇,提高模型性能和測試用例生成效率 。
研究結果主要通過以下幾個方面呈現:
- 最大準確率:LReLU 及其與敏感性分析結合的變體在大多數評估工具(六個中的四個)上,最大準確率始終優于基線模型。在 djpeg、mutool、size、nm 和 readelf 這五個工具的評估中,LReLU、其敏感性增強變體以及敏感性分析本身的組合表現出了更好的性能。不過在 hb - fuzzer 工具上,LReLU 及其敏感性增強變體的性能有所下降,這可能與該工具的復雜性、對激活函數變化的低敏感性以及梯度傳播環境等因素有關。
- 損失指標:在大多數目標中,注重最小化損失的模型,如 LReLU、敏感性分析及其組合變體(Sensitivity with LReLU),能夠實現最低的損失率。但在 hb - fuzzer 工具上,這些模型的最低損失率和最大準確率下的損失與基線模型相當?傮w而言,LReLU 在最小化損失方面表現最佳。
- 邊緣覆蓋:LReLU 在所有模型中始終保持較高的最大邊緣覆蓋率,這表明它在測試中能夠更有效地探索輸入空間,識別出各種邊緣情況。Nadam 及其與 LReLU 的混合模型在某些目標上也表現出色,如在 djpeg 和 size 目標上取得了最高的邊緣覆蓋率。敏感性分析模型及其與 LReLU 的組合在 nm 目標上獲得了最高的邊緣覆蓋率,這顯示出不同模型組合在優化邊緣覆蓋方面的潛力。
- 新邊緣發現:敏感性分析在多個目標(如 djpeg、size、nm、mutool 和 readelf)的最終迭代中,表現出了新邊緣發現數量的增加或逐漸減少的趨勢,這意味著它能夠在后期發現更深層次、更復雜的代碼路徑。相比之下,其他方法大多呈現出下降趨勢。雖然敏感性分析在邊緣覆蓋上未超越 LReLU,但它在后期發現新邊緣的能力為模糊測試提供了一種補充策略。
- 獨特漏洞發現:除了在 size 和 readelf 目標上,基線模型在其他目標上的漏洞檢測能力明顯低于 LReLU 及其組合變體。LReLU 在多個目標上展現出強大的獨特漏洞檢測能力,Nadam 在某些目標上也有不錯的表現,如在 mutool 目標上排名第一。
- 總執行次數和最大維度:不同模型在總執行次數和最大維度方面表現各異。敏感性分析模型在某些工具(如 mutool 和 nm)中,能以較少的總執行次數實現有效的漏洞檢測。LReLU、Nadam 及其混合模型在增強覆蓋維度方面表現可靠,而敏感性分析及其變體在部分目標上也優于基線模型。
研究結論和討論部分指出,LReLU,特別是與敏感性分析相結合時,能顯著提高模糊測試的檢測效率,不同的目標漏洞對其性能提升的程度有所不同。LReLU 通過防止神經元失活,在分類和回歸任務中都展現出優于 ReLU 的性能,它能更好地提取特征,優化學習過程,增強模型的抗對抗能力。Nadam 在收斂速度上表現出色,尤其適用于對抗樣本生成任務,但它的動量更新策略可能導致波動,限制了其在某些目標上的有效性。敏感性分析通過根據梯度大小優先選擇模糊測試用例,動態調整任務權重,提高了模糊測試的效率和效果。
然而,該研究也存在一定的局限性。LReLU 的性能對超參數選擇較為敏感,需要進一步優化超參數以確保在不同任務中的穩定性。Nadam 雖然收斂速度快,但動量波動問題限制了其應用范圍,未來研究可考慮開發混合模型或改進其動量更新策略。盡管如此,這項研究為改進漏洞檢測和軟件測試提供了一個戰略框架,強調了持續探索這些方法的重要性。未來的研究應致力于克服現有局限,進一步優化這些技術,使其在更廣泛的任務中發揮更大的作用,從而為軟件安全領域提供更可靠的保障。