FortifySCA安裝使用手冊(cè)_第1頁(yè)
FortifySCA安裝使用手冊(cè)_第2頁(yè)
FortifySCA安裝使用手冊(cè)_第3頁(yè)
FortifySCA安裝使用手冊(cè)_第4頁(yè)
FortifySCA安裝使用手冊(cè)_第5頁(yè)
已閱讀5頁(yè),還剩16頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、Fortify SCA 安裝使用手冊(cè)目錄1. 產(chǎn)品說明51.1. 特性說明51.2. 產(chǎn)品更新說明52. 安裝說明62.1. 安裝所需的文件62.2. Fortify SCA支持的系統(tǒng)平臺(tái)62.3. 支持的語(yǔ)言62.4. Fortify SCA的插件72.5. Fortify SCA支持的編譯器72.6. Fortify SCA在windows上安裝82.7. Fortify SCA安裝Eclispe插件92.8. Fortify SCA在linux上的安裝(要有l(wèi)inux版本的安裝文件)92.9. Fortify SCA在Unix上的安裝(要有Unix版本的安裝文件)103. 使用說明113

2、.1. Fortify SCA 掃描指南113.2. 分析Fortitfy SCA掃描的結(jié)果164故障修復(fù)204.1使用日志文件去調(diào)試問題204.2轉(zhuǎn)換失敗的信息20如果你的C/C+ 應(yīng)用程序能夠成功構(gòu)建,但是當(dāng)使用Fortify SCA 來進(jìn)行構(gòu)建的時(shí)候卻發(fā)現(xiàn)一個(gè)或者多個(gè)“轉(zhuǎn)換失敗”的信息,這時(shí)你需要編輯/Core/config/perties 文件來修改下面的這些行:20com.fortify.sca.cpfe.options= -remove_unneeded_entities -suppress_vtbl20to20com.fortify.sca.cpfe

3、.options=-w -remove_unneeded_entities -20suppress_vtbl20重新執(zhí)行構(gòu)建,打印出轉(zhuǎn)換器遇到的錯(cuò)誤。如果輸出的結(jié)果表明了在你的編譯器和Fortify 轉(zhuǎn)換器之間存在沖突204.3JSP的轉(zhuǎn)換失敗204.4 C/C+ 預(yù)編譯的頭文件21前言Fortify SCA是目前業(yè)界最為全面的源代碼白盒安全測(cè)試工具,它能精確定位到代碼級(jí)的安全問題,完全自動(dòng)化的完成測(cè)試,最廣泛的安全漏洞規(guī)則,多維度的分析源代碼的安全問題。文檔約定本手冊(cè)使用以下約定, 以區(qū)分手冊(cè)中其它部分。約定表示含義粗體字“粗體新宋體”:表示截圖中的按鈕或是選項(xiàng)。如:點(diǎn)擊保存按紐“右箭頭”:

4、用在兩個(gè)或多個(gè)詞語(yǔ)之間,表示分級(jí),左邊的內(nèi)容是右邊的上一級(jí)。如:文件打開l“圓點(diǎn)”:表示同級(jí)的并列選項(xiàng)或是屬性。1,2,3“粗體數(shù)字”:表示一個(gè)過程中步驟?!熬妗?說明需要注意的事項(xiàng)?!疤崾尽保罕硎靖郊拥恼f明性文字。編寫約定指編寫用戶手冊(cè)的規(guī)范和注意事項(xiàng),編寫人員在手冊(cè)完成后應(yīng)刪除該篇約定。l 關(guān)于截圖n 為使敘述更加明確、簡(jiǎn)潔,應(yīng)避免不必要的截圖。指可以用語(yǔ)言敘述清楚其操作方法的界面。如:拉菜單、快捷菜單等可以避免截圖。n 圖片應(yīng)盡量精準(zhǔn),不要留白邊,和避免出現(xiàn)不相關(guān)的圖標(biāo)。如:輸入法工具欄等。l 關(guān)于斜體字表示可變化的名稱或是術(shù)語(yǔ),編寫手冊(cè)時(shí)應(yīng)用具體內(nèi)容替換。l 關(guān)于說明補(bǔ)充說明某一章/

