分享:關於安全性測試工具小要點

有一篇關於安全性測試工具的文章:《Gunfight at The OK Button》。

文中列出了安全測試工具的15個要點:

一、針對源代碼,測試出任何類型的弱點。

二、針對二進制文件,例如可執行文件,測試出任何類型的弱點。

三、檢測實時系統的問題,像死鎖檢測、異步行爲的問題等。

四、對任何類型的補丁建立基線並進行迴歸測試,防止引入新的弱點。

五、提供一個機制,確保已通過檢查、校驗的源代碼一旦構建成爲可執行文件後,沒有被更改。

六、幫助測試人員找到可能觸發或隱含惡意代碼的地方。

七、提供關於二進制文件的信息,例如哪一個本地系統對象被建立了。

八、在軟件開發週期中的不一樣階段都能應用,檢查軟件的弱點。

九、儘量小的錯誤偏差。

十、能處理外國語言的源代碼,例如外國語言的註釋等。

十一、平臺兼容性,例如Unix、Linux、Windows等。

十二、開發語言兼容性,例如C、C++、ADA、Java等。

1三、能夠處理大容量的源代碼或很大的可執行文件,例如上百萬行的代碼。

1四、不改變被測試的軟件,不影響代碼。

1五、產生有用的診斷、預測和度量分析報告。

文中還分類列出了幾款分別知足這些不一樣要點的安全性測試工具

一、分析檢查器、內存泄漏檢測工具、二進制代碼掃描器(Profilers, checkers,memory-leak detection tools,Binary code scanners)

   開源的:Valgrind (www.valgrind.org)
   商業的:Rational/IBM Purify(www.ibm.com)、http://samate.nist.gov/index.php/Binary_Code_Scanners

二、應用程序痕跡檢查工具(Application footprinting)
       UNIX 平臺:lsof 、strace、ktrace 、truss
    Windows平臺:ProcessExplorer

三、模糊測試工具(Fuzz testing tools and techniques (also known as penetration testing))
   Peach Fuzzer Framework (http://peachfuzz.sourceforge.net/)

四、靜態代碼分析工具(Static code analyzers)
   開源的:Splint(http://splint.org)
   商業的:PRQA(Programming Research)www.programmingresearch.com、Coverityphp

相關文章
相關標籤/搜索