安全 DevOps(DevSecOps)的目標之一是在開發過程之中建立安全測試。集成了自動化功能的安全測試,讓開發、QA 和安全團隊能更簡單地在不同的管道內同步運行,這使得安全測試成為測試堆棧的一部分,其頻率和集成度與單元、集成、兼容性和性能測試的相似。
自動化測試:大規模且并行不悖
將動態分析(DAST)與靜態分析(SAST)結合可實現更徹底的覆蓋,但動態自動化更為復雜。您可以建立自己的技術棧,或者直接借用已有的框架。使用其他企業作為 DevOps 實踐的一部分、已創建的測試自動化腳本/框架,您可以大大加速自動化進程。
? 將 WebInspect 自動化集成至現有的 DevOps 系統和流程,可支持同步并行、大規模的安全測試。
用于 WebInspect 的 Maven 插件
1) WebInspect 代理實例化;
2) 從集成測試中獲取流量;
3) 將代理流量保存為工作流宏(并關閉代理);
4) 配置一個新的掃描;
5) 運行該掃描。
WebInspect 自動化——一般工作流
自動化工作流程使用自動化工具構件,并通過以下步驟管理掃描生態系統:
A. 安全團隊通過自動化工具構件將安全掃描步驟設置為“安全任務”,并在構建和應用部署后調用;
B. 開發團隊向自動化工具構件提交代碼變更,在預定操作期之后,安全任務將在構建和應用部署完成后被觸發;
C. 完成安全任務后,自動化工具被設置為根據安全團隊定義的安全風險來通過或構建作業;
D. 安全漏洞發現被捕獲到 Fortify?SoftwareSecurity Center(SSC),從那里可以選擇通過 SSC 上的集成將它們轉移到錯誤庫。

圖 1. 基礎安全任務——WebInspect
基礎安全任務——WebInspect
1. 對 WebInspect 傳感器進行健康檢查,確保掃描儀可用于安排掃描;
2. 調用 WebInspect REST API/或命令行來啟動掃描。這涉及傳遞必要 URL、設置文件和登錄信息;
3. 對傳感器進行輪詢以檢查掃描的狀態,并在掃描完成后觸發下一個步驟;
4. 在掃描完成后,將結果作為 FPR 導出到包含 Fortify Client 的服務器,并通過 Fortify Client 上傳至 SSC。
WebBreaker
通過 GitHub 的 WebBreaker 工具解決動態應用安全測試協調(DASTO)問題。這一開源項目利用 WebInspect 實現了更大的敏捷性和靈活性,以為 SDLC 管道、Git 工作流等提供優化集成。

圖 2. 基礎安全任務——ScanCentral
基礎安全任務——ScanCentral DAST
Fortify ScanCentral DAST 讓動態安全掃描的協調和自動化水平上升至新高度。它能有效操作數百、數千次掃描。WebInspect Enterprise 客戶可以直接遷移到該平臺,并能夠與 Fortify ScanCentral SAST 互操作。使用 ScanCentral 一次掃描多應用的能力避免讓安全因素成為影響開發速度的瓶頸。
代理和 QA 自動化
自動化功能可以使用 QA 功能測試產生的工件(如 Selenium 腳本來自動進行 WI 掃描),其優點是:
A. 功能測試往往涉及到一連串操作,它們都有自相關的商業邏輯,但這不可能從盲目的 WebInspect 自動抓取中獲取并建模;
B. 利用功能測試期間使用登錄序列,而非創建單獨的 WebInspect 登錄宏程序的可能性。這涉及配置設置、將登錄頁面從 WI 抓取或審計中排除,以及在安全掃描期間不發生注銷等。

