GSS 資安電子報0008期【建立與管理軟體安全開發生命週期 】

 

一個好的軟體設計自然會具備軟體安全的設計

當企業的軟體工程是做對的時候,從軟體的開發初期程序和其他所有的程序都會將軟體安全設計在內,並支援及強制要求要遵循軟體安全開發指南。你的專案經理相信軟體安全與產品的品質需求是不可分離的,並且執行軟體安全管控政策,軟體必須通過軟體安全檢測的最低標準門檻時才能夠被發佈,否則是禁止發佈的。軟體開發人員的績效考核項目是依據他們遵循軟體安全開發指南的度量數據。資安長會全程監控軟體安全開發生命週期的所有發生的安全問題。

上述的情境,聽起來像個夢嗎?

令人遺憾,目前能夠做到上述有關執行軟體安全情境描述的企業是非常稀有的。目前很少有企業會將軟體安全的執行步驟與他們的軟體開發生命週期做整合。

一旦建好要改變大樓的地基是很困難的

這樣的事情是經常發生的,軟體安全是在軟體開發完成後再添加進來的東西。目前一般的軟體開發現況也經常是如此,當軟體發佈期限的逼近,經常迫使沒達到軟體安全標準條件的軟體就發佈。軟體安全在目前的軟體開發現況是經常容易變成擱置不處理的項目。

在企業的資安長對於企業軟體安全是要負責任的,但面對上述的情況卻沒有實際的權力管控軟體發佈的門檻標準。

面對這樣的情況,企業的資安長要有什麼樣的對策呢?

Fortify 建議的10個對策檢查表

  • 對於軟體安全有責任的軟體開發團隊,必須要求要遵循軟體安全開發標準,清楚地定義軟體安全開發程序與各開發階段的軟體安全度量指標,並且要將各開發階段的軟體安全度量指標變成管控各階度產出是否完成的門檻條件之ㄧ。
  • 在軟體安全開發生命週期中,有系統地將軟體安全與隱私資料安全,當做開發過程中的重要產出項目,這樣軟體開發管理者就有責任要在開發程序中管控好軟體安全問題。
  • 將軟體安全標準文件化,並要求整個組織遵循軟體安全規範,並要確保軟體安全規範是預防與前置地管控,也就是說軟體安全必須在軟體開發初期就要管理不是在軟體開發末期。
  • 保持監控與度量並且定期報告開發過程中遵循軟體安全規範的程度(儘管軟體安全的問題一直沒有投入人力修復,您還是要保持監控)。
  • 投入軟體安全的教育訓練活動,是在軟體安全開發生命週期中關鍵的第一步,訓練您的軟體開發管理者了解各種安全度量指標所代表的涵義,訓練您的軟體開發人員如何去修復軟體安全漏洞,不要留下任何空間給任何人有機會拒絕參加軟體安全的教育訓練。
  • 將軟體安全的工作項目條列在軟體開發經理及開發人員的工作職掌說明中,並投入人力度量軟體開發團隊對組織軟體安全規範的遵循數據,並作為未來工作績效考核的度量指標之一。
  • 在定期的組織會議中提出軟體安全的度量數據並討論未來預防、改進與修復方案。軟體安全必需要逐步變成組織的基因(DNA),這種軟體安全文化必須由上到下的不斷連續地強化並展現在實際的工作執行上,不是在口頭上說說安全度量數據,然後沒有後續改善行動。
  • 資安長必需與開發團隊有良好的互動關係,開發團隊必需了解資安長是軟體安全的資源與軟體產出通過門檻標準的管控者,並聆聽資安長提出的安全問題並修復。
  • 沒有符合最低軟體安全門檻條件的任何產品或產出,必須要停止它們發佈或交付。做為一個好的門檻管控者必須是一個擅長溝通的人,努力支援組織與個人,讓遵循軟體安全標準的步驟很容易了解與執行。
  • 如果你要負責整個企業的軟體安全責任,卻沒有停止不安全軟體發佈的權力,建議您選擇離開。讓組織面對缺少軟體安全門檻管控,比他們認為你無權力來管控軟體安全發佈要來的好。清楚地做好專業的職業道德規範,避免你要去做些掩飾企業軟體不安全的問題,讓它們看起來比較好一點的報告。

Fortify 工具提供您確保軟體安全開發生命週期所需要的支援

Fortify 工具集中於軟體安全保證和保證服從軟體安全標準的過程。

Fortify 360 解決方案幫助檢測應用系統安全(開發/測試/上線監控),讓軟體的各階段安全數據能夠清楚呈現在眼前,並且將企業所有開發專案的安全風險數據管控,集中呈現在數位儀表板中。

Fortify 360 也提供最佳的軟體安全開發程序的最佳實務與產出樣版,讓企業在有限的經驗也能夠快速地設計與建置屬於企業的軟體安全開發生命週期(SDLC)。

SDLC : Secure Development Life Cycle 軟體安全開發生命週期