|
公司基本資料信息
|
Fortify常見問題解決方法
內存不足問題
在應用Fortify SCA實施源代碼掃描過程中內存不足是分析器(sourceanalyzer)經常報出的一類問題,如下:
掃描過程中:
1、com.a.analyzer.AbortedException: There is not enough memory available
2、to complete analysis. For details on making more memory available;
There were 3 problems with insufficient memory. Results may be incomplete.
因此,我們必須對JVM參數進行調整,增加虛擬器內存大小。
(1)確認安裝64位的Fortify SCA程序;(這是一個眾所周知的JVM問題,32為虛擬機內存大小及其有限);
(2)安裝一個64位的jre,并將其替換HP_FortifyHP_Fortify_SCA_and_Apps_3.80的jre目錄(就算你安裝了64位的Fortify SCA程序,該程序默認的jre仍然是32位的);
C/C++源碼掃描系列- Fortify 篇
環境搭建
本文的分析方式是在 Linux 上對源碼進行編譯、掃描,然后在 Windows 平臺對掃描結果進行分析,所以涉及 Windows 和 Linux 兩個平臺的環境搭建。
Windows搭建
首先雙擊 Fortify_SCA_and_Apps_20.1.1_windows_x64.exe 安裝
安裝完成后,把 fortify-common-20.1.1.0007.jar 拷貝 Corelib 進行,然后需要把 rules 目錄的規則文件拷貝到安裝目錄下的 Coreconfigrules 的路徑下,該路徑下保存的是Fortify的默認規則庫。
Externalmetadata 下的文件也拷貝到 CoreconfigExternalmetadata 目錄即可
執行 d 即可進入分析源碼掃描結果的IDE.
Fortify SCA亂碼解決
1:單文件亂碼解決方案
可通過Edit下Set Encoding設置。
2:修改Audit Workbench默認編碼
找到d文件(D:devFortifyFortify_SCA_and_Apps_20.1.1Coreprivate-binawbd)在蕞后這一行末添加-Dfile.encoding=utf-8,以規定其eclipse.exe默認使用utf-8編碼。
備注:d 在 Audit Workbench 的 d 文件內可找到。
3:修改Fortify集成的eclipse默認編碼
添加 fortify 的 eclipse 啟動參數 -Dfile.encoding=utf-8