5、節(jié)中需描述的內(nèi)容,提供了供參考的內(nèi)容細(xì)則。手冊(cè)編寫完成后應(yīng)刪除此部分內(nèi)容。l 關(guān)于示例具體實(shí)例輔助說明某一章/節(jié)的內(nèi)容范圍和格式。手冊(cè)完成后應(yīng)刪除此部分內(nèi)容。l 關(guān)于分級(jí)下分一級(jí)用圓點(diǎn)表示,具體分級(jí)設(shè)置請(qǐng)參照公司文檔編寫規(guī)范。1. 產(chǎn)品說明Fortify SCA(靜態(tài)代碼分析器)是組成Fortify360系列產(chǎn)品之一,SCA工作在開發(fā)階段,以用于分析應(yīng)用程序的源代碼是否存在安全漏洞。它不但能夠發(fā)現(xiàn)只能在靜態(tài)情況下才能發(fā)現(xiàn)的新的漏洞,而且也能在測(cè)試和產(chǎn)品階段驗(yàn)證已經(jīng)發(fā)現(xiàn)的漏洞。1.1. 特性說明Fortify SCA主要的特性和優(yōu)點(diǎn)如下:1.業(yè)務(wù)最完整的靜態(tài)代碼分析器,以最大和最全面的安全編碼規(guī)

6、則為基礎(chǔ),而且這些規(guī)則可以不斷地進(jìn)行更新,以適應(yīng)新的軟件安全漏洞2.跨層跨語(yǔ)言地分析代碼的漏洞產(chǎn)生,目前支持所有的主流開發(fā)語(yǔ)言3.在確認(rèn)安全漏洞上有十分高的準(zhǔn)確性4.可以精確地定位漏洞產(chǎn)生的全路徑,方便開發(fā)人員對(duì)漏洞進(jìn)行修復(fù)5.支持多種軟件開發(fā)平臺(tái)1.2. 產(chǎn)品更新說明名稱版本發(fā)布日期功能修改說明Fortify SCAV2.02. 安裝說明2.1. 安裝所需的文件1Fortify SCA的安裝文件2Fortify license(即安裝授權(quán)文件)3Fortify的規(guī)則庫(kù)文件(可在線下載最新的規(guī)則庫(kù))4要安裝插件的IDE (例如eclispe3.2,3.3;VS2003,2005;RAD7;RS

7、D7)2.2. Fortify SCA支持的系統(tǒng)平臺(tái)2.3. 支持的語(yǔ)言2.4. Fortify SCA的插件2.5. Fortify SCA支持的編譯器2.6. Fortify SCA在windows上安裝1 雙擊安裝包中的Fortify-360-21.0-Analyzers_and_Apps-Windows-x86.exe即可安裝2 選擇Fortify提供的授權(quán)文件所在路徑(即安裝包下的fotify_rule文件夾,該文件夾下有fortify.license),點(diǎn)擊NEXT按鈕3 選擇相應(yīng)的安裝路徑,點(diǎn)擊NEXT按鈕4 選擇相應(yīng)的組件進(jìn)行安裝,在此處請(qǐng)注意,fortify默認(rèn)不安裝IDE插

8、件,如果需要安裝相應(yīng)的IDE插件,如圖所示:在此處我選擇了基于eclipse3.x,VS2005的插件(選擇安裝VS的插件之前,得首先安裝VS的IDE),然后點(diǎn)擊NEXT按鈕5 再點(diǎn)擊NEXT按鈕即可完成安裝6 添加相應(yīng)的規(guī)則庫(kù),可直接聯(lián)網(wǎng)下載最新的規(guī)則庫(kù),或是將安裝包下的fotify_rule文件夾下rules_ZH.rar解壓縮到fortify安裝目錄下的Coreconfigrules位置7 安裝完成后把系統(tǒng)時(shí)間改成2008年,方可正常使用.2.7. Fortify SCA安裝Eclispe插件2.8. Fortify SCA在linux上的安裝(要有l(wèi)inux版本的安裝文件)2.9. F

9、ortify SCA在Unix上的安裝(要有Unix版本的安裝文件)3. 使用說明Fortify SCA掃描方式:1IDE插件方式2命令行3Audit Workbench掃描目錄4與構(gòu)建工具集成(ant ,makefile)5SCA build monitor(c/c+ windows only)下面主要是介紹常用的兩種掃描方式:IDE插件方式,以及命令行方式3.1. Fortify SCA 掃描指南3.1.1 Eclipse插件方式掃描1.1首先你得正確安裝fortify sca的插件,具體安裝方法見前面所述的安裝指南;安裝成功后的ide界面如圖所示,會(huì)有一個(gè)圖標(biāo)1.2導(dǎo)入所要進(jìn)行源碼安全測(cè)

