陳柏政,竇立君
(1.南京林業(yè)大學(xué)信息科學(xué)技術(shù)學(xué)院;2.南京林業(yè)大學(xué)網(wǎng)絡(luò)安全和信息化辦公室,江蘇南京 210037)
在當(dāng)今社會,軟件與網(wǎng)絡(luò)安全相關(guān)問題已成為熱門話題。與機械器材廠商不同,軟件的安全檢測到目前為止并沒有形成統(tǒng)一標(biāo)準(zhǔn),不同廠商有著不同的檢測評估系統(tǒng),導(dǎo)致軟件安全問題層出不窮[1]。這些問題給數(shù)據(jù)安全及人們的生活隱私帶來了極大隱患。
目前針對軟件安全的研究很多,但是較少有研究對這些問題及相關(guān)解決方法進行總結(jié)?;谏鲜銮闆r,本文通過對當(dāng)前存在的主要軟件安全問題進行總結(jié)分析,并提出相應(yīng)防護措施與解決方案,如靜態(tài)分析[2]、動態(tài)分析[3]、脆弱性評估[4]等,這些措施能夠有效應(yīng)對當(dāng)前主要的軟件安全問題,保障用戶在軟件使用過程中的安全性。最后分析了未來軟件安全可能面臨的挑戰(zhàn),并針對這些問題提出可能的應(yīng)對方法。
互聯(lián)網(wǎng)興起初期,公司缺乏完善的管理體系,早期的軟件安全問題大多是由于安全加密系統(tǒng)不完善或技術(shù)人員素質(zhì)不高引起的。
首先,互聯(lián)網(wǎng)公司自身存在的管理問題是軟件安全問題產(chǎn)生的主要原因之一。早在1986 年,世界上第一個計算機木馬病毒[5]就已出現(xiàn),并且隨著互聯(lián)網(wǎng)的發(fā)展,第三代木馬病毒兼具偽裝和傳播兩種特征,并結(jié)合TCP/IP 網(wǎng)絡(luò)技術(shù)[6]四處傳播。早期關(guān)于網(wǎng)絡(luò)安全的研究尚處于空白,殺毒軟件與防火墻技術(shù)[7]尚未成熟,導(dǎo)致了木馬病毒的泛濫。
其次,用戶安全意識較差下也是早期軟件安全問題頻發(fā)的主要原因之一。早期的用戶通常把自己的軟件賬戶密碼設(shè)為類似“123456”的簡單密碼,黑客只需用窮舉法即能破解這些密碼。此外,某些企業(yè)也缺乏對技術(shù)人員安全意識方面的培訓(xùn),在進行企業(yè)機密文件傳輸時,有些技術(shù)人員仍使用保密性一般的郵箱,導(dǎo)致企業(yè)泄密問題頻繁發(fā)生。
此外,國家早期也缺乏針對軟件安全問題相關(guān)的法律法規(guī),因此很多流氓軟件[8]趁機大肆傳播。流氓軟件是介于病毒與正規(guī)軟件之間的一種軟件,這些軟件可能不會給用戶計算機造成直接的破壞,但會嚴(yán)重影響用戶體驗。其管理難點并不在于難以發(fā)現(xiàn)與查殺,而是其模糊的定義標(biāo)準(zhǔn),法律法規(guī)與行業(yè)規(guī)范的缺失給了流氓軟件可乘之機。我國尚未有完善的法律法規(guī)對流氓軟件進行管理約束,所以流氓軟件至今仍是一個難以解決的問題。
如今互聯(lián)網(wǎng)公司都對自身的管理體系進行了完善,普遍擁有嚴(yán)格的管理制度,并且也會對工程師及開發(fā)人員進行全面、嚴(yán)格的安全意識培訓(xùn),但軟件安全問題仍然沒有顯著減少,利用互聯(lián)網(wǎng)進行的違法活動相較之前甚至更加猖狂。主要原因在于廠商在完善其安全防護系統(tǒng)的同時,黑客群體也具有了更加多樣化的攻擊手法和工具。
網(wǎng)絡(luò)空間的開放性也為軟件安全帶來了極大隱患。人工智能與大數(shù)據(jù)的發(fā)展使網(wǎng)絡(luò)主體之間需要傳輸更多信息,令黑客的攻擊更容易實現(xiàn)。
軟件攻擊[9]手段日益多樣化,要達到某一目的的軟件攻擊行為也并不是單一的,本節(jié)將結(jié)合軟件攻擊對象簡述主要軟件攻擊方式的原理。根據(jù)軟件攻擊對象,可將軟件攻擊類型分為6 種,具體見表1。
Table 1 Software attack classification表1 軟件攻擊分類
如表1 所示,軟件攻擊技術(shù)主要包括反匯編[10]和運行時內(nèi)存監(jiān)控[11]兩種。
反匯編攻擊的原理是使用一段特殊構(gòu)造的代碼欺騙反匯編工具,使其產(chǎn)生錯誤的程序代碼,其目的是拖延軟件分析師對病毒的解析進程,為病毒的變種爭取時間,使該病毒的解密算法更難被解析出來。
運行時內(nèi)存監(jiān)控指對內(nèi)存發(fā)起的攻擊方式,主要通過耗盡資源、軟件故障、物理損壞等方式達到攻擊目的。其中資源耗盡是最常用的攻擊方式,其原理是通過對用戶主機內(nèi)存不斷發(fā)起大量攻擊,導(dǎo)致其主機內(nèi)存耗盡或CPU 被應(yīng)用程序占滿,從而無法提供網(wǎng)絡(luò)服務(wù)。目前最難防御的內(nèi)存攻擊方式為分布式拒絕服務(wù)攻擊(Distributed Denial of Service Attack,DDoS)[12]。
軟件攻擊和軟件防御技術(shù)是相輔相成的,本節(jié)將簡述針對反匯編與內(nèi)存攻擊的軟件防御技術(shù)原理。
目前所使用的主要的防反匯編技術(shù)是代碼混淆技術(shù)[13],其原理是使代碼共享一條指令代碼,從而使共享段的代碼可被不同的指令控制流調(diào)用。其目的是混淆反匯編得到的代碼,使黑客由反匯編得到錯誤代碼,以此達到保護軟件的目的。
由于DDoS 攻擊發(fā)起成本低、攻擊威力大,到目前為止針對其防御仍是一個世界級的難題。目前主要的緩解DDoS 攻擊的方式是加強DDoS 攻擊檢測,保證能在第一時間發(fā)現(xiàn)DDoS 攻擊,從而盡快更新安全補丁,以減少損失。Huang 等[14]對DDoS 的攻擊結(jié)構(gòu)進行分析,為針對DDoS 攻擊的防御策略優(yōu)化設(shè)計提供了建議;Alzahrani 等[15]提出一種用于檢測DDoS 攻擊的系統(tǒng),其與基于特征和神經(jīng)網(wǎng)絡(luò)的檢測方法相比,具有更高的檢測率與檢測精度。
2.1.1 軟件漏洞
軟件漏洞是當(dāng)前軟件安全面臨的最大挑戰(zhàn)。目前比較常見的軟件漏洞大致可分為緩沖區(qū)溢出漏洞[16]、整數(shù)溢出漏洞[17]、邏輯錯誤漏洞等[18],下面將從3 個方面對軟件漏洞問題進行具體分析。
(1)緩沖區(qū)溢出。在軟件開發(fā)過程中,開發(fā)人員通常會預(yù)先分配出一個臨時空間用于存儲特殊信息,即緩沖區(qū)。向緩沖區(qū)中輸入數(shù)據(jù)時,如果數(shù)據(jù)過大,則會溢出緩沖區(qū),覆蓋靠近該緩沖區(qū)內(nèi)存上存儲的合法數(shù)據(jù)。在理想情況下,程序會檢查數(shù)據(jù)長度,不允許開發(fā)者輸入超過緩沖區(qū)長度的字符。但實際上,大多數(shù)程序都會假設(shè)已輸入數(shù)據(jù)與緩沖區(qū)的空間大小匹配,并且不作檢查。由于C/C++語言在編譯時,不會對數(shù)組及指針自動進行邊界檢查,使得編譯時很難發(fā)現(xiàn)程序中的漏洞,所以采用C/C++編寫的程序中往往存在緩沖區(qū)溢出漏洞。下面給出一個經(jīng)典的緩沖區(qū)溢出漏洞的例子。
例子中的函數(shù)p()通過strcpy 函數(shù)將字符串b 直接拷貝給字符數(shù)組c,在執(zhí)行這段代碼時并沒有進行任何判斷,最后執(zhí)行的結(jié)果是程序崩潰。
黑客利用緩沖區(qū)溢出漏洞發(fā)起攻擊,輸入超過緩沖區(qū)長度的數(shù)據(jù),使緩沖區(qū)溢出,進而破壞程序的堆棧。之后的攻擊一般分為兩種,一種是直接使程序崩潰,拒絕服務(wù)請求,另一種是在函數(shù)返回時改變函數(shù)返回的地址,使程序跳轉(zhuǎn)到一個任意的地址,執(zhí)行黑客輸入的惡意代碼。緩沖區(qū)溢出漏洞攻擊的目的大多是獲取某些具有特權(quán)的程序控制權(quán),從而對整個主機進行操控。
(2)整數(shù)溢出。整數(shù)溢出是在執(zhí)行程序過程中,計算得到的結(jié)果超過了存儲結(jié)果位向量所能表達的最大整數(shù)范圍。由于整數(shù)變量存在上界和下界,整數(shù)溢出會出現(xiàn)上溢和下溢兩種情況。上溢是指若計算結(jié)果超過整數(shù)變量的上界,計算結(jié)果就會由本來的一個極大值變?yōu)橐粋€極小值或零,下溢則反之。整數(shù)溢出漏洞通常是由有符號整數(shù)之間的混合使用或開發(fā)人員對數(shù)據(jù)運算邊界問題的疏忽引起的。
黑客往往會利用整數(shù)溢出漏洞發(fā)起針對代幣資產(chǎn)的攻擊,在攻擊時向賬戶中轉(zhuǎn)入一個數(shù)額巨大的代幣量,使其超出軟件中整數(shù)類型的最大數(shù)值,從而以極小甚至零代價得到高額利潤。
(3)邏輯錯誤。常見的邏輯漏洞有越權(quán)訪問、密碼找回邏輯漏洞、支付邏輯漏洞、多線程條件競爭漏洞等,這些漏洞大多是由于程序本身邏輯不嚴(yán)謹(jǐn)造成的。
2.1.2 軟件安全設(shè)計缺陷
軟件安全設(shè)計是指開發(fā)人員通過設(shè)計各種安全機制預(yù)防軟件可能遭受的攻擊。
首先,由于當(dāng)下激烈的商業(yè)競爭環(huán)境,比起質(zhì)量安全,很多廠商更注重軟件開發(fā)速度,導(dǎo)致軟件在開發(fā)過程中往往會倉促完成安全設(shè)計甚至舍棄安全設(shè)計,轉(zhuǎn)而選擇在軟件發(fā)布后不斷發(fā)布補丁來維護軟件安全,即penetrate-andpatch[19]方法。這種方法可讓廠商更好地把握住商業(yè)機會,但會為軟件的長久安全帶來隱患,等黑客發(fā)起攻擊時才進行補丁研發(fā)會對軟件安全造成極大威脅,從而嚴(yán)重破壞用戶的使用體驗。
其次,軟件安全設(shè)計上的缺陷不同于軟件本身出現(xiàn)的漏洞,后者可由自動代碼審查工具進行篩查,而前者往往存在于軟件架構(gòu)設(shè)計中,這些錯誤無法由代碼審查工具掃描發(fā)現(xiàn)。所以軟件安全設(shè)計往往交由專門的人員進行研究,但由于技術(shù)門檻較高,很多企業(yè)缺乏相應(yīng)的人員,使得軟件安全設(shè)計一直是一個難以解決的問題。
目前常見的軟件安全設(shè)計缺陷主要有密碼技術(shù)使用不當(dāng)、結(jié)構(gòu)性安全薄弱等。開發(fā)者有時會將過多精力投入到密碼算法設(shè)計上,而忽略了其他安全性問題。即便如此,在密碼技術(shù)的使用上也存在很多問題。有的開發(fā)者在進行安全設(shè)計時會選用不當(dāng)?shù)拿艽a技術(shù),這不僅會為軟件安全架構(gòu)帶來隱患,也為日后軟件的維護與修復(fù)工作帶來很多問題。對于結(jié)構(gòu)性安全方面的問題,通常都是違反了軟件安全設(shè)計的四大原則,具體如下:
(1)過大的攻擊面[20]。黑客往往耗費大量時間和精力在信息收集上,而過大的攻擊面給了黑客更好的收集信息的機會。
(2)在過高的權(quán)限級別上運行進程。為了維護方便,只用一個root 賬戶操作所有系統(tǒng),但是黑客只要成功攻擊了任意一個系統(tǒng),就相當(dāng)于拿到了所有系統(tǒng)權(quán)限。
(3)沒有進行縱深防御[21]。開發(fā)者將所有精力放在一種防御手段上,然而即使防御技術(shù)再先進,也會有出現(xiàn)0day 漏洞[22]的可能性,僅僅一層防御無法確保軟件安全,黑客在攻破一層防御系統(tǒng)之后即可直接破壞整個系統(tǒng)。
(4)故障安全缺陷。黑客在信息收集階段往往會對系統(tǒng)輸入異常的信息,若系統(tǒng)在故障安全方面存在缺陷,黑客則有可能收集到關(guān)鍵的信息和數(shù)據(jù),為下一步攻擊作好準(zhǔn)備[23]。
由于開發(fā)者在進行軟件安全設(shè)計時往往會忽視以上問題,導(dǎo)致軟件在結(jié)構(gòu)性安全方面存在很大漏洞,從而為之后的軟件開發(fā)帶來隱患。
2.1.3 軟件安全評估系統(tǒng)問題
軟件漏洞是不可避免的,因此對軟件的安全評估將起到至關(guān)重要的作用。軟件安全評估是對軟件安全的評價度量,對軟件中可能存在的安全漏洞作出預(yù)測,并提出軟件可能遭受的攻擊,從而作好預(yù)防措施。但由于當(dāng)今軟件規(guī)模不斷增長,邏輯功能也日漸復(fù)雜,這意味著對軟件進行安全評估的成本不斷增加。而且由于代碼復(fù)雜度過高,在對代碼進行安全分析時,許多針對大規(guī)模軟件進行分析的技術(shù)對上下文、控制流及路徑信息進行了簡化,從而降低了計算復(fù)雜度,但同時也意味著分析結(jié)果的精度會大幅下降。就目前而言,想要研發(fā)出一個成本低廉且精度較高的軟件安全評估系統(tǒng)十分困難。
2.2.1 針對軟件漏洞的防護
目前針對大部分軟件漏洞,通用的防護措施分為漏洞挖掘[24]、漏洞分析[25]及漏洞利用緩解[26]3 個階段。下面將從這3 個方面總結(jié)國內(nèi)外在軟件漏洞防護方面的研究進展。
軟件漏洞挖掘的目的是為了確認(rèn)軟件漏洞的存在。早在20 世紀(jì)70 年代,美國南加州大學(xué)就發(fā)起了保護分析項目(Protection Analysis Project,PA)研究計劃,針對操作系統(tǒng)的安全漏洞進行分析與研究[27],以提高軟件的安全性。之后人們開始對軟件源代碼進行分析,檢測在軟件中是否存在可能被利用的漏洞,即軟件漏洞挖掘。軟件漏洞挖掘技術(shù)可大致分為4 種,分別是基于源代碼的漏洞挖掘、基于補丁對比的漏洞挖掘、基于模糊測試的漏洞挖掘與基于代碼特征的漏洞挖掘。
每種技術(shù)同樣也存在不足之處,如基于源代碼的漏洞挖掘技術(shù)只適用于開源軟件或開發(fā)者自身進行的測試,由于其要求擁有軟件源代碼,所以并不適用于如Windows 旗下的Office 等閉源軟件[28]?;谘a丁對比的軟件漏洞挖掘技術(shù),對比方法主要分為基于文本的對比、基于匯編指令的對比和基于結(jié)構(gòu)化的對比,但由于其精度較低、復(fù)雜度較高,還有很大的改進空間?;谀:郎y試的漏洞挖掘技術(shù)原理是輸入非正常數(shù)據(jù)之后對系統(tǒng)進行檢測,再發(fā)現(xiàn)軟件漏洞,因此需要大量測試用例。目前這種方法只適用于小型程序或代碼片段中,如何生成測試用例是模糊測試研究中的一個難點?;诖a特征的漏洞挖掘技術(shù)相較于其他方法可適用于較復(fù)雜的大規(guī)模軟件,但有較高的誤報率,所以十分依賴于人工篩選。Wang 等[29]提出一種基于動靜結(jié)合的Android 應(yīng)用漏洞挖掘方法,該方法相較于靜態(tài)分析誤報率更低,提高了漏洞挖掘的穩(wěn)定性和準(zhǔn)確度,但其分析框架應(yīng)用范圍較窄;Zhang 等[30]提出基于Fuzzing 技術(shù)的網(wǎng)絡(luò)協(xié)議自動漏洞挖掘技術(shù),解決了人工分析效率低下的問題,但仍然沒有解決如何生成高質(zhì)量測試用例的問題。
在完成軟件漏洞挖掘之后,下一步是對發(fā)現(xiàn)的漏洞進行分析。通過軟件漏洞分析技術(shù),對軟件漏洞形成原因進行研究分析,最終目的是判斷出軟件漏洞類型及其具體位置。吳世忠等[31]將當(dāng)前的軟件漏洞安全分析技術(shù)分為軟件架構(gòu)分析技術(shù)、代碼靜態(tài)分析技術(shù)、代碼動態(tài)分析技術(shù)、動靜結(jié)合的分析技術(shù)和漏洞定位技術(shù)共5 種,其中軟件架構(gòu)分析技術(shù)尚未成熟,而代碼的靜態(tài)與動態(tài)分析技術(shù)已進入瓶頸期,所以動靜結(jié)合的分析技術(shù)將成為未來的研究重點。Almorsy 等[32]研究了一種自動化的漏洞分析工具,提高了漏洞分析的覆蓋率與正確率,但在速度上仍需改進;Yan 等[33]介紹了一種新的PHP 代碼靜態(tài)漏洞分析算法,該算法有效解決了傳統(tǒng)方法中誤報率高的問題,但由于缺少描述所有Web 應(yīng)用程序漏洞的通用模型,其誤報率難以進一步降低。
在鎖定軟件漏洞的位置及類型后,開始對利用該軟件漏洞發(fā)起的攻擊進行緩解,目前可將攻擊方式分為面向數(shù)據(jù)流與面向控制流兩種。George 等[34]提出一種基于圖的工業(yè)物聯(lián)網(wǎng)安全框架漏洞利用方法,可將安全問題表述為圖論問題,為網(wǎng)絡(luò)風(fēng)險評估提供了一個安全框架,但是目前缺少針對成本模型的泛用性標(biāo)準(zhǔn),難以對漏洞進行修補;魏強等[35]總結(jié)了軟件漏洞利用緩解技術(shù),主要包括堆保護、地址隨機化、沙箱保護等,這些技術(shù)可以有效化解大部分面向控制流的攻擊,但其不足之處在于基于數(shù)據(jù)流的攻擊很難進行防御。
2.2.2 完善軟件安全設(shè)計
為了規(guī)范軟件安全設(shè)計,開發(fā)者在軟件開發(fā)過程中必須遵守軟件安全設(shè)計的5 項原則[36],包括保護最薄弱環(huán)節(jié)、縱深防御、故障安全、最小特權(quán)與分隔原則。
保護最薄弱環(huán)節(jié)即對軟件進行安全分析時,要重點關(guān)注系統(tǒng)中最薄弱的地方;縱深防御即開發(fā)者應(yīng)實施多重防護措施來防御可能的攻擊;故障安全即需要開發(fā)者考慮到可能出現(xiàn)的各種故障,并在開發(fā)過程中提前設(shè)計好針對系統(tǒng)故障的安全保護機制;最小特權(quán)是軟件安全設(shè)計中最基本的原則,即將用戶特權(quán)限定在最小范圍內(nèi),在保證用戶正常進行管理操作的同時,不能越權(quán)使用系統(tǒng);分隔原則是指將系統(tǒng)分隔為盡可能獨立的系統(tǒng)單元,如果系統(tǒng)一部分出現(xiàn)了安全隱患,也不會對其他部分造成較大影響。
除傳統(tǒng)的5 項安全設(shè)計原則外,目前提出了更多需要遵守的規(guī)范,如默認(rèn)設(shè)置安全性、不信任第三方系統(tǒng)、公開設(shè)計、簡化系統(tǒng)設(shè)計、使用白名單等。Sion 等[37]提出一種基于風(fēng)險的設(shè)計安全性分析方法,該方法提出的威脅模型解決了系統(tǒng)設(shè)計與具體數(shù)據(jù)脫節(jié)的問題,但其無法隨著時間推移動態(tài)更新安全目錄,時效性不強。
2.2.3 改善軟件安全評估系統(tǒng)
軟件安全評估系統(tǒng)是修復(fù)軟件漏洞的前提,其旨在盡量發(fā)現(xiàn)軟件可能存在的安全風(fēng)險,提高軟件的安全標(biāo)準(zhǔn),在進行安全評估時應(yīng)從需求、結(jié)構(gòu)設(shè)計、編程、詳細設(shè)計、編碼、測試等方面對軟件進行完整的安全性分析。具體如表2 所示。
Table 2 Software security assessment system表2 軟件安全評估系統(tǒng)
未來在軟件的不斷發(fā)展過程中,軟件交互與協(xié)同會更加頻繁,軟件功能會更加智能化,其結(jié)構(gòu)也會更加復(fù)雜,這意味著軟件安全會面臨更嚴(yán)峻的挑戰(zhàn)。
2010 年6 月,“震網(wǎng)”病毒[38]首次被檢測發(fā)現(xiàn),被稱為有史以來最復(fù)雜的網(wǎng)絡(luò)武器。該病毒具有極強的傳播性、隱藏性和破壞力,會定向攻擊核電站、水壩及國家電網(wǎng),危害極大。之后,2011 年的“Duqu”病毒[39]和2012 年的“沙蒙”病毒[40]等超級病毒的相繼出現(xiàn)也意味著針對工業(yè)控制系統(tǒng)的大規(guī)模復(fù)雜攻擊已成為現(xiàn)實。這些攻擊與以往攻擊的不同之處在于,傳統(tǒng)的安全攻擊普遍是利用通用軟件的漏洞發(fā)起的,其目的大多是通過盜取用戶隱私信息謀取非法利益,而以“震網(wǎng)”病毒為代表的攻擊則是針對行業(yè)專用軟件及內(nèi)部專用網(wǎng)絡(luò),對傳統(tǒng)的軟件安全觀念造成了很大沖擊。攻擊發(fā)起者不再是一般的個人或組織,其攻擊目的上升到針對國家的關(guān)鍵敏感行業(yè),這可能成為未來軟件攻擊新的發(fā)展趨勢。一旦這種復(fù)雜的網(wǎng)絡(luò)攻擊開始大規(guī)模出現(xiàn),傳統(tǒng)的軟件安全防御措施將很難再發(fā)揮作用,屆時需要提出全新的軟件安全理念以支撐新的軟件安全防御技術(shù)的研究。
“震網(wǎng)”病毒的出現(xiàn)意味著傳統(tǒng)的工業(yè)控制網(wǎng)絡(luò)系統(tǒng)不再安全,未來應(yīng)更加關(guān)注專業(yè)系統(tǒng)及專業(yè)網(wǎng)絡(luò)的安全檢測。由于現(xiàn)場總線控制系統(tǒng)中的組態(tài)軟件等行業(yè)軟件產(chǎn)品被少數(shù)公司所壟斷,如西門子公司的SIMATIC WinCC 系統(tǒng),即“震網(wǎng)”病毒攻擊的主要目標(biāo),伊朗將其廣泛應(yīng)用于基礎(chǔ)國防設(shè)施中,所以伊朗成為遭受攻擊損失最慘重的國家。因此,工業(yè)控制網(wǎng)絡(luò)安全不能依賴于單一的行業(yè)軟件。
深度學(xué)習(xí)的不斷發(fā)展也為軟件安全防護提供了新的實現(xiàn)方法。如鄭煒等[41]采用深度文本挖掘模型TextCNN與TextRNN 構(gòu)建安全缺陷報告預(yù)測模型,以輔助發(fā)現(xiàn)軟件測試中的安全問題。
此外,國家應(yīng)加強對軟件安全的管控,大力發(fā)展漏洞挖掘技術(shù)相關(guān)研究,對重要的軟件系統(tǒng)使用自主可控的信息安全技術(shù)。同時國家之間應(yīng)加強交流合作,進行網(wǎng)絡(luò)戰(zhàn)的應(yīng)對演習(xí),成立軟件安全應(yīng)急組織,研究針對大規(guī)模攻擊的應(yīng)急措施。如果有高危的軟件安全問題出現(xiàn),能夠及時發(fā)現(xiàn)并加以應(yīng)對,從而將危害降到最低。
隨著如今軟件逐漸朝著智能化與自動化方向發(fā)展,軟件應(yīng)用范圍已從日常生活擴展到航空航天、核技術(shù)控制等重要領(lǐng)域,但是軟件安全問題也日益增加,傳統(tǒng)的安全防護措施已逐漸無法應(yīng)對新型的軟件安全攻擊。本文通過對主要軟件安全問題及其應(yīng)對措施的分析,總結(jié)了軟件安全問題現(xiàn)狀,探討了未來可能會出現(xiàn)的軟件安全問題及相應(yīng)解決措施。不僅公民應(yīng)提升自身的安全意識,而且企業(yè)和國家也要加強軟件安全管理,做好安全檢測工作,做到防患于未然。針對大規(guī)模復(fù)雜攻擊的防護措施將會是未來研究的重點,對于所有的軟件企業(yè)而言,這都是一個新的挑戰(zhàn),沒有很多成功經(jīng)驗可以借鑒,所以需要針對相關(guān)問題進行深入探索與研究。