2018年3月2日 星期五

[研究] Fortify SCA v17.20 Plugins for Visual Studio 和 Scan Wizard 掃描方式 優缺點比較

[研究] Fortify SCA v17.20 Plugins for Visual Studio 和 Scan Wizard 掃描方式 優缺點比較 

 2018-03-02

續這兩篇

[研究] Fortify SCA Plugin v17.20 for Visual Studio 2017 v15.5.7 白箱測試 (原始碼) 掃描

[研究] Fortify SCA v17.20 Scan Wizard  白箱測試 (源碼) 掃描

對 .NET 版本支援:Fortify Plugins for Visual Studio 支援 .NET 4.6.2、.NET 4.7.0,但無法掃描 .NET 4.7.1 的 CODE;Scan Wizard 可以掃 .NET 4.7.0 和 .NET 4.7.1,但是實際上用 .NET 4.6.2 方式掃描。

對 Visual Studio 支援:基本上,Visual Studio 大改版後,Plugins 無法立刻支援新版,要等數個月或一年後問世的 Fortify SCA Plugins 才會支援新版 Visual Studio,此時只能用 Scan Wizard。

編譯要求:某些對手產品,批評 Fortify SCA 的原始碼一定要經過編譯才能做掃描,這是不對的。Plugins for Visual Studio 需要,但是 Scan Wizard 則非必須,而且 Scan Wizard 預設是不需要編譯 (也可勾選)。而且能編譯的原始碼才完整,掃描結果比較準確。

部分檔案的掃瞄:Fortify Plugins for Visual Studio 掃描前會進行編譯,所以無法對單一程式檔案 ( .aspx + .aspx.cs + .aspx.designer.cs ) 進行掃描;但是 Scan Wizard 可以。對於較大方案,若只有其中幾個有問題,修改後可以單獨對這幾個先掃描,確認沒問題後,在進行整個方案的掃瞄。

記憶體要求:Fortify Plugins for Visual Studio 多了 Visual Studio 和 Plugins 存在,記憶體要求會比 Scan Wizard 多一點。

CPU 要求:Fortify Plugins for Visual Studio 多了 Visual Studio,CPU 要求會比 Scan Wizard 多一點。

從專案中排除:Fortify Plugins for Visual Studio 對於從方案中排除的檔案,不會進行掃描 (實際測試過),使用上比較方便;Scan Wizard 對目錄中所有檔案,預設都是勾選,要排除要自己手動逐一勾選,如果方案中檔案很多,而且是排除留作參考的,勾選起來會很累,甚至也不記得那些是排除的。
(敝人有方案排除過一堆留做參考的檔案,結果 Plugins for Visual Studio 掃描 4 天未掃描完,中斷,改用 Scan Wizard + Quick Scan 結果把那一堆都拿去掃描,結果就很悲劇 )。


Quick Scan 快速掃描:Fortify Plugins for Visual Studio 沒有此選項,Scan Wizard 有提供。

根據 v17.20 官方手冊內容:
Quick Scan searches for high-confidence, high-severity issues only.
(快速掃描僅搜索高可信度,高嚴重性問題。)

建議把 Quick Scan 勾選起來,Quick Scan 發現的問題全部修正後,再用沒 Quick Scan 模式掃,不然有可能重複非常多。

v17.20 某方案實際測試,沒勾約花 4 小時,High 項目超過萬個 (不過很多被相依的來源問題點重複),pdf 報告產生花了 12 小時 (快瘋了);有勾 Quick Scan,約花十幾分鐘,High 不超過百個,pdf 產生幾分鐘。

在官方某文件中,建議同時被掃描的每個專案有 16 GB RAM (同時掃兩個就 32 GB RAM),且每個方案能在兩小時內完成為準,否則建議評估提升硬體改善效能。(實際雖未必要照此建議,但仍要考慮有多少人共用此軟體,一個方案能讓你掃描多久,避免耽誤其他的使用者;就算個人專用一套,掃一套花了幾天,工作都 idle 在那也不行。)

詳細掃描參數調整:Scan Wizard 會產生 .bat,可以手動修改參數,Fortify Plugins for Visual Studio 雖然有選項畫面可以變更設定,但是應該沒那麼多種設定。

準確度:白箱測試基本上不是 100% 準確的測試,會有誤判。敝人覺得 Fortify Plugins for Visual Studio 掃描會比 Scan Wizard 要準,但是條件要求較多 (需要能編譯、.NET 版本要支援,否則可能連掃描都無法做),花費時間也較多。

(待續)

相關

[研究] Fortify SCA Plugin v17.20 for Visual Studio 2017 v15.5.7 白箱測試 (原始碼) 掃描

[研究] Fortify SCA v17.20 Scan Wizard  白箱測試 (源碼) 掃描
http://shaurong.blogspot.com/2018/03/fortify-sca-v1720-scan-wizard.html

[研究] Fortify SCA v17.20 Plugins for Visual Studio 和 Scan Wizard 掃描方式 優缺點比較
http://shaurong.blogspot.com/2018/03/fortify-sca-v1720-plugins-for-visual.html

沒有留言:

張貼留言