|
公司基本資料信息
|
Fortify常見問題解決方法
內(nèi)存不足問題
在應(yīng)用Fortify SCA實(shí)施源代碼掃描過程中內(nèi)存不足是分析器(sourceanalyzer)經(jīng)常報(bào)出的一類問題,如下:
掃描過程中:
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.
因此,我們必須對(duì)JVM參數(shù)進(jìn)行調(diào)整,增加虛擬器內(nèi)存大小。
(1)確認(rèn)安裝64位的Fortify SCA程序;(這是一個(gè)眾所周知的JVM問題,32為虛擬機(jī)內(nèi)存大小及其有限);
(2)安裝一個(gè)64位的jre,并將其替換HP_FortifyHP_Fortify_SCA_and_Apps_3.80的jre目錄(就算你安裝了64位的Fortify SCA程序,該程序默認(rèn)的jre仍然是32位的);
C/C++源碼掃描系列- Fortify 篇
環(huán)境搭建
本文的分析方式是在 Linux 上對(duì)源碼進(jìn)行編譯、掃描,然后在 Windows 平臺(tái)對(duì)掃描結(jié)果進(jìn)行分析,所以涉及 Windows 和 Linux 兩個(gè)平臺(tái)的環(huán)境搭建。
Windows搭建
首先雙擊 Fortify_SCA_and_Apps_20.1.1_windows_x64.exe 安裝
安裝完成后,把 fortify-common-20.1.1.0007.jar 拷貝 Corelib 進(jìn)行,然后需要把 rules 目錄的規(guī)則文件拷貝到安裝目錄下的 Coreconfigrules 的路徑下,該路徑下保存的是Fortify的默認(rèn)規(guī)則庫。
Externalmetadata 下的文件也拷貝到 CoreconfigExternalmetadata 目錄即可
執(zhí)行 d 即可進(jìn)入分析源碼掃描結(jié)果的IDE.
Fortify SCA亂碼解決
1:單文件亂碼解決方案
可通過Edit下Set Encoding設(shè)置。
2:修改Audit Workbench默認(rèn)編碼
找到d文件(D:devFortifyFortify_SCA_and_Apps_20.1.1Coreprivate-binawbd)在蕞后這一行末添加-Dfile.encoding=utf-8,以規(guī)定其eclipse.exe默認(rèn)使用utf-8編碼。
備注:d 在 Audit Workbench 的 d 文件內(nèi)可找到。
3:修改Fortify集成的eclipse默認(rèn)編碼
添加 fortify 的 eclipse 啟動(dòng)參數(shù) -Dfile.encoding=utf-8