JavaScrip模糊測試(開題)

bingosxs發表於2016-11-28
Javascript模糊測試的目的,是測試Javascript引擎中的缺陷,包括語法解析器、DOM物件程式碼等。語法解析器解析包括HTML/CCS/Javascript等指令碼。主要的測試工具包括Peach、QuickFuzz、Firefox's funfuzz 等。這些工具對Javascript的測試主要透過構造特殊指令碼去觸發缺陷。
傳統的模糊測試工具還包括基於符號計算的工具,例如 angr( ).

但是對於指令碼的測試,採用這些方法效果都比較弱。原因是指令碼的解析過程本身就是複雜的字串分析,最終的資訊會擴散到相當大的範圍,從而會影響汙點分析的效果。並且,指令碼到程式碼,之間還可能經過了JIT編譯,那麼傳統汙點分析的能力更加弱化。這就導致目前指令碼的測試更加依賴test case。

因此,解決指令碼到最終的實現程式碼的對映關係是一個非常有意義的事情。當然,手工構造原理上可行,實際上工作量巨大,隨著軟體更新,又需要重新構造,只能累死。所以,找自動化的程式碼分析工具實現才是正解。

這部分作為開題。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/21323297/viewspace-2129235/,如需轉載,請註明出處,否則將追究法律責任。

相關文章