軟體工程中對安全漏洞檢測技術的應用論文

才智咖 人氣:4.22K

0前言

軟體工程中對安全漏洞檢測技術的應用論文

計算機在各領域普遍應用加速了全球現代化和資訊建設的程序。如今人們生活、工作都離不開網路以及計算機,所以計算機通訊安全就顯得尤為重要。人們必須要加強對資訊方面安全的建設,以此來保障使用者使用計算機時能有一個相對安全的環境。近年來,無論是國內還是國外都發生了多起利用軟體漏洞對計算機整體進行攻擊的事件,這使得計算機記憶體在的缺點以及弱點成為了其安全的最大威脅。現今電腦之內僅有防火牆以及各種防毒防毒軟體是遠遠不能滿足使用者需求的,有時這些軟體還會帶來許多問題。所以,相關企業必須要加強對計算機方面安全漏洞相應檢測技術的研究,以此來提高計算機內部軟體工程的整體安全係數,確保使用者使用安全。

1軟體工程常遇到的威脅

1.1軟體質量方面問題

計算機在被應用期間,其內部軟體本身就存在一些不可避免的缺陷以及問題。在進行軟體研發期間,研發人員由於對技術掌握不是非常透徹,以及自身缺陷都會造成計算機內部存在漏洞。這些漏洞直接威脅著計算機整體安全。據顯示,近些年來國內外計算機在使用期間,由內部軟體漏洞所引發的安全事件數量急劇上升,這給許多電腦高手以及網路駭客帶來竊取電腦內部資訊的機會,使得國家以及人民財產方面受到威脅。

1.2非法複製問題

計算機內部軟體是一個科技含量較高的產品,在企業研發期間需要大量物力、人力以及財力才能完成。相關企業在軟體研發方面所付出的遠遠比硬體開發高很多。但是,因為計算機內部軟體比較容易被複制,這就直接造成了產權方面的危害。近年來,全世界非法盜用相關軟體造成的損失非常龐大,並且事件次數逐年上升。特別是我國,近些年來國內經濟過快增長,這就使得科技相對落後,與已開發國家現有科技存在一定差距。這就使得不法分子趁虛而入,藉助軟體存在漏洞對計算機進行整體攻擊,非法複製電腦內部資訊,造成了使用者以及國家財產方面嚴重損失。

2軟體工程之中常見安全漏洞

電腦系統有一個重要特徵就是存在安全漏洞,人們可以利用這一弱點編寫攻擊程式,通過授權方式獲得沒有經過授權方面的相關訪問,進而對電腦系統造成危害。即使電腦中安裝了防火牆,防毒以及防毒軟體,但對於那些利用軟體方面漏洞進行攻擊的程式來說,並沒有多大用處,甚至還會出現更大的危害。站在當前軟體市場角度來看,有幾個漏洞經常被人們所忽視。分別為JBOSS伺服器、LIBTIFF軟體庫、NET-SNMP以及ZLIB。非法人員可以Geronimo2.0安全漏洞實現遠端造作,繞過電腦中身份識別這一環節,通過對電腦插入惡意的軟體程式碼獲取訪問控制權限。JBOSS伺服器中的3.2.4到4.0.5這些版本中,存在目錄遍歷這一安全漏洞。LIBTIFF軟體庫則是讀寫、標籤影象具有的檔案格式的相關檔案。NET-SNMP中的NET以及SNMP協議檔案之中存在安全漏洞。ZLIB是一個對資料進行壓縮的軟體庫,因為庫裡的程式碼解釋長度大於1,進而導致安全漏洞[1-2]。

3安全漏洞相應檢測技術

3.1靜態檢測