10、試的項(xiàng)目,成功導(dǎo)入之后會(huì)顯示以上界面右邊的Package Expl里面1.3左鍵選中該項(xiàng)目,然后點(diǎn)擊,就可以進(jìn)行掃描了;或者是右鍵點(diǎn)擊該項(xiàng)目,彈出選項(xiàng)菜單,選中Analyze source code of project就可以進(jìn)行掃描.3.1.2 Audit Audit Workbench掃描目錄2.1首先在開始菜單-所有程序-Fortify Software-Fortify 360 v2.0-Audit Workbench,啟動(dòng)Audit Workbench,界面如下2.2建議采用Advanced Scan,然后選中要掃描的目錄,點(diǎn)擊確定按鈕即可掃描3.1.3 命令行方式掃描Java 命令行

11、語(yǔ)法這個(gè)主題描述了為Java 翻譯源代碼的Fortify SCA 命令語(yǔ)法。基本的Java 命令行語(yǔ)法是:sourceanalyzer -b -cp 有了Java 代碼, Fortify SCA 既可以仿效編譯程序(它使得構(gòu)造結(jié)合很方便),也可以直接接受源文件(它使命令行掃描更方便)。注意:有關(guān)所有你能使用的帶有sourceanalyzer 命令的選項(xiàng),請(qǐng)查看第33 頁(yè)的“命令行選項(xiàng)”。使Fortify SCA 仿效編譯程序,輸入:sourceanalyzer -b javac 直接傳文件到Fortify SCA,輸入:sourceanalyzer -b -cp |這里:是傳到編譯程序的選項(xiàng)。

12、-cp 具體指定Classpath 來用在Java 源代碼中。Classpath 是一個(gè)構(gòu)造目錄和 jar 文件的列表。格式和javac 所預(yù)期的相同(路徑的冒號(hào)或獨(dú)立的分號(hào)的列表)。你可以使用Fortify SCA 文件說明符。-cp build/classes:lib/*.jar注意:如果你沒有使用選項(xiàng)來具體指定classpath, CLASSPATH 環(huán)境變量將被使用。 | 文件說明符允許你容易地通過一個(gè)長(zhǎng)文件列表到Fortify SCA 使用通配符。Fortify SCA 能識(shí)別兩種類型的通配符:* 匹配部分文件名 , * 遞歸地匹配目錄。你可以指定一個(gè)或更多的文件,一個(gè)或更多的文件說

13、明符,或文件和文件說明符的結(jié)合。Java 命令行例子在classpath 上用j2ee.jar 翻譯一個(gè)命名為MyServlet.java 的文件,輸入:sourceanalyzer -b MyServlet -cp lib/j2ee.jar MyServlet.java用lib 目錄中所有jar 文件作為classpath 在src 目錄中翻譯所有的.java 文件:sourceanalyzer -b MyProject -cp lib/*.jar src/*/*.java當(dāng)運(yùn)行javac 編譯程序時(shí),翻譯MyCode.java 文件:sourceanalyzer -b mybuild ja

14、vac -classpath libs.jar MyCode.javaJ2EE項(xiàng)目轉(zhuǎn)換的簡(jiǎn)單示例把項(xiàng)目的所有文件和庫(kù)都放在一個(gè)目錄下,運(yùn)行下面的命令:. sourceanalyzer -Xmx1000m -b pName -encoding UTF-8 -cp */*.jar . sourceanalyzer -Xmx1000m -b pName -appserver weblogic -appserver-verion 9 appserver-home “d:beawebloigcserverlib”-encoding UTF-8 -cp */*.jar翻譯JSP 文件要翻譯JSP 文件,

15、Fortify SCA 需要JSP 文件遵循標(biāo)準(zhǔn)的Web Application Archive (WAR) 設(shè)計(jì)格式。如果你的源目錄已經(jīng)以WAR 格式組織了,那么你可以直接從源目錄中翻譯JSP 文件。如果情況不是這樣的,那么你需要展開應(yīng)用程序并從展開目錄中翻譯你的JSP 文件。如果你的JSP 文件使用了任何標(biāo)簽庫(kù),例如JSTL,確保庫(kù)的jar 文件在 WEB-INF/lib 目錄中。否則JSP 編譯程序?qū)⒉惶幚順?biāo)簽庫(kù),可能產(chǎn)生錯(cuò)誤的結(jié)果。默認(rèn)地,在翻譯程序段期間, Fortify SCA 使用一個(gè)Jasper JSP 編譯程序的版本來編譯JSP 文件到Java 文件中去。然而,如果你的web

