李恒勝
摘要:文章根據(jù)個人實際的模擬實驗操作經(jīng)驗及查閱的相關(guān)資料,對計算機軟件中安全漏洞的相關(guān)概念、檢測技術(shù)的發(fā)展現(xiàn)狀及檢測技術(shù)的應(yīng)用等展開分析。
關(guān)鍵詞:計算機軟件;安全漏洞;檢測技術(shù);漏洞;維護
計算機技術(shù)的應(yīng)用符合時代的潮流,很多工作都需要通過計算機的運作實現(xiàn)。計算軟件的開發(fā)是一個循序漸進的過程。有些黑客會利用軟件開發(fā)中的源代碼缺陷入侵計算機軟件及破壞系統(tǒng),造成計算機用戶的經(jīng)濟財產(chǎn)損失。目前商業(yè)界、金融銀行界、國家資料保存等都需要計算機幫助處理事務(wù)。計算機軟件安全漏洞的出現(xiàn),威脅到的不僅是個人的利益,還有國家的利益。由此國家和相關(guān)部門都非常重視計算機軟件安全漏洞檢測技術(shù)的開發(fā)。
計算機軟件安全漏洞檢測技術(shù)能夠提高軟件質(zhì)量和安全性、減少軟件安全漏洞,為計算機軟件安全運行提供保障。近年來,計算機軟件安全漏洞檢測技術(shù)經(jīng)過程序員的不斷維護和開發(fā),在電腦維護過程中占據(jù)重要的位置。但計算機軟件安全漏洞檢測技術(shù)開發(fā)是一個長期的過程,需要得到各方的重視。
1.計算機軟件中安全漏洞的相關(guān)概念
1.1計算機軟件中安全漏洞的概念
計算機軟件漏洞主要是指在計算機系統(tǒng)編程中,產(chǎn)生錯誤沒得到修復(fù),從而導(dǎo)致程序的錯誤,在計算機軟件的應(yīng)用過程中存在安全隱患,如果得不到及時修復(fù),會給整個計算機系統(tǒng)運行造成安全隱患,容易造成資料丟失、被盜等情況。
1.2計算機軟件安全漏洞的分類
計算機在研制和開發(fā)過程中,因為當(dāng)前技術(shù)的局限性,程序員不能夠?qū)⑾到y(tǒng)運行系統(tǒng)程序進行完善,造成計算機在運算過程中會出現(xiàn)閃退、黑屏等情況,但暫時不影響計算機的暫時運行。有些計算機黑客會利用漏洞侵入計算機,盜取資料,或者造成區(qū)域網(wǎng)的崩盤。計算機的安全漏洞主要分為兩類,一類是功能性漏洞;另一類是安全性漏洞。功能性漏洞主要是編程序者代碼編寫錯誤、計算機系統(tǒng)運行過程中產(chǎn)生的邏輯性錯誤,或者是在計算機中運行與所裝系統(tǒng)不兼容的軟件。功能性漏洞需要程序員不斷進行完善,當(dāng)然這個漏洞是不斷產(chǎn)生的。安全性漏洞主要指所產(chǎn)生的漏洞在通常情況下,并不影響計算機的正常運行,但如果被黑客侵入的話,會造成損失。比如軟件運行時突然產(chǎn)生錯誤提示,導(dǎo)致計算機自動執(zhí)行一些錯誤指令等。
2.計算機軟件中安全漏洞檢測技術(shù)的發(fā)展現(xiàn)狀
國內(nèi)的計算機軟件市場相對國外的管理較為混亂,是因為:一,計算機軟件市場需求量較大,很多軟件公司為了短期的利益采用短時間開發(fā),開發(fā)過程中造成軟件編寫程序上錯誤,程序員對于計算機軟件開發(fā)遺留的程序漏洞,且后期維護不到位。國內(nèi)軟件市場監(jiān)管不到位,很多法律法規(guī)都沒完善,讓有問題的軟件流入市場;二,正規(guī)的軟件版權(quán)費用太高,很多的用戶都喜歡低廉的盜版軟件;三,很多小的軟件公司為了節(jié)約軟件開發(fā)的高額費用,采取非法復(fù)制其他公司開發(fā)出來的比較成熟的安全軟件的手法,給研發(fā)公司造成重大的經(jīng)濟損失。長久下去,很多小公司得到發(fā)展,那些具備開發(fā)能力的大公司反而缺乏發(fā)展市場,因此計算機安全漏洞檢測技術(shù)得不到發(fā)展。
就目前的情況來看,很多計算機用戶因為安裝的軟件不夠完整,導(dǎo)致被黑客盜用程序代碼,造成計算機在運行過程中存在較大安全隱患。計算機會被攻擊、盜取資料、窺視等。我國很多用戶都安裝了防火墻、殺毒軟件以及入侵檢測系統(tǒng)等以保證計算機軟件安全運行,但防火墻、入侵檢測和反病毒軟件的存在對于高級黑客的入侵抵抗力較弱,主要是因為安裝安全軟件有可能帶來新的漏洞。通常,大型應(yīng)用軟件安裝在客戶電腦中時,仍因開發(fā)的局限性,有很多安全相關(guān)的漏洞存在于軟件程序中,需要廠商進行不斷的維護,且漏洞是隱性的,需要在運行中才能發(fā)現(xiàn)。
3.計算機軟件中安全漏洞的檢測技術(shù)
計算機軟件運行過程中的安全漏洞,主要是指計算機系統(tǒng)中軟件及協(xié)議的具體實現(xiàn)或系統(tǒng)安全策略上存在安全方面的缺陷。軟件中存在安全漏洞很容易造成系統(tǒng)的閃退、卡機、崩盤等情況,及時地修復(fù)計算機軟件中的安全漏洞,能一定程度地降低軟件使用中的安全隱患。目前針對安全漏洞檢測涉及3個方面的檢測,如下所述。
3.1靜態(tài)檢測技術(shù)
計算機軟件安全漏洞檢測技術(shù)中靜態(tài)檢測主要是指對計算機軟件安全漏洞采用靜態(tài)分析法,對程序的源代碼或二進制代碼進行分析。通常這種檢測技術(shù)準確性、完整性占據(jù)優(yōu)勢,但據(jù)相關(guān)的用戶數(shù)據(jù)反映,在靜態(tài)分析過程中其會產(chǎn)生大量的誤報信息。
靜態(tài)分析指的是對需要檢測的系統(tǒng)程序進行源代碼的掃描工作,從語義、語法等角度進行全面解析,同時將待測系統(tǒng)程序的自身特性直接進行分析,利用這種方法尋找漏洞。現(xiàn)在隨著技術(shù)的更新,開發(fā)了另外一種檢測技術(shù)即程序檢測,檢測抽象系統(tǒng)內(nèi)的程序源代碼。一般來說,計算的靜態(tài)檢測技術(shù)主要是指檢測漏洞的特點之間有著密切的關(guān)聯(lián)。
計算機靜態(tài)檢測技術(shù)僅僅支持檢測計算機運行程序中出現(xiàn)的程序錯誤,對于更新的軟件漏洞并不能夠及時地檢測,得出掃描結(jié)果。對于結(jié)果,還需要專業(yè)人員進行結(jié)果核對、處理、然后及時地修正檢測方法,消耗的人力、時間過多。
3.2動態(tài)檢測
動態(tài)檢測主要是針對黑客入侵,通過內(nèi)存映射、非執(zhí)行棧、安全共享庫、沙箱等檢測項,排除安全隱患。很多黑客通常會利用應(yīng)用中“NULL”結(jié)尾的字符串進行內(nèi)存覆蓋,進行內(nèi)存映射的檢測能夠避免黑客的攻擊,從而維護計算機軟件系統(tǒng)的安全。動態(tài)監(jiān)測是在不改變源代碼甚至是二進制代碼的情況下,對運行程序進行檢測。這種類型的檢測主要是通過修改程序運行環(huán)境來進行。不同的操作系統(tǒng)環(huán)境下,反映的數(shù)據(jù)也不同,加大了檢測的難度。
3.3其他混合檢測方法
計算機軟件中安全漏洞檢測技術(shù)如果僅采用靜態(tài)檢測和動態(tài)檢測方法,得出的數(shù)據(jù)都有缺點。如果將兩者結(jié)合,對計算機軟件中安全漏洞的檢測就會較為精確。其他混合檢測方法主要有測試庫、源碼改編、棧保護的編譯器擴展、二進制代碼改編、規(guī)范檢測和異常檢測等。計算機軟件中安全漏洞的檢測方法,需要不斷地更新,不能局限為一種。
4.計算機軟件中安全漏洞檢測技術(shù)的應(yīng)用
計算機軟件中安全漏洞檢測技術(shù)主要是針對計算機系統(tǒng)和軟件中可能存在的安全漏洞,是帶有目的性的檢測,屬于預(yù)防性檢測。計算機軟件中安全漏洞檢測技術(shù)的大范圍推廣,對避免出現(xiàn)運行程序錯誤,減少編寫程序中的錯誤有很大幫助。
4.1緩沖區(qū)出現(xiàn)的漏洞
緩沖區(qū)出現(xiàn)計算機軟件安全漏洞主要是因為有的計算機用戶安裝來歷不明的計算機軟件,或者盜版軟件,這會造成計算機軟件系統(tǒng)的在使用過程中出現(xiàn)漏洞,—旦這些軟件接觸到計算機編程中的漏洞,就會造成計算機系統(tǒng)的崩盤。這個需要計算機軟件中安全漏洞檢測過程中,進行軟件隔離,從根源上避免這些軟件接觸到系統(tǒng)漏洞的可能。計算機中安全漏洞檢測技術(shù)的開發(fā),重點在檢測方面,對于計算機安裝的軟件都會進行安全風(fēng)險提示、對站點代碼進行檢測,對用戶進行安全性提示,避免出現(xiàn)軟件技術(shù)的問題。
4.2防止競爭漏洞
防止競爭漏洞主要是針對那些能夠產(chǎn)生競爭條件的編碼對源代碼產(chǎn)生低分子化過程,這個過程對于系統(tǒng)的破壞不大。如果在運行過程中利用語句或者是代碼去組織其執(zhí)行程序,只會增加系統(tǒng)運行的漏洞,且收效甚微;需要在其快要完成的階段直接阻攔,將其進程快速結(jié)束即可。
4.3防止隨機數(shù)漏洞
一個穩(wěn)定的系統(tǒng)運行環(huán)境中,所有的電腦系統(tǒng)的操作都是按照特定的程序進行的,但很多的黑客攻擊者,都是使用隨機數(shù)發(fā)生器,使用大量的隨機數(shù)數(shù)據(jù)流沖擊計算機,造成計算機不能迅速處理完數(shù)據(jù)致使CPu全速運轉(zhuǎn),最終導(dǎo)致計算機系統(tǒng)崩潰,無法正常工作而死機,如果讓計算機重啟,隨機數(shù)產(chǎn)生器又會重新工作,讓電腦再次陷入上次的模式狀態(tài),繼續(xù)死機,電腦中的數(shù)據(jù)也就成了無法調(diào)用的垃圾數(shù)據(jù)。據(jù)筆者搜集的大量數(shù)據(jù)分析得知,這種隨機漏洞被利用后難以修補,對于計算機的硬件和軟件都帶來極大的損傷。這方面的技術(shù)需要相關(guān)的程序人員進行不斷完善,預(yù)防漏洞。
4.4格式化字符串方面漏洞
很多的計算機用戶并不是專業(yè)的人員,對計算機軟件的選擇都是根據(jù)本身實用性進行調(diào)整,用戶不太了解計算機軟件,有可能還會對其進行格式化字符串處理。這會造成計算機格式化字符串方面的漏洞。這種漏洞主要是尋找源代碼中可能存在的執(zhí)行性語句,對其直接進行編譯,對計算機的安全系統(tǒng)造成巨大的損害。針對這方面的漏洞,最有效的操作方式就是在程序的源代碼中清除痕跡,不給黑客留下可乘之機,可以在源代碼中盡量多地使用格式常量,至于代碼格式串,能不用就不用。
5.結(jié)語
隨著社會的發(fā)展,計算機成為人們生活的必需品,計算機軟件中的安全漏洞檢測技術(shù)需要不斷地完善,增強對黑客攻擊的抵抗力。相關(guān)的軟件開發(fā)人員,需要不斷地對開發(fā)軟件進行完善。從軟件安全問題上下功夫,從根源上解決軟件可能出現(xiàn)的安全漏洞,且需要定期對軟件進行維護。計算機軟件中的安全漏洞檢測技術(shù)是通信及計算機安全的基礎(chǔ)檢測方法,建議大范圍地推廣增強用戶自身的操作安全意識。