GSS 資安電子報0004期【軟體委外開發檢查表 】

在今日繁忙的商業競爭壓力下,軟體委外開發已經是一種不可或缺的解決方案

世界每天的步調變的越來越快和充滿競爭,您經常會在有限的時程與預算的壓力逼迫下,選擇轉向尋找外部的軟體開發者或服務廠商的支援協助,讓您在商業的競賽中保持領先。

幸好現在的環境,要取得軟體委外開發人員與服務廠商的障礙越來越少,軟體開發人員與服務廠商可以居住在世界各地,一樣可以為您做好軟體開發與線上服務的工作。好消息是資源現在到處都有,壞消息是您有責任要維護軟體安全和管理好這些人,但在一般的執行實務現況中,他們通常是超出您的掌控中,然後給您帶來麻煩。

是否你正在委外開發軟體或委外服務或委外維修,您的底限是允許他們協助撰寫程式碼與進行服務,但您必須要知道,您的客戶對有關軟體功能問題或是應用系統的安全漏洞,主要還是會針對簽訂合約的您,而不是您委外的廠商。

根據最近一次的Gartner 機構的調查報告,有超過百分之六十以上的公司,當他們在開發承包的委外軟體專案時,並沒有去做任何有關可以減少軟體安全漏洞風險的工作事項。

您允許委外的開發人員加入您的團隊,卻不要求他們撰寫安全的程式碼,然後對這些有惡意或不安全的程式碼漏洞束手無策,這樣是對的做法嗎?

一個減少軟體安全漏洞風險的簡單方法,是在委外合約中以條文形式要求委外廠商必須遵守程式碼安全撰寫的安全規範。 

當然,一旦您允許外部的應用程式在您的伺服器上執行或整合到您的WEB 應用伺服器中,要保證程式與資料的運作安全,不是一件簡單的事。但是,若是您採用一些軟體安全實務的作法,就可以儘可能地確保管控您的公司與客戶的資訊安全。

以下的十個軟體委外開發的檢查表,可以協助您提升軟體安全

軟體委外開發的十項檢查表

  • 要求軟體安全變成一種服務來提供,最好時間點就是在簽約之前談清楚。
  • 為了確保軟體安全的工作事項被執行,必須將軟體安全事項明列在合約(RFP)中。在合約的條文裡做具體並且詳述的要求,關於什麼安全標準你將接受或是什麼安全漏洞問題發現您將不接受。
    例如:
    不允許沒有加密的商業敏感性資料在應用系統中傳遞或程式碼(包含備註)中呈現。
    不允許有SQL 嵌入攻擊指令碼(SQL Injection)的安全漏洞問題。
    不允許有跨網站攻擊指令碼(Cross-Site Script)的安全漏洞問題。
  • 在你提供給委外廠商的程式撰寫規範,具體說明程式碼撰寫標準及軟體安全需求。
  • 要有可以重複驗證委外廠商程式碼安全漏洞的檢測報告。
  • 要求委外廠商,在程式碼交付之前,一定要使用自動化的程式碼安全檢測工具,檢查確定沒有合約規定的安全漏洞問題,才可以交付。
  • 當委外廠商要交付程式碼時,必須同時交付此程式碼完整的安全漏洞檢測報告。
  • 在第一次程式碼在執行環境中測試,優先要求所有的軟體安全需求都必須要符合合約規定,讓委外廠商提早養成程式碼安全撰寫習慣。
  • 對每一個要在您的伺服器上執行的程式碼,要有一個完整的程式碼安全漏洞審核過程。
  • 如果有提供外部服務連結現在的系統,也必須要對外部服務做軟體安全漏洞檢測。
  • 對於開發的程式碼、商業敏感性的數據資料與相關資源的存取權限處理,僅以最小的權限方式釋放給委外廠商使用。

源碼檢測工具可以幫助您管控您的委外軟體安全

原始碼檢測 軟體可以協助您及外包廠商一同遵循軟體安全的最佳實務作法來檢測軟體安全漏洞並減少軟體安全風險的發生,確保您的軟體程式碼與服務的安全。

幫助您提供一個有生產力與Web化的協同合作環境並整合了軟體安全的管控機制,讓您與外包廠商一同開發安全軟體。