公務員期刊網(wǎng) 論文中心 正文

計算機病毒密碼算法檢測系統(tǒng)淺析

前言:想要寫出一篇引人入勝的文章?我們特意為您整理了計算機病毒密碼算法檢測系統(tǒng)淺析范文,希望能給你帶來靈感和參考,敬請閱讀。

計算機病毒密碼算法檢測系統(tǒng)淺析

摘要:本文基于密碼算法設計了計算機病毒檢測系統(tǒng),詳細分析了密碼算法,并進行了系統(tǒng)測試。結果發(fā)現(xiàn),此系統(tǒng)不僅可自動迅速識別計算機病毒內(nèi)的密碼算法,還可準確跟蹤檢測計算機病毒運行時的密碼算法調(diào)用與加密過程,同時可由病毒加殼、加密通信、加密文件等視角分析以全面刻畫病毒。

關鍵詞:計算機病毒;密碼算法;病毒檢測;靜態(tài)特征;動態(tài)行為

0引言

隨著計算機技術的快速發(fā)展,人們的日常生產(chǎn)生活發(fā)生了巨大轉(zhuǎn)變,也獲得了各種便捷,從而演變成了現(xiàn)代化社會最不可獲取的部分。但是計算機系統(tǒng)的安全性依舊有待提高,其不安全因素主要有計算機信息系統(tǒng)自身與人為操作,而計算機病毒是最常見且最不安全的因素,病毒的存在不僅會造成資源與財富浪費,還會導致社會性災難。并且在互聯(lián)網(wǎng)技術的大范圍普及下,郵件、腳本、網(wǎng)頁、木馬、蠕蟲等病毒愈發(fā)泛濫,計算機用戶隨時隨地可能會遭遇攻擊,所以采用多元化算法與技術檢測并預防計算機病毒已是必然趨勢[1]。據(jù)此本文基于密碼算法設計了計算機病毒檢測系統(tǒng),以期能夠為防控病毒做出一定貢獻。

1密碼算法分析

密碼算法可保護并認證數(shù)據(jù),通常用于為計算機提供安全防護,但是密碼算法實際上一把雙刃劍,其在提供安全保護的同時,很多攻擊者也會利用密碼算法逃避安全部門的追蹤檢測,導致有關調(diào)查取證工作難以有序開展,從而嚴重威脅著網(wǎng)絡安全與社會和諧[2]。一般情況下,密碼算法主要基于加殼免殺、加密通信、加密勒索方式散播計算機病毒。其中加殼免殺方式會隱藏病毒特性,無法以靜態(tài)特征碼識別并查殺病毒;加密通信方式會通過HTTP協(xié)議偽裝為網(wǎng)頁,以此繞過防火墻入侵計算機;加密勒索方式的破壞性更巨大,此方式下散播的病毒會直接導致用戶的計算機文件訪問異常,給用戶帶來不可挽回的損失。比特幣勒索病毒便是以加密勒索方式攻擊了數(shù)百萬計算機,支付贖金用戶上萬,用戶根本無法獲取解密私鑰,無法破解,很多用戶只能通過支付贖金的方式獲取密鑰?,F(xiàn)階段基于密碼算法的計算機病毒依舊在蔓延,對此如何有效迅速地檢測并分析病毒的工作已經(jīng)迫在眉睫,但是當前計算機病毒密碼算法的自動化系統(tǒng)研究仍舊亟待深入[3]。

2計算機病毒結構模式分析

雖然當前的計算機病毒逐漸海量化,類型也逐步復雜化,但基于病毒程序代碼分析,對比可知大部分病毒程序均是由引導模塊、傳染模塊、破壞表現(xiàn)模塊共同組成的。計算機病毒結構模式[4]具體見圖1。

3計算機病毒密碼算法檢測系統(tǒng)設計

3.1系統(tǒng)架構

