魏建兵
摘 要
在計算機(jī)應(yīng)用系統(tǒng)中,要保障計算機(jī)軟件的安全運行,使之不被跟蹤是至關(guān)重要的。在計算機(jī)系統(tǒng)數(shù)據(jù)安全保護(hù)中,軟件的安全是一個重要的組成部分。為了保障計算機(jī)軟件的安全運行,就需要采用軟件的反跟蹤技術(shù)手段,做好技術(shù)防范措施,從而從源頭上防止軟件被跟蹤。本文探討了計算機(jī)軟件安全中的反跟蹤技術(shù)。
【關(guān)鍵詞】計算機(jī) 軟件安全 反跟蹤技術(shù)
在計算機(jī)應(yīng)用系統(tǒng)中,要保障計算機(jī)軟件的安全運行,使之不被跟蹤是至關(guān)重要的。在計算機(jī)系統(tǒng)數(shù)據(jù)安全保護(hù)中,軟件的安全是一個重要的組成部分。要保證計算機(jī)軟件的正常運行,只有安全的系統(tǒng)硬件平臺是遠(yuǎn)遠(yuǎn)不夠的,而且要保證軟件安全,必須防止軟件被監(jiān)視,或者受到干擾,甚至被被篡改,其中最為重要的是,在計算機(jī)運行的過程中,必須要防止軟件被不法分子惡意跟蹤。為了保障計算機(jī)軟件的安全運行,就需要采用軟件的反跟蹤技術(shù)手段,做好技術(shù)防范措施,從而從源頭上防止軟件被跟蹤。
1 反跟蹤技術(shù)概述
顧名思義,反跟蹤技術(shù)是一種防止計算機(jī)被惡意跟蹤的技術(shù),它的目的是為了保障計算機(jī)系統(tǒng)軟件的安全。通常情況下,跟蹤者通過利用調(diào)試工具,或運用跟蹤軟件來跟蹤正在運行的計算機(jī)軟件,通過跟蹤來竊取軟件源碼,進(jìn)而攻擊、破壞計算機(jī)的系統(tǒng)。反跟蹤技術(shù)是軟件根據(jù)各種調(diào)試和反匯編等工具的特征,對計算機(jī)軟件進(jìn)行實時的檢測,來防止破解者利用各種調(diào)式會哦跟蹤工具來跟蹤計算機(jī)軟件的運行,偷偷竊取計算機(jī)軟件的源碼,進(jìn)而取消防拷貝、加密等功能。一個好的計算機(jī)加密軟件,通常都是和優(yōu)良的反跟蹤技術(shù)密切聯(lián)系,分不開的。一個完善可靠的軟件保護(hù)措施,與軟件的反跟蹤技術(shù)息息相關(guān),他們之間有著緊密的聯(lián)系。計算機(jī)軟件如果被攻擊,分析其原因,往往都是從計算機(jī)的軟件被跟蹤開始的。因此,如果不運用反跟蹤技術(shù),計算機(jī)軟件的程序在跟蹤者的眼里就一覽無遺,沒有一點安全性,使跟蹤者很容易通過跟蹤,來破解計算機(jī)軟件的信息和數(shù)據(jù),進(jìn)而威脅到計算機(jī)用戶的信息安全。
實際上,反跟蹤技術(shù)是反復(fù)制技術(shù)的保護(hù)者,在整個計算機(jī)磁盤的加密技術(shù)中,最能顯示計算機(jī)技術(shù)水平的部分,就是反跟蹤技術(shù)。如果反跟蹤技術(shù)存在漏洞和瑕疵,對整個計算機(jī)加密技術(shù)的影響是巨大的,牽一發(fā)而動全身,其可靠性就會極大的降低??偹苤?,這個世界上沒有十全十美的事物,不存在毫無漏洞的反跟蹤技術(shù),但是,隨著編程工具的更新,反跟蹤技術(shù)會積累很多有益的經(jīng)驗,使得反跟蹤技術(shù)越來越完善,但是,毫無瑕疵的完美的反跟蹤技術(shù)只是一個趨勢,而很難實現(xiàn)的,這就是愛因斯坦的相對論,與哲學(xué)中講的“絕對和相對”,他們的道理,在科學(xué)上的解釋是相通的,有異曲同工之妙。反跟蹤技術(shù)雖然存在著微小的漏洞和瑕疵,但是它在隨著時間的推移而不斷完善和發(fā)展,反跟蹤技術(shù)本身其它的技術(shù),可以最大限度的盡可能的減小漏洞和瑕疵,使反跟蹤技術(shù)日益趨于完美優(yōu)良,也體現(xiàn)了這個技術(shù)的卓越。
2 反跟蹤技術(shù)的主要方法
計算機(jī)軟件所采用的反跟蹤技術(shù),目前主要有以下幾種:
2.1 破壞單步中斷和斷點中斷
采取對單步中斷和斷點中斷進(jìn)行組合的措施,可以產(chǎn)生強(qiáng)大的動態(tài)調(diào)試跟蹤功能,在反跟蹤技術(shù)中,破壞單步中斷和斷點中斷發(fā)揮著巨大的作用。使用其它中斷來代替斷點中斷,可以使一切跟蹤者的調(diào)試軟件的運行環(huán)境,受到徹底的破壞,從根本上被破壞,使跟蹤者寸步難行,從而防止計算機(jī)用戶被跟蹤,以不應(yīng)萬變保護(hù)計算機(jī)的信息安全。
2.2 封鎖鍵盤輸入
各類跟蹤軟件有一個共同的特點,他們在進(jìn)行跟蹤時,都要通過鍵盤,來接受操作者發(fā)出的命令,調(diào)試跟蹤的結(jié)果如何,要在計算機(jī)的屏幕上才能顯示出來。因此,針對跟蹤軟件的這個特點,在加密系統(tǒng)不需要利用鍵盤,來輸入信息的情況下,反跟蹤技術(shù)可以關(guān)閉計算機(jī)的鍵盤,來阻止跟蹤者接受操作者的命令,從而使跟蹤軟件的運行環(huán)境遭到破壞,避免跟蹤者的繼續(xù)跟蹤。為了封鎖鍵盤輸入,反跟蹤技術(shù)可采用的方法有:禁止接收鍵盤數(shù)據(jù),禁止鍵盤中斷,改變鍵盤中斷程序的入口地址等方法。
2.3 檢測跟蹤法
當(dāng)計算機(jī)的跟蹤者利用各種跟蹤調(diào)試軟件,進(jìn)而對計算機(jī)的加密系統(tǒng)分析執(zhí)行時,計算機(jī)一定會顯示出現(xiàn)異常情況,因為計算機(jī)的運行環(huán)境、中斷入口、時間長短等許多地方,與正常執(zhí)行加密系統(tǒng)不同。在這些顯示異常的地方,若果采取一定的反跟蹤措施,就可保護(hù)計算機(jī)的加密系統(tǒng)。為了提高跟蹤者的解密難度,可將檢測跟蹤的反跟蹤技術(shù)頻繁使用,前呼后擁,環(huán)環(huán)相扣,讓破譯者眼花繚亂,使他們感覺永遠(yuǎn)無法解密,從而可以極大地提高計算機(jī)軟件的安全性。
2.4 分塊加密執(zhí)行程序
為了防止計算機(jī)加密程序被反匯編,加密程序要采取分塊密文的形式,來裝入內(nèi)存。在執(zhí)行時,由上一塊加密程序,來對其進(jìn)行譯碼。一旦執(zhí)行結(jié)束后,必須馬上清除掉。這樣,不管在什么時候,解密者都不可能從內(nèi)存中,得到完整的解密程序代碼。此方法,不但能防止計算機(jī)軟件被反匯編,而且還可使解密者素手無策,沒有辦法設(shè)置斷點,進(jìn)而防止計算機(jī)被跟蹤。
2.5 逆指令流法
在計算機(jī)內(nèi)存中,指令代碼發(fā)存放的順序,是先存放低級地址,后存放高級地址,從低地址向高地址存放,這也是CPU執(zhí)行指令的順序。針對CPU執(zhí)行指令的這個特征,逆指令流法采用特意改變順序執(zhí)行指令的方式,使CPU按逆向的方式執(zhí)行指令,這樣,對于已經(jīng)逆向牌類的指令代碼,解密者根本無法閱讀,進(jìn)而防止解密者的跟蹤。
總之,計算機(jī)軟件的安全防護(hù)是一項系統(tǒng)工程,任何一個環(huán)節(jié)出現(xiàn)漏洞,都會給解密者帶來可乘之機(jī),因此,計算機(jī)從業(yè)人員需要熟練掌握反跟蹤技術(shù)的方法,采取各種措施,來提高計算機(jī)軟件的安全性。
參考文獻(xiàn)
[1]李明富.如何確保數(shù)據(jù)庫軟件安全[J].金融電子化,2011(04).
[2]趙世平.淺談匯編語言在反跟蹤和反破解中的應(yīng)用[J].程序員,2006(03).
[3]高敏芬,王志.二進(jìn)制代碼分析與反分析技術(shù)開放實驗的探索[J].實驗室科學(xué),2011(03).
[4]朱燁行,李艷玲.混合加密算法在軟件防盜版中的應(yīng)用[J].電腦編程技巧與維護(hù),2011(16).
[5]王洪錦,常鴻,溫文麗.軟件加密的反跟蹤技術(shù)[J].河北北方學(xué)院學(xué)報(自然科學(xué)版),2005(03).
作者單位
甘肅林業(yè)職業(yè)技術(shù)學(xué)院 甘肅省天水市 741020endprint