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