計算機病毒密碼算法檢測系統(tǒng)整體架構具體見圖2。用戶通過傳輸待分析病毒文件于系統(tǒng)中,經(jīng)過三種算法檢測之后生成最終分析結果[5-6]。第一環(huán)節(jié),加殼算法檢測。基于加殼指紋特征庫和PE文件信息熵相結合的方式,可保障計算機病毒加殼算法識別精確度。其中已知殼需構建指紋特征庫,以指紋特征匹配可迅速精準地檢測出既知病毒使用的加殼算法;而未知殼由于加殼會造成文件數(shù)據(jù)信息熵增高,對此可通過PE文件信息熵方式對病毒進行檢測,以得知是否加殼。第二環(huán)節(jié),靜態(tài)特征密碼算法檢測。以病毒靜態(tài)特征的詳細分析實現(xiàn)密碼算法和靜態(tài)特征的映射建設,通過算法特征匹配檢測病毒所使用的加密算法。第三環(huán)節(jié),動態(tài)行為加密算法檢測。一般情況下病毒為了逃避追蹤檢測,會采取加殼或指令轉(zhuǎn)變技術隱匿算法的靜態(tài)特征碼,這時便可基于靜態(tài)檢測分析,進行算法動態(tài)分析與實時跟蹤,從而提升密碼算法檢測精確度。

3.2密碼算法