圖 3.?QA 安全任務——WebInspect
QA 安全任務——WebInspect
在基礎安全任務——WebInspect 中添加這些步驟:
1. 通過 REST API 啟動 WI 代理,并重放捕獲的 QA 工件以生成流量文件,將其保存為 WebMacro;
2. 使用命令行/REST API 修改默認設置,設置文件將被從步驟 1 的流量文件中保存的工作流程宏覆蓋。
有用的自動化索引
1. FoD BugTrackerUtility:完全自動化的命令行工具,用于將 SSC 和 FoD 漏洞批量提交給各種外部系統。
2.?WebInspect APIs
3.?Fortify 相關工件的 Maven 資源庫

圖 4. QA 安全任務——ScanCentral DAST
QA 安全任務——ScanCentral DAST
1. 與 WI 的附加步驟相同。對于不能訪問 WI 桌面來啟動代理的客戶,可以在 Fortify Marketplace 下載一個免許可證的代理實例;
2. 在創建設置文件后,啟動掃描的過程涉及《創建掃描指南》中的其他步驟。
云端自動化
另一用例是通過為 WI 部署傳感器在云中實現自動化,并以正進行的應用安全測試的規模動態擴展傳感器的部署:
1. 安全團隊訪問掃描請求管道并確定 N 個傳感器的擴展/縮減,并根據這一要求分配許可證;
2. 安全團隊使用所描述的一般工作流,然后循環執行步驟 1 和 2。

圖 5. 云安全任務——WebInspect 傳感器擴展
云安全任務——WebInspect 傳感器擴展
1. 將 WebInspect 安裝 MSI 放置于云存儲中并準備部署;[調用位置:cloud_memory]
2. 安全團隊調用云 API 來創建 Windows 實例,并使用該實例命令行 (C_Instance) 從 cloud_memory 進行 WebInspect 傳感器無頭模式的安裝;
3. 將必要的設置和宏文件部署于該實例;
4. 在命令行(C_Instance)中使用該實例的 WebInspect 的 REST APIs 觸發掃描;
5. 掃描完成后,將結果作為 FPR 導出至包含 Fortify Client 的服務器,并通過 Fortify Client 上傳至 SSC。

圖 6. 云端安全任務——ScanCentral DAST 傳感器調整規模
云端安全任務——ScanCentral DAST 傳感器調整規模
ScanCentral DAST 是一個可擴展的架構,通過多個容器化 WebInspect 版本(被稱為“傳感器”)來實現水平擴展,可以并行處理 JavaScript、DOM 渲染和其他活動。橫向擴展可大大減少掃描時間而不需要永久投入資源。因此,ScanCentral DAST 可以在極小時間內掃描相當大的應用,這使得整合至 CI/CD 管道和左移成為可能。SSC 可加載至應用、調度掃描,并設置掃描參數限制。所有這些都是通過容器化部署完成的,讓你能從此擁有多個傳感器。
(文章來源公眾號:MicroFocus)
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
關于億道電子
上海億道電子技術有限公司是國內資深的研發工具軟件提供商,公司成立于2009年,面向中國廣大的制造業客戶提供研發、設計、管理過程中使用的各種軟件開發工具,致力于幫助客戶提高研發管理效率、縮短產品設計周期,提升產品可靠性。
十多年來,先后與ARM、Altium、Ansys、QT、Green Hills、Minitab、EPLAN、QA Systems、OpenText、Visu-IT、HighTec、PLS、Ashling、MSC Software、Autodesk、Source Insight、IncrediBuild、Lauterbach、Adobe、Testplant、TeamEDA等多家全球知名公司建立戰略合作伙伴關系,并作為他們在中國區的主要分銷合作伙伴服務了數千家中國本土客戶,為客戶提供從芯片級開發工具、EDA設計工具、軟件編譯以及測試工具、結構設計工具、仿真工具、電氣設計工具、以及嵌入式GUI工具等等。億道電子憑借多年的經驗積累,真正的幫助客戶實現了讓研發更簡單、更可靠、更高效的目標。

歡迎關注“億道電子”公眾號
了解更多研發工具軟件知識

首頁 > 新聞資訊
