您好,歡迎來到易龍商務網!
發布時間:2021-10-13 09:11  
【廣告】






請問有哪些代碼審計的工具產品?
國外商業工具:klocwork, fortify,Coverity, parasoft, TestBad, C Test, Checkmarx CxEnterprise,PolySpace,PClint(有些不是產品名稱,不過在業內都這么叫)。
國外開源工具:findbugs, checkstyle,sonar,PMD...國內商業工具:360代碼衛士,這個大多數人還沒有聽過,不過它已經是一款非常成熟的產品,實際的項目分析中完全不輸給國外的源代碼靜態分析工具。

APP代碼審計檢測系統架構
測試系統主要分為兩個模塊,一個是分析引擎模塊,一個是測試管理模塊。不同平臺上開發的軟件代碼可以通過中間的分布式調度方式來完成分發調度測試。如圖所示:
目前可以支持對 JAVA、JSP、 C、C 、PHP、ASP、 C#、Javascript、VBscript、Python、HTML、XML等十幾開發語言的安全漏洞的檢查,共能夠檢測出約 1000種漏洞。啟天安全源代碼審計系統將所有安全漏洞系統地整理并依據漏洞的表現形式、形成原因和危害程序進行科學地分類,共分為“輸入驗證、API 誤用、質量性能、異常處理、 代碼規范、安全控制、環境配置、信息封裝”8個大類,然后根據開發語言的不同,在結合國際漏洞標準組織CWE的漏洞知識庫進行細分和命名,目前約1000個子類。

代碼安全審計的對象和內容
源代碼安全檢測主要對象包括并不限于對Windows和Linux系統環境下的語言進行審核,例如C、C 、OC、C#、Java、PHP、JSP、ASPX、Javascript、Python、Cobol、Go等進行安全審計測試。
源代碼安全檢測的主要內容包括但不限于:
1、WEB應用框架安全性;
2、WEB應用程序的權限架構;
3、WEB應用通信安全;
4、數據庫的配置規范;
5、OWASP WEB 前10漏洞;
5、SQL語句的編寫規范
手工代碼審計的優缺點
優點
? 能夠深入研究代碼路徑,檢查設計和體系結構中的邏輯錯誤和缺陷,大多數自動化工具都無法找到這些錯誤和缺陷
? 與一些自動化工具相比,手動檢測授權、身份驗證和數據驗證等安全問題的效果更好
? 對于值的應用程序,總是有額外的利用空間(需要經過培訓的)
? 查看其他人的代碼是共享安全代碼和AppSec知識的好方法
缺點
? 要求精通應用程序中使用的語言和框架,并需要對安全性有深入的理解
? 不同的評審人員將生成不同的報告,從而導致評審人員之間的結果不一致——盡管同行評審可以是一個修復方法
? 測試和編寫報告是及時的,并且經常需要開發人員參加有時很長時間的訪談會議,以便為審查人員提供上下文,這消耗了開發人員的時間和資源
? 對代碼行數超過10-15k的應用程序的手動審查于針對高風險功能