專利與開源哪個好?谷歌發(fā)布OSS-Fuzz開源模糊測試服務
僅在微軟宣布提供Springfield編碼模糊測試服務兩個月后,谷歌也發(fā)布了他們自己的面向?qū)ο蟠鎯δ:郎y試,OSS-Fuzz的測試版。這兩個項目的目的都是為了幫助開發(fā)者鎖定導致入侵的程序錯誤,但是項目本身就像這兩家公司的商業(yè)模式一樣,大相徑庭。一個需要付費另一個則是免費,一個擁有專利保護另一個則是開源的。
谷歌的OSS-Fuzz能夠針對開源軟件進行持續(xù)的模糊測試,其測試開發(fā)團隊昨天的博客中寫到“OSS-Fuzz的目的是利用更新的模糊測試技術(shù)與可拓展的分布式執(zhí)行相結(jié)合,提高一般軟件基礎架構(gòu)的安全性與穩(wěn)定性。OSS-Fuzz結(jié)合了多種模糊測試技術(shù)/漏洞捕捉技術(shù)(即原來的libfuzzer)與清洗技術(shù)(即原來的AddressSanitizer),并且通過ClusterFuzz為大規(guī)模可分布式執(zhí)行提供了測試環(huán)境。”
這項服務填補了Springfield留下的空白:微軟的模糊測試服務針對的是愿意付費的企業(yè)客戶。雖然并沒有排除開源開發(fā)者,但值得注意的是它明確將企業(yè)客戶作為目標:適合測試內(nèi)部軟件、通過企業(yè)并購獲得的軟件、甚至是購買的第三方軟件。
谷歌提到“開源軟件是很多應用、站點、服務以及萬物互聯(lián)的物聯(lián)網(wǎng)的骨干中樞...一個例子是FreeType library,一個在十億以上設備上使用,用來轉(zhuǎn)換字體的庫(也許你正在看的這些文字也是由它轉(zhuǎn)換呈現(xiàn)的)。”對于這種軟件來說,沒有程序問題并且安全是很重要的。“最近FreeType的漏洞捕捉器在源代碼變化后的幾小時內(nèi)就找到了新的堆緩沖區(qū)。”
此服務“持續(xù)性”的特點還能解決另一個問題:開源軟件會有大量不同維護人員不斷地更新、變化。Google表示,“OSS-Fuzz可以自動提醒維護人員,誰修復了程序錯誤,并且還能自動確認這個修復。一切都在一天內(nèi)完成!”
并沒有跡象表明谷歌和微軟的服務哪個更好---他們?yōu)榱瞬煌哪康牟扇〔煌侄?。HD Moore,Metasploit與Special Circumstance有限責任公司的創(chuàng)始人表示,“OSS-Fuzz的成就,可以同開源中的Coverity工具相提并論;通過應用商業(yè)化資源去提高那些重要的開源軟件與庫的安全性。”
“Springfield會有些不同,”他繼續(xù)說,“它的重點是對所有付費的開發(fā)者提供服務而不僅是開源的那些。谷歌作為一個因其員工對開源工具(例如AFL等)的耕耘而在此領域做出杰出貢獻的公司,在這方面的成就似乎與其保持了一致。”
目前,谷歌測試版只對有大量用戶群或者對全球IT基礎架構(gòu)至關(guān)重要的開源軟件提供服務。這暗示著,盡管沒有直截了當?shù)卣f明,這一切仍會變化。“通過你的幫助,我們可以將模糊測試作為開源發(fā)展中的一個標準規(guī)范,并和廣大開發(fā)者、安全測試人員一道,確保那些重要開源應用、庫以及API中的程序錯誤都能被發(fā)現(xiàn)和修復。”
Robin Wood是一位獨立的滲透測試人員與安全工具開發(fā)者。他不是很確定OSS-Fuzz最終能對所有人開放。“谷歌的工具似乎對能使用它的人群來說仍有一定限制;谷歌要求這個項目要么有龐大用戶群要么對全球IT至關(guān)重要,然而微軟的工具可以任何人使用但要收你的錢,”他對SecurityWeek表示,“我能理解谷歌只是想限制他所承擔的費用;所以這不算是在批評他們。”
然而他非常確信,谷歌走在正確的路上。“微軟工具使用它們內(nèi)部打造出來的軟件然而谷歌工具用的是外部框架并且能拓展應用更加多樣化且不同的工具;這就能變得更加靈活。盡管想要做到一致,但任何工具自己的特性都會使其在某些領域做的更好些,而另一些領域則差些。”
Moore還認為,OSS-Fuzz“能夠大大支持開源社區(qū)的發(fā)展并遠超過其他公司在這個領域所做的努力。”
Wood覺得Springfield和OSS-Fuzz都不錯,“當服務與產(chǎn)品狀態(tài)穩(wěn)定時將這兩個對比做一個fuzz-off的測試結(jié)果看看他們各自找到什么應該會很有趣。但是無論任何哪個工具最后成為‘更好的’那一個,如果我有機會,為了確保萬無一失我想這兩個我都會嘗試一下。”
【本文是51CTO專欄作者李少鵬的原創(chuàng)文章,轉(zhuǎn)載請通過安全牛(微信公眾號id:gooann-sectv)獲取授權(quán)】