軟件bug和設(shè)計(jì)缺陷是兩個(gè)完全不同的安全概念,人們熱衷于在bug上花費(fèi)大量精力財(cái)力,但是導(dǎo)致50%軟件安全問題的軟件安全設(shè)計(jì),卻鮮有人問津。
IEEE安全設(shè)計(jì)中心(CSD)是IEEE計(jì)算機(jī)協(xié)會(huì)于2014年啟動(dòng)的網(wǎng)絡(luò)安全計(jì)劃的一部分,目的是擴(kuò)大IEEE在網(wǎng)絡(luò)安全領(lǐng)域的影響力。
IEEE安全設(shè)計(jì)中心專注于軟件設(shè)計(jì)缺陷的檢測(cè),近日該機(jī)構(gòu)發(fā)布了一個(gè)報(bào)告《避免十大軟件安全設(shè)計(jì)缺陷》,該報(bào)告采集并分析了全球最頂尖科技企業(yè)的真實(shí)數(shù)據(jù)并得出結(jié)論。
過去數(shù)十年中,安全設(shè)計(jì)一直是安全開發(fā)的阿喀琉斯之踵,主要是因?yàn)榧夹g(shù)門檻太高,懂行的專家又太少。因而IEEE CSD將關(guān)注的重點(diǎn)放在了當(dāng)今最棘手的信息安全問題——安全設(shè)計(jì)。以下是CSD報(bào)告中指出的避免十大軟件安全設(shè)計(jì)缺陷的忠告(有興趣的讀者還可以在文章結(jié)尾下載報(bào)告原文,密碼:aqniu):
爭(zhēng)取或給予,但永遠(yuǎn)不要假設(shè)、相信(可信)
使用無法繞過或者篡改的認(rèn)證機(jī)制
先認(rèn)證后授權(quán)
嚴(yán)格分離數(shù)據(jù)和控制指令,永遠(yuǎn)不要執(zhí)行來自非可信源的控制指令
定義一種方法來確保所有數(shù)據(jù)都被顯式驗(yàn)證(explicitly validated)
正確使用加密技術(shù)(參考閱讀:企業(yè)需升級(jí)SSL/TLS加密算法)
識(shí)別敏感數(shù)據(jù)及相應(yīng)的處理方法
永遠(yuǎn)從用戶角度出發(fā)
了解對(duì)外部組件的集成將如何改變你的攻擊面(attack surface)
保持面向未來(對(duì)象和人員)的靈活性