為了減少漏洞和提高軟件質(zhì)量,微軟開發(fā)了神經(jīng)模糊技術(shù)。 這種新的自動(dòng)化測(cè)試方法,采用一種稱為模糊(fuzzing)的技術(shù),,將大量的數(shù)據(jù)輸入到程序中,以嘗試強(qiáng)制發(fā)生瓦解或不測(cè)行為,從而發(fā)現(xiàn)漏洞。
傳統(tǒng)的模糊工具分為三類。黑盒fuzzers是不直不雅觀的,并使用現(xiàn)成的示例文件來創(chuàng)建新的輸入。與黑匣子比擬,白盒剔除器要聰明得多。白盒模糊器將嘗試使用算法盡可能多地執(zhí)行差別的代碼分支。 Graybox fuzzers不能像白盒工具那樣映射程序的代碼結(jié)構(gòu),但是包羅一個(gè)反饋循環(huán),以便使用樣本輸入發(fā)現(xiàn)錯(cuò)誤的可能性更大。
微軟新的神經(jīng)網(wǎng)絡(luò)模糊測(cè)試項(xiàng)目采用灰箱模糊器,并將深度神經(jīng)網(wǎng)絡(luò)應(yīng)用于反饋回路。隨著時(shí)間的推移,神經(jīng)反饋有助于發(fā)現(xiàn)更多可識(shí)別程序缺陷的獨(dú)特代碼路徑。在一個(gè)用于解析.png文件的庫測(cè)試中,與傳統(tǒng)的模糊技術(shù)比擬,微軟使用神經(jīng)網(wǎng)絡(luò)所獲得的代碼路徑數(shù)量翻倍。
與所有處于研發(fā)階段的技術(shù)一樣,還有一些問題需要解決。當(dāng)試圖通過神經(jīng)網(wǎng)絡(luò)運(yùn)行PDF文件時(shí),傳統(tǒng)的方法仍然勝過神經(jīng)網(wǎng)絡(luò)。造成神經(jīng)網(wǎng)絡(luò)響應(yīng)緩慢的大文件被認(rèn)為是罪魁禍?zhǔn)住?/p>
對(duì)于那些想知道這個(gè)新的神經(jīng)網(wǎng)絡(luò)能否被第三方和公眾使用的人來說,這是一個(gè)好消息。微軟已經(jīng)發(fā)布了一個(gè)名為微軟安適風(fēng)險(xiǎn)檢測(cè)的工具,它使用Azure云辦事,任何擁有一些基本知識(shí)的人都可以使用該工具嘗試和發(fā)現(xiàn)軟件中的錯(cuò)誤。