信息獲取、開發(fā)和維護(hù)三
如果可能且可行,宜使用廠商提供的軟件包,不自行修改。在需要修改軟件包時(shí),應(yīng)對所有的變更加以嚴(yán)格控制,宜考慮軟件包內(nèi)置安全控制措施和完整性保護(hù)過程被損害的風(fēng)險(xiǎn)、如果要修改軟件包還應(yīng)獲得原提供廠商的同意,當(dāng)程序軟件可以更新時(shí)組織應(yīng)向廠商了解要變更的必要性信息,組織要負(fù)責(zé)進(jìn)一步維護(hù)此軟件的影響以及與其他在用軟件的兼容性等。
組織應(yīng)建立基于安全工程原理的安全信息系統(tǒng)工程規(guī)程,形成文檔并在內(nèi)部信息系統(tǒng)的工程活動中使用。在平衡信息安全需求和訪問需求的基礎(chǔ)上,組織所有架構(gòu)層(業(yè)務(wù)、數(shù)據(jù)、應(yīng)用和技術(shù))均應(yīng)考慮安全設(shè)計(jì)。如果工程中將采用的新技術(shù)(例如云計(jì)算j大數(shù)據(jù)、 移動互聯(lián)網(wǎng))還需要對其進(jìn)行的安全風(fēng)險(xiǎn)評估,并針對已知的攻擊模式予以評審。
安全的開發(fā)環(huán)境包括與系統(tǒng)開發(fā)和整合相關(guān)的人員、過程和技術(shù)。組織應(yīng)評估與各個(gè)系統(tǒng)開發(fā)相關(guān)的風(fēng)險(xiǎn),并為特定系統(tǒng)的開發(fā)搭建安全的開發(fā)環(huán)境。開發(fā)環(huán)境應(yīng)該和實(shí)際生產(chǎn)環(huán)境隔離。
在系統(tǒng)開發(fā)外包時(shí),組織應(yīng)管理和監(jiān)視外包軟件的開發(fā)。包括安排項(xiàng)目聯(lián)系人參與到外包軟件開發(fā)團(tuán)隊(duì)中,技術(shù)了解外包軟件開發(fā)是否符合軟件安全開發(fā)的標(biāo)準(zhǔn)。
新系統(tǒng)和升級的系統(tǒng)在開發(fā)測試環(huán)境中需要徹底的測試和驗(yàn)證,禁止在生產(chǎn)環(huán)境中測試。對于內(nèi)部開發(fā),應(yīng)由開發(fā)團(tuán)隊(duì)進(jìn)行此類測試。所有新系統(tǒng)開發(fā)和1日系統(tǒng)升級均需要進(jìn)行獨(dú)立的驗(yàn)收測試(無論內(nèi)部和外包開發(fā))以確保系統(tǒng)按且僅按期望工作。
組織應(yīng)對新的信息系統(tǒng)、1日信息系統(tǒng)的升級和新版本的信息系統(tǒng)建立驗(yàn)收測試程序和相關(guān)標(biāo)準(zhǔn)。系統(tǒng)驗(yàn)收測試應(yīng)包括信息安全要求測試和遵守安全系統(tǒng)開發(fā)實(shí)踐測試。該測試也應(yīng)在接收軟件組件和集成系統(tǒng)時(shí)進(jìn)行。組織可以使用自動工具如代碼分析工具或漏洞掃描器, 如果發(fā)現(xiàn)安全漏洞,在內(nèi)部開發(fā)人員或外包商整改后應(yīng)驗(yàn)證與安全的修復(fù)。
如果測試使用了個(gè)人或其他敏感信息,那么在使用之前應(yīng)該去除或修改所有的敏感細(xì)節(jié)和內(nèi)容,常見的方法是使用脫敏處理技術(shù)對真實(shí)數(shù)據(jù)進(jìn)行處理。對于外包開發(fā)商,要求其簽署對測試數(shù)據(jù)的保密協(xié)議,確保在測試結(jié)束后銷毀所有測試數(shù)據(jù)。