2016-2022 All Rights Reserved.平安財經網.復制必究 聯系QQ280 715 8082 備案號:閩ICP備19027007號-6
本站除標明“本站原創”外所有信息均轉載自互聯網 版權歸原作者所有。
軟件開發生命周期(SDLC)包含幾個階段,這些階段將軟件從產品經理負責人的想法轉移到實際客戶手中的工作軟件產品。在傳統的軟件開發過程中,甚至在現代敏捷開發周期中,安全性都是事后的想法。組織經歷了創建軟件產品的精細過程,但最終意識到產品可能存在需要解決的安全問題。

這些安全問題可能需要更改代碼,更換開源組件或執行可能復雜或昂貴的其他更改,并且可能會延遲產品發布到市場。更糟糕的是,由于市場壓力,一些組織最終可能會發布產品,即使安全問題沒有得到充分解決。
一個安全的SDLC是一個開發周期中需要安全考慮從第一天開始。SDLC的所有階段,從規劃和設計到開發,測試和部署,都涉及安全考慮因素,并在安全專業人員的指導或主動檢查下執行。這可以以更低的成本提供更高的安全性 - 因為安全性從一開始就被應用到應用程序中。
SDLC階段
幾乎所有軟件項目,無論具體的開發方法如何,都要經歷以下一般階段:
規劃 -確定對產品的需求,產品所需的基本功能,用戶及其特定要求以及功能優先級。
設計和體系結構 -定義如何將需求轉換為實際軟件,包括技術組件,軟件體系結構,與第三方組件的集成,數據管理和UI / UX。
開發 -編寫代碼并將軟件帶到至少部分功能正常工作且可以測試的階段。
測試 ━手動評估軟件或運行自動化測試,以確保它能夠真正滿足用戶在所需功能,可用性和性能方面的需求。
部署 -獲取成品并將其安裝在將被使用的實際環境中 - 由客戶在家中或由內部部署軟件的組織或在云模型中提供的軟件的數據中心中使用。
生產 - 在生產中運行應用程序,確保用戶能夠使用它,并在發生時解決操作問題。
如何實現安全的SDLC
以下是如何將安全性用于SDLC的每個階段,以及如何轉換為真正的安全SDLC。
為規劃,設計和架構階段增加安全性
在SDLC開始時確定安全要求,并培訓開發人員盡早識別漏洞和安全漏洞。良好的體系結構或組件選擇可以大大有助于實現安全性,而錯誤的體系結構選擇可能需要在后續階段進行復雜的修復或變通。
評估您將在開發,測試和生產階段使用的硬件和軟件,并了解其已知漏洞,以及在將來發現漏洞時修補和更新它們的能力。
為開發階段增加安全性
今天的開發人員在開發軟件時嚴重依賴開源組件。開發人員需要有關如何檢查開源組件是否可以安全使用以及哪些特定版本可能包含漏洞的知識和指導。這可以通過SAST或軟件組合分析等自動化工具完成。他們還需要接受安全最佳實踐方面的培訓,例如輸入清理,敏感數據加密和強身份驗證。
與開發團隊密切合作的同行或安全專家進行的代碼審查可能會對開發人員的安全能力產生重大影響。很多時候,開發人員會根據習慣引入安全漏洞或者沒有意識到這一點。讓同行評審他們的工作并建議實際的安全修復可以通過開發人員相對較小的持續努力來提高安全性。
為測試階段增加安全性
訓練您的測試人員像黑客一樣思考并添加尋找或暴露安全漏洞的測試,例如代碼注入,跨站點腳本,會話管理問題和不安全的重定向。
測試人員可以使用工具掃描應用程序并嘗試各種攻擊,就像黑客在生產環境中所做的那樣。手動滲透測試在發現軟件安全狀況中的漏洞或漏洞方面也非常有用,并且可以由安全人員和測試專家協同執行。使用動態應用程序安全性測試(DAST)工具可以幫助發現應用程序代碼中的不安全模式并解決它們。
部署審核
無論是在本地,客戶駐地還是在公共云中部署應用程序,都始終需要考慮安全因素??紤]部署軟件的完整環境以及客戶將面臨的風險。
了解不同方面的責任 - 例如,您的組織,云提供商和客戶。確保覆蓋您的基礎,進行測試以確保云提供商實際提供所承諾的安全措施,并充分通知客戶他們負責的安全措施,例如使用安全密碼。
包起來
安全性是所有軟件產品和應用程序的核心支柱。軟件開發生命周期中的安全測試可確保應用程序進入市場,而沒有攻擊者可能利用的安全漏洞。
標準化和概述SDLC使您的安全團隊可以更輕松地將安全性集成到整個流程中。應該打包實現安全SDLC的步驟,以便于實施。一旦開發人員具體了解了在應用程序和產品中構建安全性所需的所有內容,實現就變得簡單了。
2016-2022 All Rights Reserved.平安財經網.復制必究 聯系QQ280 715 8082 備案號:閩ICP備19027007號-6
本站除標明“本站原創”外所有信息均轉載自互聯網 版權歸原作者所有。