• Web Security 24.09.2014

    SAMM Construction

    資訊安全  – 開發面

    延續 SAMM (Software Assurance Maturity Model ),專案開發需要注意哪些項目呢?

    開發的過程主要參予的人員不外乎為研發團隊 (project managers, RD/QA)

    根據 SAMM 的建議,開發的過程中,在資訊安全的部分,主要有下列三個方向可以考慮:

    1. Threat Assessment (TA)  風險評估

    2. Security Requirements (SR) 資訊安全需求

    3. Secure Architecture (SA) 資訊安全架構

     

    接這讓我們分別看這三個方向,有哪一些具體的工作要執行

    1. Threat Assessment (TA)  風險評估

    每個軟體系統在執行時,潛在所可能帶來的風險為何?

    例如:該系統在做密碼傳輸時,是否有加密? 是否有被中途截取或是修改的可能性?

    TA 又分為三個階段

    • TA 1: 建立適當的威脅模型 (例如:登入的功能,潛在的威脅有密碼明文傳送、密碼cookie被盜用等..) + 建立駭客攻擊的模型
    • TA2: 建立潛在可能被濫用的模型 + 將威脅的類型案權重計算
    • TA3: 評估第三方工具使用的安全威脅 + 威脅模型與資訊安全控制

    以筆者公司為例,我們會針對每個產品所使用的 library,

    去檢查是否有已知的 CVE (Common Vulnerability Exploit),

    如果有重大的CVE,就必須要針對該 lib做更新

     

    2. Security Requirements (SR) 資訊安全需求

    這點指的是軟體的功能應該如何達到資訊安全的需求

    例如:密碼的複雜度,至少為8個字元。其中必須包含英文與數字等。

    • SR1: 從功能面定義資訊安全需求(例如密碼強度) + 評估資訊安全準則的需求 (例如:電子商務網站就必須符合PCI規範)
    • SR2: 建立控制的機制 + 針對已知的風險建立資訊安全需求(例如:敏感性資料一律用HTTPS/SSL加密的方式傳輸)
    • SR3: 將資訊安全規範導入至上下游供應商 + 資訊安全稽核

    由於有些公司的軟體或是開發工作為外包,所以就必須將這樣的資訊安全需求列入考量

    相關的資訊安全稽核也應該包含軟體需求分析的階段。

    例如:密碼的強度的規範、資料的加密傳輸、權限的管理、非法字元的檢查等。

     

    3. Secure Architecture (SA) 資訊安全架構

    整體的資訊安全架構,

    例如:帳號密法的驗證,都透過 Active Directory 整合方式進行。

    例如:資料的傳輸都是透過 SSL / HTTS 等

     

    Posted by Tony @ 9:56 pm

    Tags: , , , , , , , ,

  • Leave a Reply

    Your email address will not be published.