| 加入桌面 | 手機(jī)版
免費(fèi)發(fā)布信息網(wǎng)站
貿(mào)易服務(wù)免費(fèi)平臺
 
 
當(dāng)前位置: 貿(mào)易谷 » 資訊 » 網(wǎng)絡(luò)應(yīng)用 » 軟件漏洞仍在折磨企業(yè)的五大緣由

軟件漏洞仍在折磨企業(yè)的五大緣由

放大字體  縮小字體 發(fā)布日期:2014-07-14 08:40  來源:IT168網(wǎng)  瀏覽次數(shù):55
  新一個月再度來臨,又是幾十個需要立即安裝的補(bǔ)丁—這樣的循環(huán)似乎永遠(yuǎn)沒有終點(diǎn),這簡直令人感到沮喪。軟件編碼工具在默認(rèn)情況下應(yīng)該是以安全方式創(chuàng)建而成。我們擁有“安全”的編程語言。我們的程序員們在開發(fā)過程中使用SDL(即安全開發(fā)生命周期)編碼工具與技術(shù)。我們的操作系統(tǒng)當(dāng)中包含更多默認(rèn)安全措施,供應(yīng)商們也通過種種手段測試甚至攻擊自己的軟件產(chǎn)品以找尋安全漏洞。還有很多企業(yè)花費(fèi)數(shù)十億美元只為消除各類軟件漏洞。
 
  軟件漏洞仍在折磨企業(yè)的五大緣由
  但為什么經(jīng)過了這一連串努力,軟件漏洞還是層出不窮?為什么就不能通過黑盒與代碼測試把它們提前揪出來?在今天的文章中,我們將共同了解五大理由,看看它們是如何突破上面提到的重重包圍、最終導(dǎo)致漏洞產(chǎn)生的:
 
  1.人類的天性
 
  大多數(shù)—即使不是全部—編碼漏洞都源自人為失誤。其中一些可以被歸結(jié)于預(yù)想不到的意外狀況或者是軟件編碼工具及編譯器造成的奇怪結(jié)果,但很大一部分錯誤仍然是由人類程序員們親手犯下。
 
  無論經(jīng)過多么完善的SDL培訓(xùn)或者選擇怎樣完美的安全工具,我們?nèi)匀恢皇侨祟惗矣锌赡茉谧钇降瓱o奇的地方出現(xiàn)失誤。如果大家想知道為什么我們?nèi)匀恍枰鎸τ?jì)算機(jī)軟件漏洞,那么首要理由就是“是人總會犯錯誤”。
 
  也就是說,我們勾勒出的補(bǔ)救體系還不足以抵消人為失誤所帶來的影響。很多程序員根本沒有接受過足夠的(或者任何)SDL培訓(xùn),或者是缺少安全激勵計(jì)劃的推動。我總是驚訝于,為什么那么多以編寫安全軟件為生的程序員根本不理解如何以安全方式進(jìn)行編程。我敢打賭,即使是銀行當(dāng)中所運(yùn)行的安全軟件也充滿著各式各樣的漏洞,有時候其數(shù)量甚至比被保護(hù)軟件中的漏洞還多。
 
  不過即使是經(jīng)過嚴(yán)格培訓(xùn)的編碼人員有時候也會讓漏洞從指尖溜過。舉例來說,很久以前,曾有個壞家伙利用瀏覽器中用于識別顏色的HTML標(biāo)簽字段創(chuàng)建出緩沖區(qū)溢出漏洞。不同于FFFFFh或者類似的狀況,這位黑客能夠介入到瀏覽器所要使用的顏色字段執(zhí)行代碼當(dāng)中、進(jìn)而引發(fā)緩沖區(qū)溢出。砰!用戶應(yīng)聲倒地。這種攻擊手段確實(shí)很難加以預(yù)見。
 
  2.軟件復(fù)雜程度持續(xù)增加
 
  就自身特性而言,軟件的復(fù)雜程度一直在不斷增加,這當(dāng)然也意味著其代碼行數(shù)的持續(xù)提升。在編程工作當(dāng)中,無論大家的水平有那么高超,每一行代碼中總會存在一定數(shù)量的漏洞與錯誤(雖然并不總能被惡意人士發(fā)現(xiàn)或者利用)。專門負(fù)責(zé)監(jiān)管此類事務(wù)的管理者聲稱,如果每五十行代碼中出現(xiàn)一個錯誤,開發(fā)者就已經(jīng)算是表現(xiàn)出色了。大多數(shù)程序員幾乎每編寫五行或者十五行代碼就會造成一次錯誤。由此想見,像Linux內(nèi)核這樣擁有超過1500萬行代碼的項(xiàng)目中會有多少漏洞與錯誤……大家不妨算算看。
 
  即使不考慮編碼錯誤,程序員們也很難預(yù)見到不同應(yīng)用程序在互聯(lián)網(wǎng)時代下彼此之間的相互作用。大多數(shù)程序必須與其它API相交互,保存并檢索文件,同時運(yùn)行在多種不同類型的設(shè)備之上。所有這些變量都會增加惡意人士成功找到安全薄弱環(huán)節(jié)的可能性。
 
  正義的一方總是處于劣勢。想要寫出邪惡的攻擊指令比較容易,相對而言要抵御這些攻擊活動需要付出更多更艱辛的勞作與心力。我可以用30條匯編語言指令讓對方的計(jì)算機(jī)變成磚頭,但要想抵御住這一進(jìn)攻、保護(hù)者至少要用50000條匯編語言指令才能做到。
 
  3.漏洞檢查工具的本質(zhì)仍然是人
 
  最近一段時間以來,漏洞檢查工具被廣泛用于識別軟件當(dāng)中所存在的安全漏洞。漏洞檢查工具—或者任何其它用于找尋編碼錯誤以及安全漏洞的程序—都是由人所編寫。
 
  這類檢查工具不可能發(fā)現(xiàn)得了顏色屬性字段所引發(fā)的緩沖區(qū)溢出,因?yàn)樗鼈冊诰帉戇^程中根本沒有考慮過要審視這些角落。當(dāng)漏洞被惡意人士成功利用之后,漏洞檢查工具會得到更新,現(xiàn)在它們開始對各種類型的字段進(jìn)行檢查以避免類似的緩沖區(qū)溢出狀況??偨Y(jié)來說,漏洞檢查工具只會根據(jù)我們的指示進(jìn)行檢索。
 
  4.供應(yīng)商責(zé)任缺失
 
  很多安全專家認(rèn)為,如果不能以軟件缺陷為由向供應(yīng)商提起訴訟、那么安全的明天永遠(yuǎn)不會真正到來。我也認(rèn)為更深層次的問責(zé)機(jī)制有助于阻扼安全風(fēng)險,但一味從法律角度出發(fā)卻有可能放慢這一發(fā)展進(jìn)度。如果我們將更重的法律責(zé)任施加于軟件企業(yè)身上,那么如今早已普及的小型移動電話、極度輕薄的音樂播放器乃至在線視頻觀看站點(diǎn)恐怕根本不會出現(xiàn)。
 
  成功是由功能與速度推動的,而非安全性。作為社會的一分子,我們應(yīng)該把安全性建立在創(chuàng)新性之上并將其作為保障手段。這并不一定是壞事—事實(shí)上這種處理思路讓我們發(fā)展得更為迅速。但與此同時,我們也需要權(quán)衡由此給生活帶來的負(fù)面影響。至少到目前為止,我們?nèi)匀辉敢饨邮艽嬖陲L(fēng)險但卻新奇有趣的事物。
 
  5.缺乏針對黑客的問責(zé)機(jī)制
 
  現(xiàn)實(shí)情況是,上述安全問題在短時間內(nèi)根本不可能得到有效解決。不過軟件安全漏洞本身并不是導(dǎo)致問題的真正根源。那些利用這些漏洞并進(jìn)行惡意活動的家伙才是幕后黑手。只要我們繼續(xù)讓大部分黑客逍遙法外,猖獗的惡意攻擊與破壞性軟件仍將繼續(xù)給用戶帶來困擾。
 
  我仍然堅(jiān)信終有一天互聯(lián)網(wǎng)會迎來全面整改,滲透識別機(jī)制將以默認(rèn)方式廣泛普及,而我們則可以讓那些圖謀不軌并造成實(shí)際損失的家伙在真實(shí)世界中付出必要的代價。但在此之前,我們不得不繼續(xù)像打地鼠一般被動防御并接受循環(huán)再循環(huán)的軟件補(bǔ)丁安裝流程。
 
分享與收藏:  資訊搜索  告訴好友  關(guān)閉窗口  打印本文 本文關(guān)鍵字:
 
推薦圖文
贊助商鏈接
推薦資訊
贊助商鏈接
 
站內(nèi)信(0)     新對話(0)