近日,微軟開源了OneFuzz——一個微軟內部使用的,由開發人員驅動的持續開發模糊測試平臺。開源后,世界各地的開發人員都可以通過OneFuzz直接從其開發系統接收模糊測試結果。
模糊測試是一種自動化的軟件測試技術,將隨機、意外、畸形和/或無效數據輸入計算機程序,試圖發現可能影響程序安全性和性能的異常(例如崩潰、內存泄漏等)和意外行為。
Azure驅動的持續開發模糊測試
OneFuzz項目是Azure的可擴展、自托管的Fuzzing即服務平臺,該平臺聚集了多個現有的Fuzzer,并可(通過自動化)整合崩潰檢測、覆蓋范圍跟蹤和輸入控制等功能。
Microsoft內部團隊使用OneFuzz來加強Windows、Microsoft Edge和其他軟件產品的安全性開發。
“傳統上,模糊測試對于開發人員來說是一把雙刃劍:在軟件開發生命周期中發現可行的缺陷方面非常有效,但從中獲取、執行和提取信息卻非常復雜。”微軟首席安全軟件工程賈斯汀?坎貝爾(Justin Campbell)和特殊項目管理高級總監邁克?沃克( Mike Walker)指出。
“這種復雜性要求專門的安全工程團隊來開發和運行模糊測試功能,這非常有用但成本很高。使開發人員能夠執行模糊測試,可以將漏洞發現轉移到開發生命周期的早期,同時釋放安全工程團隊的精力,從事更加重要的工作。”
OneFuzz的功能
OneFuzz將允許開發人員執行模糊測試任務(規模從幾臺虛擬機到數千個內核不一),只需將一條命令輸入開發系統即可。
該工具的功能包括:
OneFuzz將在未來幾天通過GitHub(https://github.com/microsoft/onefuzz)提供給全球。微軟表示將繼續通過公司各個團隊的貢獻來更新和擴展它,并歡迎來自更大范圍的開源社區的貢獻和建議。