GitHub進階安全性簡介
GitHub Advanced Security (GHAS) 是一套完整的安全性功能,旨在增強軟體開發專案的安全性態勢。 除了與 GitHub 緊密整合之外, GHAS 也可作為 Azure DevOps 的延伸模組,在兩個平台上提供類似功能。
雖然 GHAS 並非設計用於直接衡量技術債務,但其功能可大幅促進其探索和補救。 GHAS 提供程式碼分析、相依性管理和進階程式碼檢閱,以及安全性掃描服務,例如程式碼掃描、秘密掃描和相依性掃描。 GHAS 也提供詳細的深入解析和建議,以協助設定優先權並解決安全性弱點。
藉由利用這些功能,組織可以在開發生命週期早期主動識別並解決技術債務。 這樣可降低安全性風險、提高程式碼品質,並協助其軟體專案的長期維護性。
CodeQL 分析
CodeQL 是語意程式碼分析引擎,可協助開發人員識別其程式碼基底內的問題。 其提供宣告式查詢語言,其設計目的是搜尋有助於識別程式碼錯誤和設計缺陷的模式,這一切都有助於累積技術債務。 其分析功能也可以用來偵測潛在的安全性弱點,例如插入缺陷、驗證問題和存取控制問題,而這些項目通常表示基礎技術債務。
相依性管理
相依性管理對於管理與過時或易受攻擊相依性相關聯的技術債務至關重要。 GHAS 相依性掃描會提供專案相依性的可見度,包括過時套件、安全性弱點和授權問題的相關資訊。 Dependabot 可以自動更新具有安全性弱點的相依性,協助您將程式碼基底保持在最新狀態和確保安全。
程式碼掃描
程式碼掃描會使用靜態分析技術的組合,自動掃描程式碼存放庫是否有潛在的安全性弱點和編碼錯誤,包括程式碼異味和反模式。 其會偵測常見的安全性問題,例如跨網站指令碼 (XSS)、SQL 插入和緩衝區溢位,這類似於 CodeQL 型分析,通常表示因不安全的編碼做法而產生的技術債務。 此外,安全性程式碼掃描提供程式碼品質和安全性風險的可採取動作深入解析,以最有效率且最有效的方式協助設定優先權並解決技術債務。