3.2.1加殼檢測算法分析與實驗。3.2.1.1算法分析。傳統(tǒng)靜態(tài)加殼技術影響下,加殼病毒執(zhí)行過程中會具備相同編碼,所以檢測與破解難度較小。為滿足計算機病毒防護需求,攻擊者提供了動態(tài)加殼技術理念,以隨機加密算法,加密病毒程序代碼與數(shù)據(jù)。為生成各種特征加密殼,通過隨機密鑰加密算法可實現(xiàn)多態(tài)引擎技術,基于保障同功能病毒樣本,以新方式生成不同病毒代碼序列,且序列中的特征碼完全不同,從而導致單一特征碼匹配檢測技術逐漸失去了效用。3.2.1.2檢測實驗。通常基于UPX加殼算法指紋特征匹配模式進行已知殼檢測,結果具體見圖3。由圖可以看出,UPX加殼算法能夠迅速且準確地識別病毒為64為可執(zhí)行程序,且可通過UPX實現(xiàn)加殼處理。檢測未知殼的時候利用以信息熵檢測技術研發(fā)檢測儀器,檢測結果具體見圖4。由圖可以看出,第一個樣本評估為加殼,第二個樣本評估為未加殼,準確率較高。3.2.2靜態(tài)特征密碼檢測算法分析與實驗。3.2.2.1算法分析。靜態(tài)特征密碼檢測算法即基于提取算法所需靜態(tài)特征碼,以標識密碼算法。所以特征碼提取合理性在很大程度上決定了密碼算法識別準確率。就原理不同主要劃分為Hash函數(shù)、分組密碼算法、公鑰密碼算法三種算法。Hash函數(shù)密碼算法主要利用初始鏈值進行加密數(shù)據(jù)處理分析,即算法使用的初始鏈值保持不變的狀態(tài)下,以這些數(shù)據(jù)為靜態(tài)特征;分組密碼算法則通過S盒和置換盒等常數(shù)發(fā)揮輔助作用,其中S盒負責混淆視聽,定義為靜態(tài)數(shù)值,就AES算法來講若病毒文件匹配到了S盒,則病毒可能使用了AES算法;公鑰密碼算法中的RSA算法在生成密鑰的時候需采用2個大素數(shù),而大素數(shù)的生成以小素數(shù)表為載體,所以此特征可在RSA算法中得以應用。3.2.2.2檢測實驗。通過靜態(tài)特征密碼檢測算法原理進行特征提取,并將其輸入到IDA密碼算法檢測插件特征庫中。就AES算法來講,S盒作為16×16數(shù)組,在內(nèi)存內(nèi)可存儲為256長度字符串。AES字節(jié)替代是關于字節(jié)的非線性變換,可通過可逆變換復合生成。首先計算字節(jié)E于有限域內(nèi)的乘法逆元,結果記錄為F=f0f1f2f3f4f5f6f7,規(guī)定字節(jié)00變化成自身;其次對結果F進行仿映射變換,字節(jié)E替代之后的結果記錄為字節(jié)G=G0G1G2G3G4G5G6G7?;谵D(zhuǎn)變生成S盒字節(jié)代替數(shù)組,以其中前32個字節(jié)作為算法識別特征。ruleRijnDael_AES_CHAR{meta:Author=“_pusher_”Description=“RijnDaelAES(check2)[char]”date=“2021-06”strings:$c0={637C777BF26B6FC53001672BFED7AB76CA82C97DFA5947F0ADD4A2AF9CA472C0}condition:$c0}基于以上所提取靜態(tài)字符串特征,進行AES密碼算法識別檢測,結果具體見圖5。由圖可以看出,靜態(tài)特征密碼檢測算法可以快速準確識別出待檢測程序內(nèi)所包含的AES算法。3.2.3動態(tài)行為密碼檢測算法分析與實驗。3.2.3.1搭建環(huán)境。以Cuckoo沙箱為載體搭建病毒動態(tài)行為密碼檢測分析環(huán)境,動態(tài)分析環(huán)境配置具體見表1。3.2.3.2算法庫調(diào)用。許多病毒程序基于調(diào)用既有密碼算法庫得以實現(xiàn)。以動態(tài)行為密碼檢測算法調(diào)動過程識別技術,能夠?qū)Σ《境绦蜻\行過程中加載的密碼算法動態(tài)鏈接庫加以準確識別,還可就API函數(shù)跟蹤調(diào)取的加密函數(shù)與所傳輸相關參數(shù)進一步生成密碼算法調(diào)取序列,以還原勒索病毒中密碼算法的具體調(diào)用過程。病毒可通過CryptoAPI給予的有關函數(shù)對用戶數(shù)據(jù)進行加密,并保障解密密鑰不被用戶獲取。3.2.3.3加密通信流量。就已經(jīng)感染病毒的計算機來講,所有主機操作系統(tǒng)類型均需以網(wǎng)絡實現(xiàn)和攻擊者之間的通信交流,還可為了逃避檢測選用加密通信方式。在計算機病毒動態(tài)化運行過程中會產(chǎn)生網(wǎng)絡流量數(shù)據(jù),將其儲存為pcap格式文件,在此文件中可分析病毒所用加密通信協(xié)議。通過加密通信流量分析可以順利獲得病毒在外對接的控制端或中轉(zhuǎn)站的具體IP。對于比較簡單的加密通信方式來講,可以選用還原流量的方式,但是高強復雜的加密通信方式選用流量還原方式雖然難度非常大,但是依舊可在獲取IP通信地址的同時,以防火墻為輔助阻隔木馬或者僵尸網(wǎng)絡,最大程度上防控威脅,避免信息丟失。通過Cuckoo沙箱環(huán)境執(zhí)行病毒程序,可獲取加密流量數(shù)據(jù)報文,以數(shù)據(jù)報文分析可知,病毒程序與控制服務器的信息傳輸均會基于TLS加密處理。

4系統(tǒng)測試

