新思BSIMM助力軟件安全“學(xué)渣”變“學(xué)霸”
新思科技軟件質(zhì)量與安全部門高級安全架構(gòu)師楊國梁表示,“安全不應(yīng)該是在最后被疊加上去的一些輔助性的功能,而應(yīng)該是整個系統(tǒng)的天然特質(zhì)。因此要想獲得安全的軟件,必須與軟件開發(fā)生命周期進行深度集成。”20世紀(jì)90年代末期,軟件安全作為獨立于計算機和網(wǎng)絡(luò)安全的新學(xué)科開始蓬勃發(fā)展。研究人員開始投入更多的精力去研究程序員如何能為計算機系統(tǒng)保駕護航,或在無意間破壞其安全:哪些錯誤和缺陷引發(fā)了安全問題?如何系統(tǒng)地識別問題?
軟件安全問題通??梢苑譃槁┒磁c缺陷,漏洞指編碼過程中出現(xiàn)的問題,而缺陷指設(shè)計過程中出現(xiàn)的問題。據(jù)調(diào)查,目前漏洞和缺陷占比大約為50/50。此外,Risk Based Security也曾有報告指出,單單2018年上半年,業(yè)界就發(fā)布了 10,644 個漏洞,超過 2017 年同期的 9,690 個,其中有近 17%屬于高危級別的嚴(yán)重漏洞。這些漏洞以及設(shè)計缺陷影響著軟件的可靠性、可用性,以及軟件中信息的保密性和完整性,有可能造成信息泄露等安全問題。
近年來,軟件安全行業(yè)達成了一個新共識:企業(yè)僅憑一己之力是無法創(chuàng)建安全軟件的。要想實現(xiàn)軟件安全,他們必須參與到軟件開發(fā)流程之中,即使該流程不斷發(fā)展演進也不例外。從那時起,軟件安全公司便開始了解該流程,明白了僅憑開發(fā)者工具并不足以保證軟件安全。
軟件安全還涉及到業(yè)務(wù)、社會和組織層面。企業(yè)需要建立為構(gòu)建安全軟件而開展的所有活動,即“軟件安全計劃”(SSI)。
對此,新思科技軟件質(zhì)量與安全部門高級安全架構(gòu)師楊國梁表示,“安全不應(yīng)該是在最后被疊加上去的一些輔助性的功能,而應(yīng)該是整個系統(tǒng)的天然特質(zhì)。因此要想獲得安全的軟件,必須與軟件開發(fā)生命周期進行深度集成?!?
目前,針對軟件安全性問題的解決方案有很多。大體分為兩大類,一種是以微軟SDL為代表的“指導(dǎo)性”模型。一種是新思科技BSIMM(軟件安全構(gòu)建成熟度模型)“描述性”模型。所謂指導(dǎo)性模型是指,在軟件開發(fā)的每一個階段提出相應(yīng)的安全活動和規(guī)范,即告訴你每一個階段“應(yīng)該做什么”,從而提高軟件產(chǎn)品的安全性。
SDL每階段內(nèi)容
而描述性模型并不是一個指導(dǎo)方案,它只進行事實陳述,告訴你“發(fā)生了什么”,即此模型會對你的企業(yè)進行評估,描述標(biāo)記你的企業(yè)進行了哪些活動,與同行業(yè)相比,你們公司處于怎樣的位置,描述性模型不會進行價值判斷。楊國梁稱其為“一個收集優(yōu)秀實踐、反應(yīng)市場真實性的模型?!被谶@樣的特質(zhì),描述性模型可以評估各種各樣的指導(dǎo)性模型。楊國梁認(rèn)為,指導(dǎo)性模型是企業(yè)必備的,尤其是些中小企業(yè),但是在使用指導(dǎo)性模型之后,還是需要BSIMM這樣的描述性模型去評估這些活動到底開展的如何。對于小企業(yè)或是初創(chuàng)企業(yè)來說,使用描述性模型,可以讓一個“學(xué)渣”巧妙地了解到“學(xué)霸”們都在“偷偷”開展些什么活動,沒準(zhǔn)稍不留神就獲得了很多有啟發(fā)性的想法,從此成就一番霸業(yè)。
BSIMM模型發(fā)展至今已經(jīng)有了10年的歷史,10月25日新思科技發(fā)布了BSIMM模型第十版,即BSIMM 10。在過去的十年里,新思科技采用BSIMM對185家公司進行了約450次評估,第十個版本反應(yīng)了觀察到的122家公司的軟件安全活動,包括的數(shù)據(jù)是從真正建立SSI的公司收集而來,量化了119項活動來展示各個公司計劃的共同以及不同之處。
BSIMM 10相較于之前的版本強調(diào)了DevOps對軟件安全計劃的影響、工程導(dǎo)向的安全工作的新浪潮,以及公司如何在軟件安全成熟度的三個階段前行。BSIMM模型經(jīng)過10年的發(fā)展,其數(shù)據(jù)池已從最初的9家增加到如今BSIMM 10的122家企業(yè),對于行業(yè)情況的反應(yīng)越來越全面。在保證樣本新鮮度方面,新思科技采取不斷更新參與企業(yè)名單的方式,剔除時間超過36個月的評估結(jié)果。對越來越少被觀察到的活動,在經(jīng)過慎重考慮后進行降級處理。同時增加新的頻繁被觀察到的活動。由此看來,BSIMM模型更像是一個“活”的模型,始終盡可能快地反映著市場的真實情況。資料顯示,2018年年初,華為云曾在BSIMM的安全評估中獲得了高分。
新思科技首席科學(xué)家Sammy Migues曾說過:“領(lǐng)導(dǎo)一個有效的軟件安全計劃是富有挑戰(zhàn)性的,而DevOps和CI/CD帶來的巨大技術(shù)和組織變革并沒有使這項任務(wù)變得更加容易。作為不斷發(fā)展以反映全球數(shù)百個軟件安全小組的經(jīng)驗的工具,無論你是剛剛開始軟件安全旅程,還是尋求優(yōu)化程序或者應(yīng)對新的挑戰(zhàn),BSIMM以及社區(qū)都是寶貴的資源?!?
軟件安全對于軟件的設(shè)計者而言是十分重要的事情,眾所周知,如果在軟件實際開發(fā)出來后發(fā)現(xiàn)安全問題,再進行修補甚至推翻重來代價十分高昂,因此將“安全”深度集成到軟件開發(fā)的生命周期中是必要的。借助于新思科技BSIMM模型,希望我們的軟件安全問題能夠得到進一步的改善。