段鳳
摘?要:近年來我國網絡技術發(fā)展較快,加上計算機技術應用范圍不斷擴大,各類軟件普及率在不斷提升。開放性網絡環(huán)境下,加上軟件復雜程度、軟件漏洞不斷遞增導致多項損失在逐步遞增。軟件安全性問題受到社會多領域高度關注,其中軟件安全測試技術運用能有效補充軟件應用中的各項缺陷而誕生。軟件安全性測試技術能有效降低軟件應用風險,保障軟件應用安全性。目前要合理運用安全性測試技術,便于更好地掌握各類軟件應用,能學會規(guī)避軟件運用中的各項風險,構建穩(wěn)定的軟件應用環(huán)境,維護社會安定。
關鍵詞:開放網絡環(huán)境??軟件??安全性測試技術??措施
中圖分類號:TP311?????文獻標識碼:A
Analysis?of?Software?Security?Testing?Technology?in?Open?Network?Environment
DUAN?Feng
(Changchun?Jida?Zhengyuan?Information?Technology?Co.,?Ltd.,?Changchun,?Jilin?Province,?130000?China)
Abstract:?In?recent?years,?China's?network?technology?has?developed?rapidly,?coupled?with?the?continuous?expansion?of?the?application?scope?of?computer?technology,?the?popularity?of?all?kinds?of?software?is?constantly?improving.?Under?the?open?network?environment,?coupled?with?the?increasing?complexity?of?software?and?software?vulnerabilities,?many?losses?are?gradually?increasing.?The?problem?of?software?security?is?highly?concerned?by?many?fields?of?society,?among?which?the?application?of?software?security?testing?technology?can?effectively?supplement?various?defects?in?software?applications.?Software?security?testing?technology?can?effectively?reduce?software?application?risks?and?ensure?software?application?security.?At?present,?it?is?necessary?to?make?rational?use?of?security?testing?technology?to?better?master?various?software?applications,?learn?to?avoid?various?risks?in?software?application,?build?a?stable?software?application?environment,?and?maintain?social?stability.
Key?Words:?Open?network?environment;?Software;?Security?testing?technology;?Measure
軟件安全性主要包含軟件失效安全性、保密安全性,其中失效安全性就是在軟件不間斷運行中,不會產生系統(tǒng)故障的能力。從軟件安全性運行現(xiàn)狀中能得出,安全性失效會導致單位財產、環(huán)境污染、人力損失等問題產生。保密安全性是各類軟件運行中預防數(shù)據(jù)、程序非法竊取的能力。
1軟件漏洞的相關概述
計算機安全漏洞又稱之為計算機脆弱性問題,在計算機系統(tǒng)中對各類軟件進行安裝,需要設定系統(tǒng)軟件防火墻技術、殺毒應用軟件等。主要是為了能有效控制計算機系統(tǒng)軟件漏洞中的多項安全威脅問題,安全漏洞就是應對各類惡意代碼程序,之后其會偽裝成各類正規(guī)應用文件。計算機應用人員打開或是通過后門入侵到計算機系統(tǒng)內,對計算機產生不同損害。從目前實際發(fā)展現(xiàn)狀中能得出,目前各類殺毒應用軟件以及防火墻技術運用具有較強的防范能力,但當黑客入侵電腦之后,會有部分漏洞問題得到有效巡查。但是未得到巡查的部分,將會致使黑客產生惡意攻擊行為,導致諸多信息泄露以及信息完整性受損。所以在殺毒應用軟件、防火墻運用中,在軟件安裝中要注重對各項負面問題集中管控,避免對計算機系統(tǒng)運行產生不良影響。目前可選取的防范技術主要是設定密碼,但是仍舊存有諸多漏洞,需要將二者有效結合運用[1]。
2軟件安全性測試的特點與分類分析
在軟件安全性測試中更突出軟件不應該去做什么,并非是應該執(zhí)行什么。例如:軟件應用階段存在的缺陷問題產生的影響較小,但是難以發(fā)現(xiàn)部分軟件中存有的致命性漏洞錯誤,這樣將會導致諸多用戶產生多項損失。軟件安全性測試中會受到特殊性、安全性要素影響,與軟件非安全性測試相比,安全性測試更加關注軟件運行中的否定要求。例如軟件在運行中,應用人員在登陸三次失敗之后會鎖定賬號。與非安全性測試中的違反常規(guī)操作相比,安全性測試不足之處就是其會受到軟件自身多項副作用影響。比如在非安全性測試中,原本要做G,最終做成了F。在安全性測試缺陷中,本應該做G,但是在做完G的同時順帶做成了F[2]。
在軟件安全測試中,主要涉及到安全功能測試、安全漏洞測試。在軟件安全漏洞中,需要在軟件系統(tǒng)設計以及應用中,存有較多可被利用的漏洞。這樣會導致較多不法分子對諸多軟件漏洞不合理利用,會致使軟件運用處于不安全的環(huán)境中。因此,在運用軟件安全漏洞測試中,需要規(guī)范化整合軟件中多項漏洞問題,做好規(guī)范化修補。對安全需求合理把控,主要是提升多項數(shù)據(jù)機密性、完整性、可靠性、不可否認性。其中還涉及到訪問設置、追蹤追查、身份認證、隱私保護等。
3軟件安全性測試主要方法應用分析
3.1基于故障注入的安全性測試
故障注入的軟件安全性測試中,相關技術人員需要基于各類協(xié)議數(shù)據(jù)包來植入不同的故障類型,這樣能精確化測試出不同的目標軟件能否對各類預制故障展開處理。在測試中通過Wenling?Du組建,實現(xiàn)各類軟件與環(huán)境合理交互,將故障注入技術用于各類安全性故障測試。此類操作是對協(xié)議中諸多數(shù)據(jù)合理修改,主要運用協(xié)議是HIP、HTTP、SNMP、WAP等。故障注入是基于故障注入函數(shù),展開故障多重模擬,將程序強制性引入到不同狀態(tài)中,當選取常規(guī)性故障測試技術將難以展開多向偵查。
3.2基于自盒的安全性測試
此項測試的重點是實現(xiàn)靜態(tài)化分析,是用于不同數(shù)據(jù)競爭、緩沖區(qū)溢出等常見安全性缺陷代碼模式。目前可用的主要有技術推斷、約束性分析、數(shù)據(jù)流分析。在程序運行階段為了能補充攻擊性代碼,以此來判斷測試安全機制是否可用。在動態(tài)編譯技術運用中來構建安全測試框架,這樣能基于測試對程序運行中的各項攻擊行為進行判斷[3]。
3.3攻擊樹理論與威脅模型
在安全性研究方法運用中主要能對運用方法實施劃分,分別為基于漏洞以及各項安全威脅的實踐方法。在漏洞處理中運用多類軟件實現(xiàn)安全漏洞識別,以此來識別軟件內部存有的各項安全漏洞,來提升軟件整體安全性。在安全性威脅中是基于程序分解,對出口點、入口點、數(shù)據(jù)流實施精準化描述與識別。當前要重點做好多項步驟的精準識別,以此來判斷軟件運行中的各項安全風險,對此類問題進行測試來判斷其是否能正常運行。常用的威脅分類方式主要有信息泄露、信息篡改、拒絕服務、欺騙行為等。
4安全性測試的主要方法探析
4.1形式化安全測試
在此項安全測試中需要技術人員全面構建多樣化的數(shù)學模型,基于規(guī)范化、科學化的語言應用為軟件補充多項說明。當前能將此類測試方式進行針對性劃分,首先是展開定理證明,要將多類軟件程序轉化為邏輯公式。在應用前基于各類理論、規(guī)則來精確判斷各類程序合法性以及合規(guī)性。在模型檢測階段,要對軟件行為實施精準化描述。其中S狀態(tài)對應狀態(tài)遷移系統(tǒng),在軟件描述執(zhí)行中對于滿足性質方面基于計算樹邏輯F進行表示,再基于S展開自動化探索。這樣能精準化找尋不滿足F公式的狀態(tài),以此來整合各項軟件漏洞問題。NASA實驗室內JPL可以展開形式化安全測試,做好模型組建。例如在狀態(tài)機內,可以對軟件采取安全測試,實現(xiàn)狀態(tài)空間搜索。集中判斷多項應用路徑中存有的違規(guī)不安全狀態(tài),這樣能實現(xiàn)模型優(yōu)化。對狀態(tài)空間合理調整,還能對狀態(tài)爆炸現(xiàn)狀集中調控[4]。
4.2在模型基礎上的安全功能測試
現(xiàn)階段要進一步規(guī)范軟件行為以及建模構建,之后再將軟件模型對應生成相應的測試應用軟件。目前可用的有有限狀態(tài)機、馬爾科夫鏈、UML模型等,對Robert?Busser以及Mark?Blackburn中的安全功能測試進行擴散。通過SCRModeling進行建模,在表單形式上組建對應的安全行為模型,再將表單模型合理轉為說明模型。之后再生成向量,主要包含輸出與輸入變量。對各類驅動模式深入研發(fā)與測試,之后將測試向量輸入測試驅動模式中,對測試模式運行現(xiàn)狀進行調控。通過安全功能屙屎,能有效獲取軟件整體安全狀態(tài),但是此類測試僅僅適用于安全功能建模能力達到一定狀態(tài)之后[5]。
4.3語法測試運用
目前接口類型較多,涉及到命令行、環(huán)境變量等,接口要對應需要輸入的語法,此類語法會對數(shù)據(jù)格式、數(shù)據(jù)類型實施精確化定義。測試階段,常規(guī)的測試就是對接口語法形式進行有效辨識。這樣能產生多樣化的測試用例,便于測試行為的有效執(zhí)行。在測試范圍調整中要對錯誤、不正確、不合理的語法進行覆蓋,做好軟件缺陷處理,可以結合測試需求將語法測試與故障注入技術有效結合。
4.4模糊測試
在軟件安全漏洞整合中,要全面發(fā)揮模糊測試方法運用價值,將較多不完善的數(shù)據(jù)集中整合插入到應用程序中。以此來判斷軟件程序是否能接受較多的數(shù)據(jù)輸入,綜合判斷模糊測試是否符合邏輯狀態(tài)。通過雜亂數(shù)據(jù)供給來實現(xiàn)目標測試,通過間接性測試來判斷邏輯思維中存有的安全漏洞問題。
5軟件安全性測試的分析步驟
5.1故障檢測處理軟件分析思路
軟件安全性分析要注重從軟件運行環(huán)境條件以及異常影響進行分析,從軟件自身性能需求、功能現(xiàn)狀、設計實現(xiàn)臨界條件等方面展開分析。分析的重點是從系統(tǒng)角度出發(fā),對軟件相關危險性進行分析,分析軟件對系統(tǒng)產生的各項影響。如果在整體規(guī)定范圍內,軟件對系統(tǒng)產生的影響不會導致系統(tǒng)轉入到不安全狀態(tài),其能判斷為軟件為安全的。所以在故障檢測處理軟件安全性分析中要選取以下思路,分析系統(tǒng)中存有的和軟件相關的危險模式,據(jù)此來判斷安全性關鍵的軟件功能與對應特性。之后在分析影響安全性關鍵軟件的功能與特性,由此判斷軟件中存有的危險要素。此外,還要對軟件實現(xiàn)細節(jié)展開深入分析,精確化識別軟件中影響系統(tǒng)安全的危險要素。對軟件實現(xiàn)細節(jié)深入分析,識別軟件中存有的設計缺陷。最后對分析結果展開總結歸納,判定軟件危險風險系數(shù)等級。
要綜合判斷故障檢測處理軟件自身規(guī)模與特征,對故障檢測軟件實施多層次安全性劃分。在功能層次上要注重對系統(tǒng)軟件安全性需求進行判斷,此部分內容主要涉及到系統(tǒng)級、分系統(tǒng)級、軟件安全性分析工作、軟件安全性需求分析。著重對軟件發(fā)生概率、危險模式進行分析,整合安全性驗證要求,對軟件異常情況進行判斷。做好軟件功能設計完備性判斷,分析軟件應用能否滿足系統(tǒng)整體安全性要求。在代碼層次設計中需要對軟件細節(jié)展開安全性分析,重點判斷軟件安全性需求實現(xiàn)的正確性、軟件設計缺陷、軟件應用臨界條件相關問題,分析系統(tǒng)安全性的負面影響要素等[6]。
5.2主要分析步驟
當前相關人員要全面展開系統(tǒng)安全性分析,獲取與應用軟件相關的系統(tǒng)危險模式。在系統(tǒng)安全性分析基礎上要對軟件安全需求合理分析,判定軟件安全性需求、安全性關鍵應用軟件特征,標識出軟件頂層設計結構中存有的不安全模式,做好軟件危險問題排序分析。相關人員要做好軟件代碼以及測試覆蓋分析,判定軟件源代碼設計的規(guī)范性、適用條件以及合理性,軟件測試覆蓋能否滿足整體要求,加上軟件運行中存有的不安全模式以及危險發(fā)生概率。對全部結果實施歸納,判定軟件危險風險系數(shù)。
要重點做好軟件安全性需求分析、軟件代碼安全性分析,并對其進行全面說明。首先從功能層次方面來看,要注重從系統(tǒng)化角度出發(fā)對軟件安全性需求展開分析,此部分內容主要涉及到系統(tǒng)級、分系統(tǒng)級以及軟件安全性分析活動、軟件安全性需求分析。著重對軟件相關的危險模式、發(fā)生概率進行判斷,判定系統(tǒng)對軟件安全性驗證的各項要求。掌握軟件承受異常問題的能力,以及軟件功能設計的完備性、正確性,判定軟件能否適應系統(tǒng)整體安全性要求。
在代碼層次中要從設計角度對軟件展開細節(jié)化的安全性分析,重點判斷軟件安全性需求實現(xiàn)的正確性、軟件應用臨界條件、軟件設計缺陷等,判定系統(tǒng)安全性產生的多重負面影響。相關人員要展開系統(tǒng)安全性分析,獲取和軟件相關的系統(tǒng)危險模式。在系統(tǒng)安全性分析中要做好軟件安全需求分析,分析軟件安全性需求以及關鍵軟件特性,標識出軟件頂層設計中存有的不安全模式,展開軟件應用危險系數(shù)排序。對軟件代碼以及測試覆蓋分析,判定軟件源代碼設計的合理性、正確性以及對應的適用條件。分析軟件測試覆蓋以及整體要求符合性,判定軟件存有的不安全模式以及發(fā)生概率。對各項結果集中歸納,判定軟件風險系數(shù)。對軟件安全型需求合理分析,做好軟件代碼安全性分析說明[7]。
在軟件安全性需求分析階段,需要參照以下步驟展開。在系統(tǒng)以及分系統(tǒng)層次分析中,和軟件相關的系統(tǒng)、硬件、工作時序等,要判定軟件對應的故障模式以及危險問題發(fā)生概率,做好輸入、輸出信號關鍵性等級判斷。在系統(tǒng)以及分系統(tǒng)分析中,對軟件存有的危險問題要注重做好深入細化分析,判定軟件運行中各項問題的發(fā)生概率,這樣能對安全性運行模式、控制模式實施有效轉化,對關鍵控制信號以及功能分析重點進行判斷。
當前要對不同運行狀態(tài)中軟件執(zhí)行功能、控制流、數(shù)據(jù)流進行分析,做好邏輯判斷,分析和系統(tǒng)安全相關的重要功能以及間接性功能。對此類功能的失效模式展開分析,提出對應的糾正措施,估算出問題產生概率。對軟件功能執(zhí)行方式、觸發(fā)條件進行判定,分析軟件功能執(zhí)行時序以及對應的失效模式,提出具體的糾錯措施。對軟件安全型需求以及關鍵性特性進行確定,具體標出頂層設計結構中的不安全模式,展開危險排序。在軟件代碼以及測試覆蓋分析中,要做好代碼數(shù)據(jù)分析,主要涉及到變量定義分析、變量初值分析、變量限幅分析、變量計數(shù)清零分析、變量應用分析等。代碼接口分析過程中,要注重做好輸入地質、邏輯分析、輸出時序分析、硬件初始化分析、軟件內部接口分析、公共區(qū)域應用分析等。全面掌握多項安全性分析技術,在實際型號研制中合理運用。參與到各項技術與理論研究中,判定工程實際需求,注重分析工作對應價值與意義,解決工程多項需求,做好各項總結,整合適應發(fā)展的理論原則,完善諸多可操作性的技術方法[8]。
通過加設密碼方式對計算機訪問端進行加密,保障各項信息能夠得到隱藏。對信息成功加密處理之后,需要將密鑰管理與密文管理相互結合,對系統(tǒng)中多個用戶基本身份進行驗證,能夠起到良好的加密作用。病毒具有較大的偽裝性,在局域網中需要安裝相應的病毒防護軟件,確保計算機安全漏洞能夠得到全面修復。然后再通過防火墻方式確保病毒能夠被隔離,不會對計算機內部造成較大威脅,使得各項數(shù)據(jù)信息得到有效保護。
基于加密方式對計算機訪問端實施加密處理,這樣可以促使多類信息被有效隱藏。在信息數(shù)據(jù)加密處理完成之后,要注重靈活運用密文管理以及密鑰管理,對系統(tǒng)內用戶各項身份實施驗證,這樣能提升加密成效。目前計算機中諸多病毒偽裝性較強,技術人員需要在局域網內安裝多類病毒防護應用軟件,對計算機安全漏洞中的多項行為實施修復。之后通過防火墻進行隔離管控,避免計算機運行受到較大威脅,也能對各項數(shù)據(jù)實施安全保護。
基于加密方式高效化運用能對計算機訪問端實施加密處理操作,這樣能保障多項數(shù)據(jù)信息得到有效保護。在信息數(shù)據(jù)加密處理中,要注重合理運用密文管理、密鑰管理,對系統(tǒng)內用戶多重身份實施綜合驗證,以此來強化加密成效。當前計算機中諸多病毒偽裝性較強,相關技術人員要在局域網內規(guī)范化安裝各類病毒防護軟件,對計算機中存有的各項漏洞實施修復。之后做好防火墻隔離管控,防止計算機運行中受到不同程度威脅,也能對各項數(shù)據(jù)信息進行保護。
軟件安全防護主要通過對訪問通道的控制,對操作系統(tǒng)和數(shù)據(jù)庫進行安全加固,對敏感隱私信息進行數(shù)據(jù)保護,在訪問應用中防止認證繞過,防止縱向和橫向越權,會話應使用業(yè)界主流的Web容器來隨機生成,使用第三方組件/開源軟件時,應禁止使用禁選類的版本,及時清除過時的、低版本的第三方組件/開源軟件?,禁止使用隱秘訪問,產品開發(fā)合法監(jiān)聽接口應遵循國際標準及所在國的法律要求,禁止非法監(jiān)聽等有效措施來確保在開放網絡環(huán)境下的軟件安全。
6結語
在軟件研發(fā)階段做好安全性測試至關重要,通過測試掌握軟件中存有的各項故障、缺陷,對其進行更正能有效控制各項破壞性問題發(fā)生。軟件運用中最為理想化的成效就是運用相對偏少的測試實例來展開高效化、規(guī)范化的安全測試。在軟件安全測試前,需要對測試軟件類型實施判斷,制定更為完善的測試應用方案。對測試結果實施分析,整理更為全面的測試材料,找尋對應的漏洞。傳統(tǒng)網絡安全測試不能適應軟件定義網絡的結構,不能對網絡安全實施系統(tǒng)化測試評價,難以提升網絡安全性。所以要注重做好軟件定義網絡的體系結構、技術體系、組織架構設計,提升安全性測試成效。
參考文獻
[1]?吳愛華.?淺談計算機軟件測試技術與深度開發(fā)模式[J].?電腦知識與技術,2021,17(18):89-90.
[2]?葉婷,曾幸欽,劉惠玲,等.?面向需求的軟件安全性測試方法[J].?電子元器件與信息技術,2021,5(10):168-169.
[3]?李雪飛,封二強.?航空裝備機載安全關鍵軟件安全性測試需求獲取方法研究[J].?航空標準化與質量,2021(3):38-42,52.
[4]?孫志科.?數(shù)據(jù)靜態(tài)分析技術及其在安全軟件測試中的應用[J].?鐵路通信信號工程技術,2021,18(5):9-14,32.
[5]?張?zhí)??探究面向安全性分析的嵌入式軟件測試方式[J].?中國機械,2021(1):109-110.
[6]?陳敬后.?軟件測試在面向對象技術開發(fā)中的應用設計[J].?電腦愛好者(普及版)(電子刊),2021(5):251.
[7]?游澤青.?基于彈性伸縮集群的云負載測試技術[J].?數(shù)碼設計(下),2021,10(1):264.
[8]?呂韜,張雪,馮源,等.?數(shù)據(jù)庫共享存儲集群中緩存融合技術測試方法[J].?工業(yè)技術創(chuàng)新,2021,8(4):60-66.