fortifysca-fig-01在軟體發展過程中,如果可以愈早發現軟體的弱點及睱疵,就愈能降低因修補所帶來的負面影響與付出的額外成本。而程式源碼之自動化檢測與分析工具,可以有效、完整及精確地協助開發人員找出程式碼中的弱點,讓開發人員可以看到安全弱點所在位置,並排定弱點的優先次序進行修補,避免相同弱點再度發生在其他程式碼中。

Fortify SCA(Static Code Analyzer)便可以協助你滿足應用程式安全檢測與分析所有需求。

 

程式碼靜態分析專利技術

Fortify SCA採用專利的X-Tier資料流程分析技術,完整分析各種程式語言之執行流程、資料輸入/輸出及程式語法,即使同一個應用系統中包含了不同語言的程式 碼,也可以完整分析及串接。透過HP持續更新的檢查規則(Rulepack),讓最新的弱點可以被發現並修補,使用者也可以自行定義分析規則,針對特殊程 式撰寫規範或要求進行檢查。

三階段分析技術原理:

fortifysca-fig-03
圖1 Fortify SCA靜態分析技術
  1. 轉譯階段(Translation Phase)
    將各類不同的程式語言轉譯成分析引擎可以分析的中繼語言(Metaleangeage)。
  2. 分析階段(Analysis Phase)
    依據內建或自行定義的檢查規則分析中繼語言中是否有符合條件的安全弱點或品質睱疵。
  3. 稽核階段(Audit Phase)
    呈現分析後的結果,讓稽核人員或開發人員可以很容易地瞭解所發現的問題,並確認是否應進行修補。

 

全面完整的分析結果呈現

fortifysca-fig-04
圖2 Fortify SCA檢測結果分析界面

在檢測結果分析畫面中,可以很彈性性的改變弱點分類及過濾的方法與條件,讓弱點分析及審查人員可以用不同的角度來析發現的弱點,促進弱點修補的效率。

 

支援最完整的程式語言

目前 Fortify SCA可以支援超過20種以上的程式語言,包含:

  • Microsoft系列:ASP.Net、VB.Net、C#.Net、ASP、VBScript、VB6。
  • Apple Mac系列:Objective-C、Action Script。
  • Java系列:Java、JSP。
  • 其他Web系列:HTML、 JavaScript、PHP、XML、ColdFusion 5.0、Python。
  • Database系列:T-SQL(MSSQL DB)、PL/SQL(Oracle DB)。
  • 傳統第二代語言:C/C++、COBOL。
  • SAP系列:ABAP/BSP。
  • 行動APP系列:Objective-C(iPhone)、Java(Android)、C#.Net(WinPhone)

 

支援最廣泛的程式碼問題偵測

目前 Fortify SCA可檢測超過480種的軟體弱點,包含:程式安全與品質類型的偵測規則。例如:

  • Input Validation類型:SQL Injection、Cross-Site Scripting、Resource Injection、Open Redirect等。
  • Security Features類型:Password Management、Insecure Randomness、Weak Encryption等。
  • Error Handling類型:Poor Error Handling等。
  • API Abuse類型:Code  Correctness、Missing Check againt Null、Dangerous Method等。
  • Code Quality類型:Dead Code、Unrelease Resourse等。
  • Environment類型:Misconfiguration等。

上述各種類型中已包含OWASP 2007OWASP 2010等Top 10弱點。

詳細內容可參考: Fortify Tanxonmy: Software Security Errors. 

自動判斷問題嚴重程度

Fortify SCA會將發現的安全弱點,依據弱點嚴重性(Impact)與弱點被揭露的可能性(Likelihood),進行嚴重等級分類,可以讓稽核人員及開發人員明確清楚修補的優先順序。
  • Likelihood:問題準確度的可能性。
  • Impact :問題對部門或企業的影響衝擊性

 

 

完整詳細的應用程式弱點檢測報告

fortifysca-fig-05
圖3 Fortify SCA中文化報表範例

在SCA的弱點報表中,包含弱點的說明、修補的建議及弱點發生的位置(檔案名稱、程式行數),讓開發人員可以快速對應到弱點的位置及修補的建議方法。

 

産品效益

  • 自動化檢測提升檢測效率。
  • 提早發現安全弱點早期修補,降低上線後修補的問題與成本。
  • 確保應用程式安全與品質,提升應用程式的安全性與穩定性。
  • 矯正開發人員程式撰寫習慣。
  • 提供量化數據來代表軟體品質與差異。
  • 確保委外開發軟體的安全品質。

相關連結

  • Fortify SCA 原廠 
  • 如您有本產品更進一步需求,請聯繫 Email住址會使用灌水程式保護機制。你需要啟動Javascript才能觀看它