代碼安全:持續(xù)交付模式會(huì)是理想答案嗎?

責(zé)任編輯:editor005

作者:Michael Cobb

2015-11-20 14:07:43

摘自:TechTarget中國

鑒于公司的持續(xù)交付(CD)模式,我們公司的開發(fā)人員將代碼投入到日常生產(chǎn)當(dāng)中去。測試的本質(zhì)在于和自動(dòng)化驗(yàn)收測試一樣,不過更為針對驗(yàn)證安全特性,如登錄和退出,包攬所有可預(yù)見的和不可預(yù)見的行為。

鑒于公司的持續(xù)交付(CD)模式,我們公司的開發(fā)人員將代碼投入到日常生產(chǎn)當(dāng)中去。盡管開發(fā)周期短,但我仍然意識(shí)到了安全網(wǎng)關(guān)的需求。在這種環(huán)境下,該使用何種網(wǎng)關(guān)或是其他安全措施?我們是否要繼續(xù)采用CD模式?

對于軟件應(yīng)用程序開發(fā)和交付來講,持續(xù)交付模式意味著開發(fā)周期短,同時(shí)會(huì)第一時(shí)間公布新代碼,而非推遲或與其他變更中捆綁進(jìn)行。

從安全角度看,主要問題在于很多實(shí)際CD部署只關(guān)注測試和盡可能快地發(fā)布新特性和功能,缺乏對安全的重視。用戶反饋會(huì)反映到下一個(gè)版本中,但也只是就可用性和功能方面,而非安全。不過,這并不意味著就非要棄用CD不可,因?yàn)榘踩莾?nèi)置于整個(gè)過程中的。

CD模式的核心理念在于創(chuàng)建一個(gè)自動(dòng)化單元測試和集成測試的基線,這也使其本身天然地適用于安全開發(fā)實(shí)踐,只要開發(fā)和安全并行即可。帶有恰當(dāng)?shù)陌踩幚淼腃D模式可以改善軟件的安全性和彈性,因?yàn)檫@樣可以在軟件開發(fā)和部署過程中的關(guān)鍵階段持續(xù)集成安全檢查。傳統(tǒng)的軟件開發(fā)在每一個(gè)應(yīng)用代碼中引入太多變更,這導(dǎo)致如果測試失敗的時(shí)候,難以發(fā)現(xiàn)問題究竟出在了哪段代碼上。

CD模式中的持續(xù)代碼評估讓尋找問題更為簡易,加之代碼在開發(fā)者腦海里總是常新的。當(dāng)然,建立安全編碼規(guī)則禁止危險(xiǎn)代碼結(jié)構(gòu)和功能的使用也是非常重要的,只支持第三方庫和組件,且對所有核心功能應(yīng)執(zhí)行全面錯(cuò)誤和異常處理規(guī)定。

一旦新代碼進(jìn)入檢測,它應(yīng)該被自動(dòng)地進(jìn)行代碼安全評估以查看是否引入了已知漏洞,并對人工檢查做好標(biāo)記。檢測已知漏洞非常適合自動(dòng)化,但更重要的是添加測試場景識(shí)別和禁止未知非正常行為。這些測試絕大多數(shù)可通過使用內(nèi)帶安全的瀏覽器自動(dòng)化工具自動(dòng)進(jìn)行。

測試的本質(zhì)在于和自動(dòng)化驗(yàn)收測試一樣,不過更為針對驗(yàn)證安全特性,如登錄和退出,包攬所有可預(yù)見的和不可預(yù)見的行為。關(guān)鍵在于創(chuàng)建基于應(yīng)用程序攻擊面的測試,詳細(xì)的威脅模型。且安全團(tuán)隊(duì)?wèi)?yīng)該具備塊交付能力,如果測試結(jié)果表明存在不可接受的風(fēng)險(xiǎn)時(shí)。

鏈接已復(fù)制,快去分享吧

企業(yè)網(wǎng)版權(quán)所有?2010-2024 京ICP備09108050號-6京公網(wǎng)安備 11010502049343號