(1)靜態分析靜態分析這一方法主要對程式當中程式碼進行直接以及全面的掃描,同時提煉出程式當中關鍵語句以及語法,再通過對其含義理解來分析該程式,並嚴格依照事先設定安全的標準以及漏洞特性來進行電腦整體檢驗.第一,對程式當中語句以及語法深入分析,這是最為原始的一種靜態分析法。這一方法檢測數量有限,並且檢測出來的漏洞通常都是比較嚴重已經被人們所知的.第二,就是嚴格依照標準進行相關檢測,一般來說,電腦系統之中程式執行實際情況進行描述就是安全標準。其實程式本身也是一種程式設計標準,也就是指那些一般的安全標準,我們常說的漏洞模式[3]。人們可以利用這一規則對漏洞進行檢測,然後再通過規則處理對相關資料進行接收,然後將其轉換為處理器在進行內部描述,最後對系統程式進行整體檢測。(2)程式檢驗程式檢測主要借用一些抽象軟體當中的程式獲取一些形式化程式以及模模型,再採用形式化的漏洞檢驗方法來對其展開檢測,最後使用正確檢測方法對電腦漏洞進行整體檢測。模型檢測一般是建立電腦系統內部程式相關有向圖以及狀態機來完成檢測的。通常情況下,這種檢測包含兩種方式,分別為符號化以及自動模型轉換。符號化就是將抽象模型轉換為與語法樹形式,並用公式描述出來,人們通過公式來判斷其是否符合需求。自動模型轉換需要將檢測程式進一步轉變成等價的自動機,在將這兩個自動機相互補充、替換,從而形成新的自動機,然後再將判定的系統轉變成能夠容納的語言形式進行檢測[4]。

3.2動態監測

許多駭客經常使用“NULL”表現在尾部的字串來對記憶體進行覆蓋,以此來實現攻擊目的。應用程式碼存在頁面之中對映技術可以使駭客在使用“NULL”尾部字串對記憶體進行覆蓋,這使得跳轉到相對簡單記憶體區域的相關操作顯得十分困難。從這方面來看,隨機將內碼表對映到各不相同記憶體地址之上,可以有效降低依靠猜測記憶體地址對頁面進行攻擊的機率。

4安全漏洞方檢測技術在軟體工程之中的應用

4.1對競爭條件方面的'漏洞進行預防

對一些由於競爭條件產生的漏洞,主要預防方法就是將形成競爭相關編碼運用原子化方法進行操作。執行單位當中最小的就是編碼,程式在執行期間沒有任何情況可以對其產生干擾,原子化相關操作應用的是一種鎖定方法,利用預防系統存在的某種狀態的改變來形成問題。以達到間接呼叫文名系統的目的,進而把使用的檔案和控制代碼進行描述[5]。

4.2對緩衝區存在的漏洞進行預防

利用軟體程式之中較為危險的函式檢查來預防緩衝區的漏洞溢位,可以使用安全軟體版本來代替不安全的版本。例如,人們可以將原來externcharstrcat替換成externcharstrncat等。

4.3對隨機產生的漏洞進行預防

在預防隨機漏洞時,可以使用一些效能良好的裝置。隨機發生相關裝置一般都自帶一套密碼演算法,以此來保證裝置自身安全。這樣,即使軟體遭遇攻擊,駭客掌握了系統中的所有演算法,也不能獲取電腦中已經形成的資訊資料流。

4.4對格式化字串漏洞的預防

採用嚴謹預防,直接使用格式方面常量來進行程式設計,這樣可以避免為駭客提供在系統內建立字串的機會。一般程式中不定引數都存在格式化現有字串方面的漏洞,使用者在使用這些函式期間,必須要保證其中每個引數具有的個數和均衡效能。此外,應用Windows作業系統下屬的視窗進行資料輸出工作同樣可以減少漏洞的威脅能力[6]。

5結束語

當今社會,網路發展使得軟體工程日趨複雜,計算機之中軟體安全關係到全球每一個使用計算機網路使用者的安全。現階段,國內計算機內部軟體安全一般表現在程式編寫以及檢測消除相關軟體漏洞,不法人員常利用這些漏洞對電腦進行攻擊。所以,只有人們對這些軟體漏洞原始碼進行分析以及查詢,才可能從根本上彌補這些漏洞,進而提升計算機整體安全係數。

參考文獻:

[1]王勇利.安全漏洞檢測技術在計算機軟體中應用研究[J].數字技術與應用,2016.

[2]陳斯,盧華.計算機軟體中安全漏洞檢測技術及其應用[J].電子技術與軟體工程,2016.

[3]朱江.計算機軟體中安全漏洞檢測技術及其應用[J].通訊世界,2016.

[4]陳伽,蔡映雪,胡輝等.計算機軟體安全檢測技術及其應用實踐研究[J].無線互聯科技,2016.

[5]王媛媛.研究計算機軟體中安全漏洞檢測技術[J].資訊化建設,2016.

[6]謝劍.計算機軟體安全漏洞檢測技術的應用分析[J].資訊與電腦(理論版),2016.