16、 應(yīng)用程序是特別為了某個(gè)應(yīng)用程序服務(wù)器而開發(fā)的,那么當(dāng)執(zhí)行翻譯時(shí),你必須為那個(gè)應(yīng)用程序服務(wù)器使用JSP 編譯程序。為了支持它, Fortify SCA 提供了以下命令行選項(xiàng): -appserver 支持變量:weblogic/websphere -appserver-home有關(guān)Weblogic:到目錄的路徑包含server/lib 目錄有關(guān)WebSphere:到目錄的路徑包含bin/JspBatchCompiler 腳本 -appserver-version 支持變量:Weblogic 版本7 和8WebSphere 版本6如果你在使用一個(gè)沒有被列出來的應(yīng)用程序服務(wù)器,使用默認(rèn)內(nèi)部Forti

17、fy JSP 編譯程序。例如:sourceanalyzer -b my_buildid -cp WEB-INF/lib/*.jar WEB-INF/*/*.jsp使用FindBugsFindBugs() 是一個(gè)靜態(tài)分析工具,它在Java 代碼中檢測(cè)質(zhì)量問題。你可以和Fortify SCA 一起使用FindBugs,結(jié)果會(huì)被合并到分析結(jié)果文件中。與Fortify SCA 運(yùn)行在Java 源文件中不同, FindBugs 運(yùn)行在Java 字節(jié)碼中。因此,在項(xiàng)目中運(yùn)行分析之前,你應(yīng)該首先編譯項(xiàng)目產(chǎn)生類文件。為了示范如何與Fortify SCA 一起自動(dòng)地運(yùn)行FindBugs,編譯例子代碼, Warn

18、ing.java,如下:1. 定位到以下目錄:/Samples/advanced/findbugs2. 輸入以下命令并編譯例子:mkdir buildjavac -d build Warning.java3. 用FindBugs 和Fortify SCA 掃描例子,如下:sourceanalyzer -b findbugs_sample -java-build-dir build Warning.javasourceanalyzer -b findbugs_sample -scan -findbugs -f findbugs_sample.fpr4. 檢查早Fortify Audit Work

19、bench 中的分析結(jié)果:auditworkbench findbugs_sample.fpr輸出包括了以下問題類別: Object model violation Dead local store Equal objects must have equal hashcodes Useless self-assignment (2) Unwritten field (2)翻譯 C/C+ 代碼翻譯一個(gè)文擋所用的基本命令行語(yǔ)法是:sourceanalyzer -b 其中: 是在項(xiàng)目創(chuàng)建掃描之時(shí),你想使用的編譯器的名字。比 gcc 或者是 cl。 是傳遞到典型編譯文擋的編譯器的選項(xiàng)。C 和C+ 命令

20、行舉例以下是一些簡(jiǎn)單的可用范例:使用 gcc 編譯器,翻譯一個(gè)名為 helloworld.c 的文件,鍵入:sourceanalyzer -b my_buildid gcc helloworld.c結(jié)合 Make你可以使用以下方法中的其中一項(xiàng)去結(jié)合Make 使用 Fortify SCA: 無入侵式的集成 入侵式的集成(修改一個(gè)Makefile 去調(diào)用Fortify SCA)使用無入侵式的集成,運(yùn)行以下命令:sourceanalyzer -b makeFortify SCA 運(yùn)行 make 命令。當(dāng)make 調(diào)用了任意被 Fortify SCA 認(rèn)作為是一個(gè)編譯器的命令,這個(gè)命令就會(huì)被 Fort

21、ify SCA 處理。注意makefile 不會(huì)被修改。這個(gè)構(gòu)建集成的方法不局限于make。任何一個(gè)執(zhí)行編譯器處理的構(gòu)建命令可以被用到系統(tǒng)里去;只要拿去運(yùn)行一個(gè)構(gòu)建的命令來替代以上命令中的make 部分。如果不是已經(jīng)存在的話,你可能必須為你的構(gòu)建工具添加一個(gè)條目進(jìn) /Core/config/perties。比如,結(jié)合一個(gè)名為dobuild 的構(gòu)建腳本,添加以下到perties 里去:pilers.dobuild =pilers.TouchlessCompiler注意: Fortify touchless build adapter 會(huì)