以WannaCry勒索病毒為例進行計算機病毒密碼算法檢測系統(tǒng)測試。WannaCry是一種蠕蟲式勒索病毒軟件,在2017年爆發(fā)時,大量高校與企業(yè)內(nèi)網(wǎng)遭遇感染,甚至部分政府機構業(yè)務被迫中斷。此病毒加密設計比較復雜,切實結合了RSA算法密位屬性、價格、座位號。如果可訂,可用航班及其可訂座位屬性信息將流向捆綁銷售規(guī)則配置模塊。步驟三:捆綁銷售規(guī)則配置模塊,是航空公司業(yè)務人員事先配置完成的捆綁產(chǎn)品規(guī)則,支持配置特定屬性的座位與特定機票品牌捆綁形成一個產(chǎn)品銷售單位,例如“長腿位”和“超值經(jīng)濟艙”可以捆綁且限量20個,“長腿位”和“豪華商務艙”不可捆綁;若步驟二中查出可被捆綁的座位屬性,系統(tǒng)將出行用戶選定的航班下可用于捆綁的品牌和座位,組成該品牌機票+座位的捆綁產(chǎn)品,例如“長腿位”加“超值經(jīng)濟艙”是一個銷售單位,在前端展示給出行用戶;捆綁產(chǎn)品經(jīng)過捆綁銷售調(diào)價配置模塊的價格管道處理,生成專屬價格,例如配置了整體減價50元,那么捆綁產(chǎn)品的價格等于機票總價與長腿位總價之和為1550元(不含稅),減去50元后,為出行用戶展示該捆綁產(chǎn)品價格為“1500元”(不含稅);以及為出行用戶展示捆綁產(chǎn)品詳情及優(yōu)惠金額,前文提到的整體減價50元,將以“立省50元”類似的方式在前端展示給出行用戶;不同常旅客等級可能享受不同的優(yōu)惠金額,例如配置了金卡用戶折上再8折,該出行用戶身份為金卡用戶,在前端展示“1200元”(不含稅)、“金卡立省300元”的醒目提示。步驟四:在捆綁產(chǎn)品選購模塊中,每個捆綁產(chǎn)品旁都有一個預訂按鈕,出行用戶可一鍵選擇心儀的品牌機票加座位的捆綁產(chǎn)品,繼續(xù)后續(xù)預訂流程。點擊預訂后,系統(tǒng)將機票和座位產(chǎn)品都加入訂單信息中,記錄機票和座位屬性的詳細信息。之后進入出行用戶信息填寫頁,需要為每一個出行用戶填寫姓名、證件類型、證件號、聯(lián)系方式等信息,填寫完畢并確認后,系統(tǒng)根據(jù)捆綁產(chǎn)品中的座位屬性,在之后的選擇座位頁面中,以座位圖的樣式向出行用戶開放該座位屬性對應可選座位區(qū)域,出行用戶在區(qū)域范圍內(nèi)選擇具體座位,點擊座位圖標即可確認座位,將座位號加入訂單信息中。待出行用戶完成確認航班信息和座位號后,系統(tǒng)即將正式生成訂單,繼續(xù)步驟五的支付和預訂操作。若出行用戶改變主意,不想購買該捆綁產(chǎn)品,可與前端的特定按鈕交互,返回原來的品牌機票流程,繼續(xù)選購機票產(chǎn)品。步驟五:系統(tǒng)生成訂單后,出行用戶進行支付操作,支付成功的狀態(tài)下,系統(tǒng)的捆綁產(chǎn)品預訂模塊收到支付成功狀態(tài)后,立刻向中國航信訂座系統(tǒng)和EMD系統(tǒng)發(fā)出預訂請求,后臺系統(tǒng)根據(jù)預訂請求,對出行用戶所選的機票、座位產(chǎn)品分別進行出票。待中國航信訂座系統(tǒng)、EMD系統(tǒng)完成出票并回傳預訂成功信息至該系統(tǒng)后,系統(tǒng)判斷捆綁產(chǎn)品整體預訂成功,在前端頁面向旅客展示預訂成功信息及訂單信息。至此,該系統(tǒng)所有涉及的模塊的工作實現(xiàn)介紹完畢,全流程結束。

參考文獻

[1]里格斯·道格尼斯.迷航:航空運輸經(jīng)濟與營銷(第四版)[M].北京.航空工業(yè)出版社.2011(01).

[2]王文芳,羅亮生.基于差異化服務收益理念的航空公司品牌運價體系戰(zhàn)略研究.CNKI:SUN:GLXZ.0.2019-14-051[Z].

[3]趙禮強,陳鵬,張子辰,鄭曉宇.考慮旅客異質(zhì)性的機票捆綁銷售研究[D].沈陽航空航天大學經(jīng)濟與管理學院,110136.2020(50).

作者:張文川 單位:蘭州石化職業(yè)技術大學