在軟件安全問題上,我們并沒有完全承認(rèn)一些很明顯的問題,在應(yīng)對(duì)相關(guān)的漏洞時(shí),也不可能取得什么進(jìn)展。所以,2018年的第一季度,大量的新型攻擊已經(jīng)初露端倪。
軟件是一個(gè)主要的攻擊點(diǎn)。這方面的證據(jù)幾乎無處不在,然而我們很多人選擇忽視安全測(cè)試,至少在當(dāng)今運(yùn)行的大多數(shù)物聯(lián)網(wǎng)應(yīng)用中是這樣。由于物聯(lián)網(wǎng)已經(jīng)被證明是一個(gè)極具誘惑力的媒介,我們也會(huì)認(rèn)為保障其安全是極其重要的。但事實(shí)上我們做得怎么樣呢?
很多情況下,企業(yè)僅僅重視高風(fēng)險(xiǎn)的應(yīng)用。但是大量的證據(jù)表明,有被認(rèn)為是低風(fēng)險(xiǎn)的應(yīng)用程序被攻擊者用作一個(gè)攻擊入點(diǎn),進(jìn)而危害高風(fēng)險(xiǎn)的應(yīng)用程序以訪問高價(jià)值的目標(biāo)。
不重視或忽視大量軟件的測(cè)試方法是不可行的。但是,進(jìn)行草率的測(cè)試也好不了多少,而且可能產(chǎn)生錯(cuò)誤的安全感。因?yàn)閷徲?jì)人員要求測(cè)試而進(jìn)行測(cè)試也不是安全。運(yùn)行測(cè)試并解決所發(fā)現(xiàn)的問題是一個(gè)向前發(fā)展的過程。事實(shí)上,有很多企業(yè)即使生成了大量的測(cè)試結(jié)果也沒有采取應(yīng)對(duì)的行動(dòng)。
很多應(yīng)用程序的安全測(cè)試廠商都宣稱能有效測(cè)試軟件的安全性。其實(shí),這些廠商只說了部分事實(shí),如今的軟件屬性都要求多重測(cè)試,以全面評(píng)估任何應(yīng)用程序的安全性。這是因?yàn)閼?yīng)用程序包含三個(gè)可能被發(fā)現(xiàn)漏洞的特定要素,其中的每個(gè)要素都必須用一個(gè)不同的方法,以保證安全測(cè)試的完整性。
雖然企業(yè)經(jīng)常采用開源程序和遷移到敏捷的開發(fā)方法,但有一個(gè)問題一直存在:企業(yè)仍需要編寫代碼。源代碼分析(靜態(tài)分析)的設(shè)計(jì)目的是找到安全漏洞和所開發(fā)代碼中的質(zhì)量問題。
隨著對(duì)開源代碼的的使用不斷增長(zhǎng),應(yīng)用軟件中來自外部源的代碼數(shù)量正急劇增長(zhǎng)。這種開源代碼包含著可能成為企業(yè)軟件一部分的嚴(yán)重漏洞。軟件組成分析(SCA)可以檢測(cè)在開發(fā)和使用過程中的開源和第三方的要素風(fēng)險(xiǎn),并能夠確認(rèn)在企業(yè)應(yīng)用程序中的開源代碼所包含的潛在的許可問題。
將代碼部署到網(wǎng)絡(luò)上時(shí),必須對(duì)運(yùn)行時(shí)環(huán)境通過動(dòng)態(tài)測(cè)試以測(cè)試漏洞。在應(yīng)用程序的運(yùn)行狀態(tài)中的測(cè)試可以揭示靜態(tài)測(cè)試分析不能檢測(cè)到的問題。對(duì)于高風(fēng)險(xiǎn)的應(yīng)用來說,很多企業(yè)采用道德黑客的形式,將人為因素放在在動(dòng)態(tài)測(cè)試過程中,從而加速了測(cè)試步伐。
我們是不是應(yīng)該有種危機(jī)感呢?以大行其道的物聯(lián)網(wǎng)為例,其中約有80%的應(yīng)用根本沒有進(jìn)行測(cè)試。對(duì)于剩余的接受某種測(cè)試的20%的應(yīng)用,測(cè)試也可能是不完整的。而且,即使很多企業(yè)找到了問題,也沒有解決。
如果企業(yè)不將優(yōu)先考慮從端點(diǎn)和網(wǎng)絡(luò)的安全轉(zhuǎn)移到更多關(guān)注軟件安全,那么問題就不可能得到根本解決。
減少安全實(shí)踐對(duì)開發(fā)過程的影響的最佳方法是,將安全的編碼實(shí)踐集成到安全的開發(fā)周期中,從源頭上確立對(duì)構(gòu)建安全代碼的重視。
那么,如何推動(dòng)實(shí)施有效的應(yīng)用程序的安全測(cè)試?在此提供一些雖非“必殺技”卻是實(shí)用的建議:
首先,對(duì)企業(yè)IT安全的優(yōu)先權(quán)進(jìn)行再平衡,將重點(diǎn)轉(zhuǎn)移到軟件安全性問題上。
其次,組建一個(gè)軟件安全小組,由其負(fù)責(zé)構(gòu)建和管理一個(gè)合理而全面的軟件測(cè)試項(xiàng)目。
第三,利用可以使開發(fā)人員從一開始就編寫安全軟件的工具和項(xiàng)目。將安全性構(gòu)建到軟件中要遠(yuǎn)比設(shè)法測(cè)試軟件的安全性更好。
企業(yè)確實(shí)到了應(yīng)該將IT安全的重點(diǎn)放在正被攻擊的軟件身上的時(shí)候了。在明確了有效的解決問題的途徑后,企業(yè)需要做出明智的決定,并堅(jiān)決貫徹實(shí)施。