22、表現(xiàn)異常,如果: 構(gòu)建腳本給編譯器調(diào)用了一個(gè)完整路徑,或者如果構(gòu)建腳本拒絕可執(zhí)行搜索路徑。 構(gòu)建腳本沒有創(chuàng)建一個(gè)新的進(jìn)程去運(yùn)行編譯器。許多Java 構(gòu)造工具,包括Ant,都以這種方式運(yùn)行。入侵式的集成, 運(yùn)行以下命令:修改一個(gè)makefile 去調(diào)用 Fortify SCA,代替任何一個(gè)鏈接,被調(diào)用到編譯器,文件,或者是makefile 和Fortify SCA 里。這些工具在makefile 中一個(gè)特殊變量中被特別指明,如以下范例所示:CC=gccCXX=g+AR=ar這個(gè)步驟可以像這些 makefile 里提及的的工具、Fortify SCA,和一些適當(dāng)選項(xiàng)一樣簡(jiǎn)單。CC=sourcean

23、alyzer -b mybuild -c gccCXX=sourceanalyzer -b mybuild -c g+AR=sourceanalyzer -b mybuild -c arVC6.0項(xiàng)目的轉(zhuǎn)換與分析示例.sourceanalyzer -b my_buildid c msdev MyProject.dsp /Make /BUILD .sourceanalyzer -b my_buildid scan f xx.fpr3.2. 分析Fortitfy SCA掃描的結(jié)果1. 審計(jì)結(jié)果的基本概念審計(jì):將Fortify SCA 掃描分析出來的結(jié)果中的漏洞進(jìn)行審查,分析,定性,指導(dǎo)開發(fā)人員進(jìn)行

24、漏洞的修復(fù)工作。Hide/Suppress/Suspicious/Not An Issue四個(gè)的不同Hide: 是將此漏洞不顯示出來,在報(bào)告中也不顯示出來Suppress:是此漏洞不是問題,可以不用看的Suspicious: 是審計(jì)的一個(gè)定性,這個(gè)問題有可能是真的,值得懷疑。Not An Issue: 也是審計(jì)的一個(gè)定性,說明這一漏洞不是個(gè)問題。2. 首先是將掃描結(jié)果導(dǎo)成后綴為fpr文件,然后用Audit WorkBench打開該文件,界面如下所示3. 驗(yàn)證測(cè)試結(jié)果的正確性,有效性(包括application,project,build information,analysis informa

25、tion)4. 將(Group By)分組方式選擇為按Category(漏洞種類)分組,這也是最常用的分組方式,然后在下面對(duì)相應(yīng)的漏洞進(jìn)行定性,審記;所圖所示5. 可以跟蹤該漏洞產(chǎn)生的全路徑,有兩種方式跟蹤,建議采用第二種圖表方式,比較直觀;6. 選擇下面選項(xiàng)卡中Detail,Recommandation,可以獲得相應(yīng)的漏洞的詳細(xì)說明,以及推薦的解決辦法;如圖所示:7. 導(dǎo)出經(jīng)過審計(jì),定性的掃描結(jié)果的報(bào)表,可以有兩種格式,一種是HTML,一種是PDF;如圖所示:4故障修復(fù)4.1使用日志文件去調(diào)試問題當(dāng)你在運(yùn)行Fortify SCA 的時(shí)候,如果遇到了警告或者問題,可以使用-debug 選項(xiàng)再次

26、運(yùn)行Fortify SCA。這會(huì)在下面的路徑中生成一個(gè)叫做sca.log 的文件。 在Windows 平臺(tái)上: C:Documents and SettingsLocalSettingsApplication DataFortifyscalog 在其它的平臺(tái)上: $HOME/.fortify/sca4.5/log4.2轉(zhuǎn)換失敗的信息如果你的C/C+ 應(yīng)用程序能夠成功構(gòu)建,但是當(dāng)使用Fortify SCA 來進(jìn)行構(gòu)建的時(shí)候卻發(fā)現(xiàn)一個(gè)或者多個(gè)“轉(zhuǎn)換失敗”的信息,這時(shí)你需要編輯/Core/config/perties 文件來修改下面的這些行:com.fortify.sca.cpfe.options= -remove_unneeded_entities -suppress_vtbltocom.fortify.sca.cpfe.options=-w -remove_unneeded_entities -suppress_vtbl重新執(zhí)行構(gòu)建,打

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論