版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、計算機軟件安全技術(shù)第三章第三章 計算機軟件安全技術(shù)3.1 3.1 軟件安全技術(shù)概述軟件安全技術(shù)概述 計算機軟件安全主要是指保證所有計算機程序和文檔資料免遭破壞、非法拷貝、非法使用而采用的技術(shù)和方法,其內(nèi)容包括如下五個方面: (1)軟件的自身安全 (2)軟件的存儲安全 (3)軟件的通信安全 (4)軟件的使用安全 (5)軟件的運行安全 影響計算機軟件安全的因素很多,要確保其安全,必須采取兩方面的措施:一是非技術(shù)性措施,如制定有關(guān)法律、法規(guī),加強各方面的管理等。二是技術(shù)性措施,如采用軟件安全的各種防拷貝加密技術(shù)、防靜態(tài)分析、防動態(tài)跟蹤技術(shù)等。 計算機軟件安全技術(shù)3.2 3.2 軟件分析技術(shù)軟件分析技
2、術(shù) 在進行軟件的破解、解密工作中,一個首要的問題是對軟件進行分析。這些軟件都是機器代碼程序,對于它們分析必須使用靜態(tài)或動態(tài)調(diào)試工具,分析跟蹤其匯編代碼。 3.2.1 靜態(tài)分析技術(shù) 所謂靜態(tài)分析即從反匯編出來的程序清單上分析,從提示信息入手進行分析。如果我們對靜態(tài)反匯編出來的程序清單進行閱讀,就可以從中找到有用的提示信息,了解軟件的編程思路,以便順利破解。 常用的靜態(tài)分析工具有W32DASM、IDA和HIEW等。W32DASM可以方便的反匯編程序,它能靜態(tài)分析程序流程,也可動態(tài)分析程序。在其新版本中,還加強了對中文字符串的提取, W32DASM的界面如下圖所示:計算機軟件安全技術(shù)3.2 3.2
3、軟件分析技術(shù)軟件分析技術(shù)3.2.2 動態(tài)分析技術(shù) 所謂動態(tài)分析是指利用動態(tài)分析工具一步一步地單步執(zhí)行軟件。為了有效地進行動態(tài)跟蹤分析,需要進行以下兩個步驟: 第一步,對軟件進行粗跟蹤。第二步,對關(guān)鍵部分進行細跟蹤。 常用的動態(tài)分析工具有Soft-ICE和Trw2000。 Trw2000完全兼容Soft-ICE的各條指令,并且專門針對軟件破解進行了優(yōu)化,在Windows 9x下跟蹤調(diào)試功能更強。可以設(shè)置各種斷點,并且斷點種類更多。它可以像一些脫殼工具一樣完成對加密外殼的去除,自動生成EXE文件。它還有在DOS下的版本,名為TR。下圖為Trw2000界面:計算機軟件安全技術(shù)3.3 3.3 常用的軟
4、件保護技術(shù)常用的軟件保護技術(shù) 常見的軟件保護技術(shù)有序列號方式、時間限制、警告窗口、Key File保護、功能限制、CDcheck等,下面對它們分別做出簡要介紹。 3.3.1 序列號方式 3.3.2 時間限制 3.3.3 Nag窗口 3.3.4 Key File保護 3.3.5 功能限制的程序 3.3.6 CD-check 計算機軟件安全技術(shù)* *3.4 3.4 反跟蹤技術(shù)反跟蹤技術(shù) 反跟蹤技術(shù)是磁盤加密技術(shù)中最能顯示技術(shù)水平的部分。一個有效的反跟蹤技術(shù)應(yīng)該具有以下三個特征: (1)重要程序段是不可跳越和修改的。 (2)不通過加密系統(tǒng)的譯碼算法,密碼不可破譯。 (3)加密系統(tǒng)是不可動態(tài)跟蹤執(zhí)行的
5、。 計算機軟件安全技術(shù)* *3.4 3.4 反跟蹤技術(shù)反跟蹤技術(shù) 下面我們以DOS中功能強大的動態(tài)跟蹤調(diào)試軟件DEBUG為例,對常用的反跟蹤技術(shù)作出說明。: 3.4.1 抑制跟蹤中斷 3.4.2 封鎖鍵盤輸入 3.4.3 設(shè)置顯示器的顯示性能 3.4.4 檢測跟蹤法 3.4.5 破壞中斷向量表 3.4.6 設(shè)置堆棧指針法 3.4.7 對程序分塊加密執(zhí)行 3.4.8 對程序段進行校驗 3.4.9 迷惑、拖垮解密者 3.4.10 指令流隊列法 3.4.11 逆指令流法 3.4.12 混合編程法 3.4.13 自編軟中斷13技術(shù) 計算機軟件安全技術(shù)3.5 3.5 軟件加殼與脫殼軟件加殼與脫殼 3.5
6、.1 加殼 計算機軟件中的“殼”是一段專門負責(zé)保護軟件不被非法修改或反編譯的程序。它們一般都是先于程序運行,拿到控制權(quán),然后完成它們保護軟件的任務(wù)。就像動植物的殼一般都是在身體外面一樣理所當然。由于這段程序和自然界的殼在功能上有很多相同的地方,基于命名的規(guī)則,大家就把這樣的程序稱為“殼”了。 給軟件加殼的目的主要有兩點:第一就是達到壓縮EXE文件的目的,以節(jié)約存儲空間,方便網(wǎng)絡(luò)傳輸。第二就是加密保密的目的,有一些版權(quán)信息需要保護起來,不能讓別人隨意更改,如作者的姓名、軟件名稱等。能夠完成對可執(zhí)行文件壓縮和對信息加密的軟件,我們稱之為加殼軟件。計算機軟件安全技術(shù)3.5 3.5 軟件加殼與脫殼軟件
7、加殼與脫殼 加殼軟件與一般的Winzip等壓縮軟件是有區(qū)別的。加殼后的文件能直接運行,還是一個可執(zhí)行文件,它們的壓縮是在內(nèi)存中完成的。而Winzip等軟件只能把文件解壓到硬盤中,只是將壓縮后的文件還原成源文件。加殼與沒有加殼軟件的運行情況如圖所示: 常見的加殼軟件有ASPack、UPX、PECompact等。 計算機軟件安全技術(shù)3.5 3.5 軟件加殼與脫殼軟件加殼與脫殼3.5.2 脫殼 “脫殼”顧名思義,就是把在軟件外面起保護作用的“殼”程序去掉。脫殼有兩種方法:一種是自動脫殼,另一種是手動脫殼。 (1)自動脫殼 自動脫殼就是用相應(yīng)的脫殼程序?qū)用艿某绦蜻M行脫殼的方法。一般每種壓縮工具的殼,
8、都會有相應(yīng)的脫殼工具,因此只要找到較新版本的脫殼工具,一般的殼都可輕易脫去。 首先,我們要知道軟件使用的是哪種加殼軟件進行加密的,這就得用到偵測文件類型的工具。常用的偵測文件類型工具有Language 2000、FileInfo、GetTyp、TYP等。 計算機軟件安全技術(shù)3.5 3.5 軟件加殼與脫殼軟件加殼與脫殼下圖為Language 2000中文版的界面: 用偵冊文件類型工具查出軟件使用的加殼工具后,再用相應(yīng)的脫殼工具即可實現(xiàn)自動脫殼。常用的脫殼工具有:UnAspack、AspackDie 1.4、UnPEPack、ProcDump32等。計算機軟件安全技術(shù)3.5 3.5 軟件加殼與脫殼
9、軟件加殼與脫殼(2)手動脫殼 手動脫殼是指不借助自動脫殼工具,而是用動態(tài)調(diào)試工具SOFTICE或TRW2000來脫殼。手動脫殼一般難度較大,使用的工具有調(diào)試器(SoftICE、TRW2000等),內(nèi)存抓取工具(Procdump等),十六進制工具(Hiew、UltraEdit、Hex Workshop等),PE編輯工具(Procdump、Peditor等)。 手動脫殼的一般步驟為: 第一步,確定殼的種類。 第二步,入口點(Entry Point)的確定。 第三步,dump取內(nèi)存已還原文件。 第四步,修正剛dump取的文件。 計算機軟件安全技術(shù)3.6 3.6 軟件安全保護建議軟件安全保護建議 本節(jié)
10、給出的關(guān)于軟件保護的一般性建議,是無數(shù)人經(jīng)驗的總結(jié)。在設(shè)計軟件保護方式時遵守這些準則,將會提高軟件的保護強度。 (1)軟件最終發(fā)行之前一定要將可執(zhí)行程序進行加殼/壓縮,使得解密者無法直接修改程序。 (2)增加對軟件自身的完整性檢查。 (3)不要采用一目了然的名字來命名函數(shù)和文件 (4)盡可能少地給用戶提示信息 。(5)將注冊碼、安裝時間記錄在多個不同的地方。 (6)檢查注冊信息和時間的代碼越分散越好。 (7)通過讀取關(guān)鍵的系統(tǒng)文件的修改時間來得到系統(tǒng)時間的信息。(8)如果有可能的話,可以采用聯(lián)網(wǎng)檢查注冊碼的方法,且數(shù)據(jù)在網(wǎng)上傳輸時要加密。計算機軟件安全技術(shù)3.63.6軟件安全保護建議軟件安全保護建議(9)除了加殼/壓縮之外,還需要自己編程在軟件中嵌入反跟蹤的代碼,以增加安全性。 (10)在檢查注冊信息的時候插入大量無用的運算以誤導(dǎo)解密者,并在檢查出錯誤的注冊信息之后加入延時。(11)給軟件保護加入一定的隨機性 。(12)如果采用注冊碼的保護方式,最好是一機一碼,即注冊碼與機器特征相關(guān) 。(13)如果試用版軟件沒有某項功能,則不要僅僅使相關(guān)的菜單變灰,而是徹底刪除相關(guān)的代碼,使得編譯后的程序中根本沒有相關(guān)的功能代
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 化學(xué)初中說課稿
- 好朋友起玩說課稿
- 治療糖尿病周圍神經(jīng)病變
- 臨時行政主管
- 學(xué)校園區(qū)噴泉施工合同
- 精密儀器公司法務(wù)聘用合同
- 體育場館隔離墻安裝合同
- 市政排水工程級配碎石施工合同
- 綠色制造車間環(huán)保操作規(guī)程
- 2022年大學(xué)林業(yè)工程專業(yè)大學(xué)物理下冊期中考試試題B卷-附解析
- 《中風(fēng)的中醫(yī)治療》PPT課件.ppt
- 防火門窗施工方案
- “雙師教學(xué)”在初中數(shù)學(xué)課堂中的應(yīng)用
- 戰(zhàn)略合作簽約儀式教育PPT課程課件
- 土方填筑碾壓試驗報告
- 老舊小區(qū)排水部分雨污水改造監(jiān)理細則
- 2022年地殼運動與變化教案與學(xué)案
- 《建筑起重吊裝工程安全技術(shù)規(guī)程》JGJ276
- 市政道路水穩(wěn)層項目施工合同
- 睿丁英語小紅帽和大灰狼的故事
- 轉(zhuǎn)人教版七年級上期中復(fù)習(xí)教案
評論
0/150
提交評論