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