示意圖,與新聞事件無關。

資安業者IOActive在上周於倫敦舉行的「黑帽」(Black Hat)駭客會議上展示了一項新的模糊測試工具,利用該工具測試了JavaScript、Perl、PHP、Python及Ruby等五大熱門的程式語言,在檢驗這些程式語言的預設函式庫與內建函式之後,發現了許多程式語言的缺陷,將導致應用程式的安全漏洞,包含命令執行或資訊外洩等。IOActive也在本周開源了所使用的 XDiFF模糊測試框架

工欲善其事,必先利其器。為了執行此一研究,IOActive打造了混合式的模糊測試工具(fuzzer)—XDiFF,可用來辨識軟體中的個別漏洞,以及軟體中具備類似行為的多個漏洞。

以Python撰寫的XDiFF是個漏洞自動查找工具,它盡可能地蒐集有價值的資料,以推論應用程式中的所有潛在漏洞,這些漏洞可能是出現軟體中,也可能出現在基於不同實現的行為中,可進行平行測試,支援Linux、Windows、OS X及Freebsd等作業系統,亦可附加除錯工具來檢查記憶體錯誤。

IOActive以XDiFF來檢驗五大程式語言及相關的實現與編譯器,包括JavaScript、Perl、PHP、Python與Ruby,以及v8、Spidermonkey、ChakraCore、NodeJS、HHVM、JRuby、ActivePerl、PyPy及Jython等。

在Python中找到可被用來執行OS命令的方法與環境變數,發現NodeJS輸出錯誤訊息時可外洩機密資料,而JRuby、Perl與PHP的某些非遠端執行程式函式卻可用來執行遠端程式。

IOActive安全顧問Fernando Arnaboldi說明,以模糊測試工具來辨識軟體漏洞需要偵測不尋常的行為,同時監控記憶體的毀損或溢位,最受歡迎的AFL與Peach都是針對軟體的當機或擱置行為來尋找漏洞,這些常規工具( regular fuzzer)無法像差異測試工具(differential fuzzer)一樣可儲存測試時的資訊,而XDiFF則定位為延伸的差異性模糊測試框架,能自已知的漏洞中延伸以尋找新的行為缺陷。


Advertisement

更多 iThome相關內容