前言:想要寫出一篇引人入勝的文章?我們特意為您整理了計(jì)算機(jī)病毒密碼算法檢測系統(tǒng)淺析范文,希望能給你帶來靈感和參考,敬請閱讀。
摘要:本文基于密碼算法設(shè)計(jì)了計(jì)算機(jī)病毒檢測系統(tǒng),詳細(xì)分析了密碼算法,并進(jìn)行了系統(tǒng)測試。結(jié)果發(fā)現(xiàn),此系統(tǒng)不僅可自動(dòng)迅速識別計(jì)算機(jī)病毒內(nèi)的密碼算法,還可準(zhǔn)確跟蹤檢測計(jì)算機(jī)病毒運(yùn)行時(shí)的密碼算法調(diào)用與加密過程,同時(shí)可由病毒加殼、加密通信、加密文件等視角分析以全面刻畫病毒。
關(guān)鍵詞:計(jì)算機(jī)病毒;密碼算法;病毒檢測;靜態(tài)特征;動(dòng)態(tài)行為
0引言
隨著計(jì)算機(jī)技術(shù)的快速發(fā)展,人們的日常生產(chǎn)生活發(fā)生了巨大轉(zhuǎn)變,也獲得了各種便捷,從而演變成了現(xiàn)代化社會(huì)最不可獲取的部分。但是計(jì)算機(jī)系統(tǒng)的安全性依舊有待提高,其不安全因素主要有計(jì)算機(jī)信息系統(tǒng)自身與人為操作,而計(jì)算機(jī)病毒是最常見且最不安全的因素,病毒的存在不僅會(huì)造成資源與財(cái)富浪費(fèi),還會(huì)導(dǎo)致社會(huì)性災(zāi)難。并且在互聯(lián)網(wǎng)技術(shù)的大范圍普及下,郵件、腳本、網(wǎng)頁、木馬、蠕蟲等病毒愈發(fā)泛濫,計(jì)算機(jī)用戶隨時(shí)隨地可能會(huì)遭遇攻擊,所以采用多元化算法與技術(shù)檢測并預(yù)防計(jì)算機(jī)病毒已是必然趨勢[1]。據(jù)此本文基于密碼算法設(shè)計(jì)了計(jì)算機(jī)病毒檢測系統(tǒng),以期能夠?yàn)榉揽夭《咀龀鲆欢ㄘ暙I(xiàn)。
1密碼算法分析
密碼算法可保護(hù)并認(rèn)證數(shù)據(jù),通常用于為計(jì)算機(jī)提供安全防護(hù),但是密碼算法實(shí)際上一把雙刃劍,其在提供安全保護(hù)的同時(shí),很多攻擊者也會(huì)利用密碼算法逃避安全部門的追蹤檢測,導(dǎo)致有關(guān)調(diào)查取證工作難以有序開展,從而嚴(yán)重威脅著網(wǎng)絡(luò)安全與社會(huì)和諧[2]。一般情況下,密碼算法主要基于加殼免殺、加密通信、加密勒索方式散播計(jì)算機(jī)病毒。其中加殼免殺方式會(huì)隱藏病毒特性,無法以靜態(tài)特征碼識別并查殺病毒;加密通信方式會(huì)通過HTTP協(xié)議偽裝為網(wǎng)頁,以此繞過防火墻入侵計(jì)算機(jī);加密勒索方式的破壞性更巨大,此方式下散播的病毒會(huì)直接導(dǎo)致用戶的計(jì)算機(jī)文件訪問異常,給用戶帶來不可挽回的損失。比特幣勒索病毒便是以加密勒索方式攻擊了數(shù)百萬計(jì)算機(jī),支付贖金用戶上萬,用戶根本無法獲取解密私鑰,無法破解,很多用戶只能通過支付贖金的方式獲取密鑰。現(xiàn)階段基于密碼算法的計(jì)算機(jī)病毒依舊在蔓延,對此如何有效迅速地檢測并分析病毒的工作已經(jīng)迫在眉睫,但是當(dāng)前計(jì)算機(jī)病毒密碼算法的自動(dòng)化系統(tǒng)研究仍舊亟待深入[3]。
2計(jì)算機(jī)病毒結(jié)構(gòu)模式分析
雖然當(dāng)前的計(jì)算機(jī)病毒逐漸海量化,類型也逐步復(fù)雜化,但基于病毒程序代碼分析,對比可知大部分病毒程序均是由引導(dǎo)模塊、傳染模塊、破壞表現(xiàn)模塊共同組成的。計(jì)算機(jī)病毒結(jié)構(gòu)模式[4]具體見圖1。
3計(jì)算機(jī)病毒密碼算法檢測系統(tǒng)設(shè)計(jì)
3.1系統(tǒng)架構(gòu)
計(jì)算機(jī)病毒密碼算法檢測系統(tǒng)整體架構(gòu)具體見圖2。用戶通過傳輸待分析病毒文件于系統(tǒng)中,經(jīng)過三種算法檢測之后生成最終分析結(jié)果[5-6]。第一環(huán)節(jié),加殼算法檢測?;诩託ぶ讣y特征庫和PE文件信息熵相結(jié)合的方式,可保障計(jì)算機(jī)病毒加殼算法識別精確度。其中已知?dú)ば铇?gòu)建指紋特征庫,以指紋特征匹配可迅速精準(zhǔn)地檢測出既知病毒使用的加殼算法;而未知?dú)び捎诩託?huì)造成文件數(shù)據(jù)信息熵增高,對此可通過PE文件信息熵方式對病毒進(jìn)行檢測,以得知是否加殼。第二環(huán)節(jié),靜態(tài)特征密碼算法檢測。以病毒靜態(tài)特征的詳細(xì)分析實(shí)現(xiàn)密碼算法和靜態(tài)特征的映射建設(shè),通過算法特征匹配檢測病毒所使用的加密算法。第三環(huán)節(jié),動(dòng)態(tài)行為加密算法檢測。一般情況下病毒為了逃避追蹤檢測,會(huì)采取加殼或指令轉(zhuǎn)變技術(shù)隱匿算法的靜態(tài)特征碼,這時(shí)便可基于靜態(tài)檢測分析,進(jìn)行算法動(dòng)態(tài)分析與實(shí)時(shí)跟蹤,從而提升密碼算法檢測精確度。
3.2密碼算法
3.2.1加殼檢測算法分析與實(shí)驗(yàn)。3.2.1.1算法分析。傳統(tǒng)靜態(tài)加殼技術(shù)影響下,加殼病毒執(zhí)行過程中會(huì)具備相同編碼,所以檢測與破解難度較小。為滿足計(jì)算機(jī)病毒防護(hù)需求,攻擊者提供了動(dòng)態(tài)加殼技術(shù)理念,以隨機(jī)加密算法,加密病毒程序代碼與數(shù)據(jù)。為生成各種特征加密殼,通過隨機(jī)密鑰加密算法可實(shí)現(xiàn)多態(tài)引擎技術(shù),基于保障同功能病毒樣本,以新方式生成不同病毒代碼序列,且序列中的特征碼完全不同,從而導(dǎo)致單一特征碼匹配檢測技術(shù)逐漸失去了效用。3.2.1.2檢測實(shí)驗(yàn)。通?;赨PX加殼算法指紋特征匹配模式進(jìn)行已知?dú)z測,結(jié)果具體見圖3。由圖可以看出,UPX加殼算法能夠迅速且準(zhǔn)確地識別病毒為64為可執(zhí)行程序,且可通過UPX實(shí)現(xiàn)加殼處理。檢測未知?dú)さ臅r(shí)候利用以信息熵檢測技術(shù)研發(fā)檢測儀器,檢測結(jié)果具體見圖4。由圖可以看出,第一個(gè)樣本評估為加殼,第二個(gè)樣本評估為未加殼,準(zhǔn)確率較高。3.2.2靜態(tài)特征密碼檢測算法分析與實(shí)驗(yàn)。3.2.2.1算法分析。靜態(tài)特征密碼檢測算法即基于提取算法所需靜態(tài)特征碼,以標(biāo)識密碼算法。所以特征碼提取合理性在很大程度上決定了密碼算法識別準(zhǔn)確率。就原理不同主要?jiǎng)澐譃镠ash函數(shù)、分組密碼算法、公鑰密碼算法三種算法。Hash函數(shù)密碼算法主要利用初始鏈值進(jìn)行加密數(shù)據(jù)處理分析,即算法使用的初始鏈值保持不變的狀態(tài)下,以這些數(shù)據(jù)為靜態(tài)特征;分組密碼算法則通過S盒和置換盒等常數(shù)發(fā)揮輔助作用,其中S盒負(fù)責(zé)混淆視聽,定義為靜態(tài)數(shù)值,就AES算法來講若病毒文件匹配到了S盒,則病毒可能使用了AES算法;公鑰密碼算法中的RSA算法在生成密鑰的時(shí)候需采用2個(gè)大素?cái)?shù),而大素?cái)?shù)的生成以小素?cái)?shù)表為載體,所以此特征可在RSA算法中得以應(yīng)用。3.2.2.2檢測實(shí)驗(yàn)。通過靜態(tài)特征密碼檢測算法原理進(jìn)行特征提取,并將其輸入到IDA密碼算法檢測插件特征庫中。就AES算法來講,S盒作為16×16數(shù)組,在內(nèi)存內(nèi)可存儲(chǔ)為256長度字符串。AES字節(jié)替代是關(guān)于字節(jié)的非線性變換,可通過可逆變換復(fù)合生成。首先計(jì)算字節(jié)E于有限域內(nèi)的乘法逆元,結(jié)果記錄為F=f0f1f2f3f4f5f6f7,規(guī)定字節(jié)00變化成自身;其次對結(jié)果F進(jìn)行仿映射變換,字節(jié)E替代之后的結(jié)果記錄為字節(jié)G=G0G1G2G3G4G5G6G7?;谵D(zhuǎn)變生成S盒字節(jié)代替數(shù)組,以其中前32個(gè)字節(jié)作為算法識別特征。ruleRijnDael_AES_CHAR{meta:Author=“_pusher_”Description=“RijnDaelAES(check2)[char]”date=“2021-06”strings:$c0={637C777BF26B6FC53001672BFED7AB76CA82C97DFA5947F0ADD4A2AF9CA472C0}condition:$c0}基于以上所提取靜態(tài)字符串特征,進(jìn)行AES密碼算法識別檢測,結(jié)果具體見圖5。由圖可以看出,靜態(tài)特征密碼檢測算法可以快速準(zhǔn)確識別出待檢測程序內(nèi)所包含的AES算法。3.2.3動(dòng)態(tài)行為密碼檢測算法分析與實(shí)驗(yàn)。3.2.3.1搭建環(huán)境。以Cuckoo沙箱為載體搭建病毒動(dòng)態(tài)行為密碼檢測分析環(huán)境,動(dòng)態(tài)分析環(huán)境配置具體見表1。3.2.3.2算法庫調(diào)用。許多病毒程序基于調(diào)用既有密碼算法庫得以實(shí)現(xiàn)。以動(dòng)態(tài)行為密碼檢測算法調(diào)動(dòng)過程識別技術(shù),能夠?qū)Σ《境绦蜻\(yùn)行過程中加載的密碼算法動(dòng)態(tài)鏈接庫加以準(zhǔn)確識別,還可就API函數(shù)跟蹤調(diào)取的加密函數(shù)與所傳輸相關(guān)參數(shù)進(jìn)一步生成密碼算法調(diào)取序列,以還原勒索病毒中密碼算法的具體調(diào)用過程。病毒可通過CryptoAPI給予的有關(guān)函數(shù)對用戶數(shù)據(jù)進(jìn)行加密,并保障解密密鑰不被用戶獲取。3.2.3.3加密通信流量。就已經(jīng)感染病毒的計(jì)算機(jī)來講,所有主機(jī)操作系統(tǒng)類型均需以網(wǎng)絡(luò)實(shí)現(xiàn)和攻擊者之間的通信交流,還可為了逃避檢測選用加密通信方式。在計(jì)算機(jī)病毒動(dòng)態(tài)化運(yùn)行過程中會(huì)產(chǎn)生網(wǎng)絡(luò)流量數(shù)據(jù),將其儲(chǔ)存為pcap格式文件,在此文件中可分析病毒所用加密通信協(xié)議。通過加密通信流量分析可以順利獲得病毒在外對接的控制端或中轉(zhuǎn)站的具體IP。對于比較簡單的加密通信方式來講,可以選用還原流量的方式,但是高強(qiáng)復(fù)雜的加密通信方式選用流量還原方式雖然難度非常大,但是依舊可在獲取IP通信地址的同時(shí),以防火墻為輔助阻隔木馬或者僵尸網(wǎng)絡(luò),最大程度上防控威脅,避免信息丟失。通過Cuckoo沙箱環(huán)境執(zhí)行病毒程序,可獲取加密流量數(shù)據(jù)報(bào)文,以數(shù)據(jù)報(bào)文分析可知,病毒程序與控制服務(wù)器的信息傳輸均會(huì)基于TLS加密處理。
4系統(tǒng)測試
以WannaCry勒索病毒為例進(jìn)行計(jì)算機(jī)病毒密碼算法檢測系統(tǒng)測試。WannaCry是一種蠕蟲式勒索病毒軟件,在2017年爆發(fā)時(shí),大量高校與企業(yè)內(nèi)網(wǎng)遭遇感染,甚至部分政府機(jī)構(gòu)業(yè)務(wù)被迫中斷。此病毒加密設(shè)計(jì)比較復(fù)雜,切實(shí)結(jié)合了RSA算法密位屬性、價(jià)格、座位號。如果可訂,可用航班及其可訂座位屬性信息將流向捆綁銷售規(guī)則配置模塊。步驟三:捆綁銷售規(guī)則配置模塊,是航空公司業(yè)務(wù)人員事先配置完成的捆綁產(chǎn)品規(guī)則,支持配置特定屬性的座位與特定機(jī)票品牌捆綁形成一個(gè)產(chǎn)品銷售單位,例如“長腿位”和“超值經(jīng)濟(jì)艙”可以捆綁且限量20個(gè),“長腿位”和“豪華商務(wù)艙”不可捆綁;若步驟二中查出可被捆綁的座位屬性,系統(tǒng)將出行用戶選定的航班下可用于捆綁的品牌和座位,組成該品牌機(jī)票+座位的捆綁產(chǎn)品,例如“長腿位”加“超值經(jīng)濟(jì)艙”是一個(gè)銷售單位,在前端展示給出行用戶;捆綁產(chǎn)品經(jīng)過捆綁銷售調(diào)價(jià)配置模塊的價(jià)格管道處理,生成專屬價(jià)格,例如配置了整體減價(jià)50元,那么捆綁產(chǎn)品的價(jià)格等于機(jī)票總價(jià)與長腿位總價(jià)之和為1550元(不含稅),減去50元后,為出行用戶展示該捆綁產(chǎn)品價(jià)格為“1500元”(不含稅);以及為出行用戶展示捆綁產(chǎn)品詳情及優(yōu)惠金額,前文提到的整體減價(jià)50元,將以“立省50元”類似的方式在前端展示給出行用戶;不同常旅客等級可能享受不同的優(yōu)惠金額,例如配置了金卡用戶折上再8折,該出行用戶身份為金卡用戶,在前端展示“1200元”(不含稅)、“金卡立省300元”的醒目提示。步驟四:在捆綁產(chǎn)品選購模塊中,每個(gè)捆綁產(chǎn)品旁都有一個(gè)預(yù)訂按鈕,出行用戶可一鍵選擇心儀的品牌機(jī)票加座位的捆綁產(chǎn)品,繼續(xù)后續(xù)預(yù)訂流程。點(diǎn)擊預(yù)訂后,系統(tǒng)將機(jī)票和座位產(chǎn)品都加入訂單信息中,記錄機(jī)票和座位屬性的詳細(xì)信息。之后進(jìn)入出行用戶信息填寫頁,需要為每一個(gè)出行用戶填寫姓名、證件類型、證件號、聯(lián)系方式等信息,填寫完畢并確認(rèn)后,系統(tǒng)根據(jù)捆綁產(chǎn)品中的座位屬性,在之后的選擇座位頁面中,以座位圖的樣式向出行用戶開放該座位屬性對應(yīng)可選座位區(qū)域,出行用戶在區(qū)域范圍內(nèi)選擇具體座位,點(diǎn)擊座位圖標(biāo)即可確認(rèn)座位,將座位號加入訂單信息中。待出行用戶完成確認(rèn)航班信息和座位號后,系統(tǒng)即將正式生成訂單,繼續(xù)步驟五的支付和預(yù)訂操作。若出行用戶改變主意,不想購買該捆綁產(chǎn)品,可與前端的特定按鈕交互,返回原來的品牌機(jī)票流程,繼續(xù)選購機(jī)票產(chǎn)品。步驟五:系統(tǒng)生成訂單后,出行用戶進(jìn)行支付操作,支付成功的狀態(tài)下,系統(tǒng)的捆綁產(chǎn)品預(yù)訂模塊收到支付成功狀態(tài)后,立刻向中國航信訂座系統(tǒng)和EMD系統(tǒng)發(fā)出預(yù)訂請求,后臺系統(tǒng)根據(jù)預(yù)訂請求,對出行用戶所選的機(jī)票、座位產(chǎn)品分別進(jìn)行出票。待中國航信訂座系統(tǒng)、EMD系統(tǒng)完成出票并回傳預(yù)訂成功信息至該系統(tǒng)后,系統(tǒng)判斷捆綁產(chǎn)品整體預(yù)訂成功,在前端頁面向旅客展示預(yù)訂成功信息及訂單信息。至此,該系統(tǒng)所有涉及的模塊的工作實(shí)現(xiàn)介紹完畢,全流程結(jié)束。
參考文獻(xiàn)
[1]里格斯·道格尼斯.迷航:航空運(yùn)輸經(jīng)濟(jì)與營銷(第四版)[M].北京.航空工業(yè)出版社.2011(01).
[2]王文芳,羅亮生.基于差異化服務(wù)收益理念的航空公司品牌運(yùn)價(jià)體系戰(zhàn)略研究.CNKI:SUN:GLXZ.0.2019-14-051[Z].
[3]趙禮強(qiáng),陳鵬,張子辰,鄭曉宇.考慮旅客異質(zhì)性的機(jī)票捆綁銷售研究[D].沈陽航空航天大學(xué)經(jīng)濟(jì)與管理學(xué)院,110136.2020(50).
作者:張文川 單位:蘭州石化職業(yè)技術(shù)大學(xué)