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