|
公司基本資料信息
|
||||||||||||||||||||||||||
– HPE Fortify SCA
分析的流程
運用三步走的方法來執行源代碼安全風險評估:
u 確定源代碼安全風險評估的審查目標
u 使用Fortify執行初步掃描并分析安全問題結果
u 審查應用程序的架構所特有的代碼安全問題
在第yi步中,我們使用威脅建模(如果可用)的結果以及對用于構建該應用的架構和技術的理解,其目標就是尋求一系列的安全漏洞的風險表現形式。在初步檢查過程中,我們將結合靜態分析和輕量級的人工審查來確定代碼中關鍵點-很可能包含了更多漏洞的地方,初始掃描使我們能夠優先考慮風險gao的區域。
在審查主要代碼過程中,我們的源代碼安全分析人員對代碼進行徹底審查來尋找常見安全問題,比如大家熟悉的緩沖區溢出、跨站點腳本,SQL注入等。終審查用于調查本應用程序架構所特有的問題,一般表現為威脅建模或安全特征中出現的威脅,如自定義身份驗證或授權程序等。


Fortify軟件
強化靜態代碼分析器
使軟件更快地生產
語義本分析儀在程序級別檢測功能和API的潛在危險用途。基本上是一個聰明的GREP。
配置此分析器在應用程序的部署配置文件中搜索錯誤,弱點和策略違規。
緩沖區此分析儀檢測緩沖區溢出漏洞,涉及寫入或讀取比緩沖區容納的更多數據。
分享這個答案
于十二月二十四日十二時十七分
感謝你非常有用的信息。你知道這些分析儀在內部工作嗎?如果您提供一些細節,我將非常感謝。 - 新手十二月27'12 at 4:22
1
有一個很好的,但干燥的書的主題:/Secure-Programming-Static-Analysis-Brian/dp/... - LaJmOn Nov 8 '12 at 16:09
現在還有一個內容分析器,盡管這與配置分析器類似,除非在非配置文件中搜索問題(例如查找HTML,JSP for XPath匹配) - lavamunky 11月28日13日11:38
@LaJmOn有一個非常好的答案,但在完全不同的抽象層次,我可以用另一種方式回答這個問題:
您的源代碼被轉換為中間模型,該模型針對SCA的分析進行了優化。
某些類型的代碼需要多個階段的翻譯。例如,需要先將C#文件編譯成一個debug.DLL或.EXE文件,然后將該.NET二進制文件通過.NET SDK實用程序ildasm.exe反匯編成Microsoft Intermediate Language(MSIL)。而像其他文件(如Java文件或ASP文件)由相應的Fortify SCA翻譯器一次翻譯成該語言。
SCA將模型加載到內存中并加載分析器。每個分析器以協調的方式加載規則并將這些角色應用于程序模型中的功能。
匹配被寫入FPR文件,漏洞匹配信息,安全建議,源代碼,源交叉引用和代碼導航信息,用戶過濾規范,任何自定義規則和數字簽名都壓縮到包中。

Fortify軟件
強化靜態代碼分析器
使軟件更快地生產
如何解決Fortify報告的掃描問題
1124,1127由于[嚴重]低內存,掃描進度緩慢
這個錯誤不會影響結果的準確性,但是要加快掃描速度,請參閱:如何增加Fortify的內存進行翻譯
1137功能。 。 。對于詳盡的數據流分析來說太復雜了,進一步分析將被跳過(訪問)如何解決“功能...太復雜”錯誤
1138功能。 。 。對于詳盡的數據流分析來說太復雜了,進一步分析將被跳過(時間)如何解決“功能...太復雜”的錯誤
1212無法在<code location>中解析函數<method>
這是Fortify 17.10的一個已知問題。有關詳細信息,請參閱以下文章:
Fortify SCA版本17.10的Java方法中的函數解析錯誤
1214為類找到多個定義解決多個類定義。考慮將代碼掃描到多個FPR文件(如果適用)。
1215找不到Web應用程序的部署描述符(web.xml)如何解決Fortify無法找到web.xml或WEB-INF目錄的警告
1219無法在給定的搜索路徑和Microsoft .NET framework庫中找到類[...]如何解決“無法找到類...”
1225無法找到Microsoft .NET反匯編程序工具(ildasm)如何解決“無法找到Microsoft .NET反匯編程序工具(ildasm)...”
1237以下對java類的引用無法解析[...]修改提供給Fortify的類路徑以包含包含列出的類的jar文件。
1343功能。 。 。對于控制流分析來說太復雜了,將被跳過。 (時間)如何解決“功能...太復雜”錯誤
1425選項“-source-base-dir”(或屬性“com.a.SourcebaseDir”)應在處理cfml文件時設置將-source-base-dir設置為推薦
1501類路徑條目。 。 。不存在根據需要修改提供給Fortify的類路徑,以提供正確的類路徑
6001沒有文件被排除,因為-exclude選項指ding的文件模式[...]與任何文件不匹配此錯誤不會影響結果的準確性,但這可能意味著某些掃描的文件被意圖排除。
10002無法解析T-SQL [...]如何在Windows上掃描PL / SQL
12003假設Java源級別為1.8,因為沒有指ding。指ding在GUI中或使用-source或-jdk命令行選項使用的Java版本。
12004,12005 的PHP前端無法解析以下內容如何解決“PHP前端無法解析以下包含...”
12004,12006 ASP / VBscript前端無法解析以下內容/您可能需要定義一些虛擬根。如何解決“ASP / VBscript前端無法解決以下內容...”
12004,12010 Actionscript前端無法解析以下導入如何解決“Actionscript前端無法解析以下導入...”
12004紅寶石前端無法解決以下要求如何解決“紅寶石前端無法解決以下要求...”
12007您可能需要向SCA的-python-path參數添加一些參數請嘗試根據Fortify的建議配置-python-path參數。請參閱Fortify文檔中的SCA用戶指南2章:翻譯Python代碼
12014在.Net翻譯器執行期間發生翻譯錯誤這是Fortify 16.20掃描C#6 / VB 14代碼的一個知識問題。請參閱以下博客文章以獲取有關如何處理的信息:Fortify 16.20“C#6 / VB 14”中的“轉換器執行失敗”錯誤
12019以下對java函數的引用無法解析有關此錯誤,請參閱以下博客文章
12020未找到以下類,但提供了哪個jar文件可能包含該類的建議。修改提供給Fortify的類路徑以包含包含列出的類的jar文件。
12022課程[。 。 。]在類路徑中找不到,但是它在HPE Fortify提供的jar中找到。 。 。如果未設置,請顯式設置Java版本,并修改提供給Fortify的類路徑以包含指示的jar文件。如果Fortify拉入了正確的jar文件版本,那么這可以被認為不是一個問題,但是必須包含一個自述文件,解釋它們是正確的版本。
13556找不到實現該類型的lambda的方法。 。 。有關此錯誤,請參閱以下博客文章。
