今天,在 2016 微軟技術(shù)大會(huì)上(Ignite conference),微軟推出了一款基于云的漏洞檢測(cè)工具 Project Springfield ,該工具結(jié)合了模糊測(cè)試,幫助開(kāi)發(fā)人員發(fā)現(xiàn)在其應(yīng)用程序的 Bug。通過(guò)拋出半隨機(jī)輸入的自動(dòng)化測(cè)試代碼,結(jié)合 AI 工具來(lái)檢測(cè)軟件的安全隱患。人工智能工具可以對(duì)潛在的安全問(wèn)題做出更準(zhǔn)確的假設(shè)和預(yù)測(cè)。
研究人員表示,這個(gè)工具價(jià)值百萬(wàn)美元,因?yàn)殚_(kāi)發(fā)人員總是在新產(chǎn)品發(fā)布之后,花費(fèi)巨大的人力和資金成本來(lái)被動(dòng)地跟進(jìn)補(bǔ)丁,而 Project Springfield 可以在產(chǎn)品發(fā)布前主動(dòng)探測(cè)出潛在漏洞。
Microsoft 研究員David Molnar 表示,就像在車(chē)禍?zhǔn)鹿手?,只看事故現(xiàn)場(chǎng)可能無(wú)法確定事故原因。常規(guī)測(cè)試可以告訴你該代碼什么時(shí)候崩潰,而 AI 工具可以分析軟件在實(shí)際中是如何工作的。研究小組反復(fù)指出,這個(gè)工具之所以有能力找出數(shù)百萬(wàn)個(gè) Bug,在于其對(duì)操作系統(tǒng)潛在安全問(wèn)題的監(jiān)測(cè)能力和修復(fù)能力。相比一般的測(cè)試方法,Project Springfield 更專(zhuān)注和智能,它將多個(gè)不同的模糊測(cè)試技術(shù)和 AI 技術(shù)結(jié)合起來(lái),每次軟件運(yùn)行時(shí),觀察其重要部分,收集數(shù)據(jù),找出一般的模糊測(cè)試工具可能忽視的更深層的漏洞。一旦確定了一個(gè) Bug,它會(huì)幫助開(kāi)發(fā)商人員重現(xiàn)該問(wèn)題。
在微軟內(nèi)部,一個(gè)類(lèi)似的工具已經(jīng)使用了 10 年左右了,用來(lái)檢測(cè) Windows 系統(tǒng)的潛在 Bug。值得注意的一點(diǎn)是,該工具使用二進(jìn)制算法,無(wú)需借助源代碼,這意味著公司可以用它來(lái)評(píng)估從外部來(lái)源購(gòu)買(mǎi)或收購(gòu)公司代碼。開(kāi)發(fā)者把二進(jìn)制文件上傳到的服務(wù)器,實(shí)際測(cè)試都時(shí)基于云計(jì)算來(lái)推進(jìn)的。
盡管微軟的最終目標(biāo)是大眾化推廣這項(xiàng)技術(shù),將其插入每家公司開(kāi)發(fā)渠道,不過(guò)現(xiàn)在還沒(méi)有將 Project Springfield 推廣給開(kāi)發(fā)商的明確日程,用戶(hù)可以在線注冊(cè)進(jìn)行預(yù)覽。