軟件加密技術(shù)內(nèi)幕

出版時間:2004-8-1  出版社:電子工業(yè)出版社  作者:看雪學(xué)院  頁數(shù):404  字數(shù):448000  
Tag標簽:無  

內(nèi)容概要

本書結(jié)合實例,重點講述了軟件加密技術(shù)及其實施方案,以幫助程序員更好地保護自己的軟件。書中介紹了相關(guān)系統(tǒng)底層知識,例如,PE格式深入分析、調(diào)試API應(yīng)用、未公開技術(shù)SEH的深入研究等,從而使讀者在了解這些底層知識后,可以應(yīng)用到自己的軟件保護方案如各種反跟蹤技術(shù)的實現(xiàn)中。本書還首度公開了如何編寫加殼軟件,以及如何將殼與程序融合在一起等一些熱門技術(shù)。    本書由密界一流高手共同打造,讀者將從本書中獲得許多極具商業(yè)價值的內(nèi)幕技術(shù),是專業(yè)開發(fā)人員不可多得的一本好書。

作者簡介

段鋼,網(wǎng)名看雪,1994年畢業(yè)于上海同濟大學(xué),看雪學(xué)院(http://www.pediy.com)站長,致力于軟件加密與解密研究。2001年9月組織推出國內(nèi)第一本全面介紹Windows平臺下軟件的加密與解密技術(shù)的書籍《加密與解密——軟件保護技術(shù)及完全解決方案》。2003年6月出版《加密與解密

書籍目錄

第1章  PE文件格式的深入分析  1.1  PE文件格式縱覽    1.1.1  區(qū)塊    1.1.2  相對虛擬地址      1.1.3  數(shù)據(jù)目錄表    1.1.4  輸入函數(shù)  1.2  PE文件結(jié)構(gòu)     1.2.1  MS-DOS頭部     1.2.2  IMAGE_NT_HEADERS頭部    1.2.3  區(qū)塊表    1.2.4  各種區(qū)塊的描述    1.2.5  輸出表     1.2.6  輸出轉(zhuǎn)向    1.2.7  輸入表    1.2.8  綁定輸入    1.2.9  延遲裝入數(shù)據(jù)     1.2.10  資源     1.2.11  基址重定位    1.2.12  調(diào)試目錄    1.2.13  .NET頭部    1.2.14  TLS初始化    1.2.15  程序異常數(shù)據(jù)第2章  PE分析工具編寫   2.1  文件格式檢查   2.2  FileHeader和OptionalHeader內(nèi)容的讀取   2.3  得到數(shù)據(jù)目錄表信息  2.4  得到區(qū)塊表信息  2.5  得到輸出表信息  2.6  得到輸入表信息第3章  Win32  調(diào)試API  3.1  Win32調(diào)試API原理     3.1.1  調(diào)試相關(guān)函數(shù)簡要說明     3.1.2  調(diào)試事件     3.1.3  如何在調(diào)試時創(chuàng)建并跟蹤一個進程    3.1.4  調(diào)試循環(huán)體    3.1.5  如何處理調(diào)試事件      3.1.6  線程環(huán)境詳解    3.1.7  如何在另一個進程中注入代碼  3.2  利用調(diào)試API編寫脫殼機     3.2.1  tElock  0.98脫殼簡介    3.2.2  脫殼機的編寫   3.3  利用調(diào)試API制作內(nèi)存補丁     3.3.1  跨進程內(nèi)存存取機制      3.3.2  Debug  API機制  第4章  Windows下的異常處理  4.1  基本概念     4.1.1  Windows下的軟件異常      4.1.2  異常處理的基本過程    4.1.3  SEH的分類    4.1.4  未公開的可靠嗎   4.2  SEH相關(guān)數(shù)據(jù)結(jié)構(gòu)    4.2.1  TIB結(jié)構(gòu)     4.2.2  EXCEPTION_REGISTRATION結(jié)構(gòu)     4.2.3  EXCEPTION_POINTERS,EXCEPTION_RECORD,CONTEXT結(jié)構(gòu)  4.3  異常處理程序原理及設(shè)計      4.3.1  相關(guān)API    4.3.2  頂層異常處理     4.3.3  線程異常處理    4.3.4  異常處理的堆棧展開     4.3.5  異常處理程序設(shè)計中的注意事項   4.4  SEH的簡單應(yīng)用     4.4.1  Windows  9x下利用SEH進入Ring0    4.4.2  利用SEH實現(xiàn)對自身的單步自跟蹤    4.4.3  其他應(yīng)用  4.5  系統(tǒng)背后的秘密  4.6  VC如何封裝系統(tǒng)提供的SEH機制    4.6.1  擴展的EXCEPTION_REGISTRATION級相關(guān)結(jié)構(gòu)    4.6.2  數(shù)據(jù)結(jié)構(gòu)組織  4.7  Windows  XP下的向量化異常處理第5章  反跟蹤技術(shù)   5.1  反調(diào)試技術(shù)     5.1.1  句柄檢測     5.1.2  SoftICE后門指令     5.1.3  int68子類型    5.1.4  ICECream子類型      5.1.5  判斷NTICE服務(wù)是否運行    5.1.6  INT  1  檢測     5.1.7  利用UnhandledExceptionFilter檢測    5.1.8  INT  41子類型   5.2  斷點檢測技術(shù)    5.2.1  檢測函數(shù)首地址    5.2.2  利用SEH防范BPX斷點     5.2.3  利用SEH防范BPM斷點   5.3  反加載技術(shù)(Anti-Loader)     5.3.1  利用TEB檢測      5.3.2  利用IsDebuggerPresent函數(shù)檢測      5.3.3  檢查父進程    5.4  反監(jiān)視技術(shù)(Anti-Monitor)    5.4.1  窗口方法檢測    5.4.2  句柄檢測  5.5  反靜態(tài)分析技術(shù)    5.5.1  擾亂匯編代碼     5.5.2  花指令    5.5.3  SMC技術(shù)實現(xiàn)     5.5.4  信息隱藏    5.6  反DUMP技術(shù)(Anti-Dump)  5.7  文件完整性檢驗     5.7.1  磁盤文件校驗實現(xiàn)    5.7.2  校驗和    5.7.3  內(nèi)存映像校驗  5.8  代碼與數(shù)據(jù)結(jié)合技術(shù)     5.8.1  準備工作    5.8.2  加密算法選用      5.8.3  手動加密代碼    5.8.4  使.text區(qū)塊可寫     5.8.5  重定位  5.9  軟件保護的若干忠告第6章  加殼軟件編寫   6.1  外殼編寫基礎(chǔ)      6.1.1  判斷文件是否是PE-EXE文件    6.1.2  文件基本數(shù)據(jù)的讀入    6.1.3  額外數(shù)據(jù)保留     6.1.4  重定位數(shù)據(jù)的去除    6.1.5  文件的壓縮      6.1.6  資源區(qū)塊的處理     6.1.7  區(qū)塊的融合    6.1.8  輸入表的處理    6.1.9  外殼部分的編寫      6.1.10  將外殼部分添加至原始程序     6.1.11  小結(jié)    6.2  加殼程序綜合運用的實例      6.2.1  程序簡介      6.2.2  加殼子程序(WJQ_ShellBegin())    6.2.3  PE外殼程序    6.2.4  加進Anti技術(shù)    6.2.5  通過外殼修改被加殼PE     6.2.6  VC++調(diào)用匯編子程序 第7章  如何讓殼與程序融為一體  7.1  欺騙查殼工具    7.1.1  FileInfo是如何查殼的    7.1.2  欺騙FileInfo    7.2  判斷自己是否被加殼     7.2.1  判斷文件尺寸     7.2.2  使用同步對象檢查標記    7.2.3  使用原子(Atom)檢查標記    7.2.4  使用存儲映像文件檢查標記    7.2.5  使用線程優(yōu)先權(quán)檢查標記    7.2.6  使用外部文件檢查標記    7.2.7  使用注冊表檢查標記    7.2.8  注入一個定時器     7.2.9  外部檢測(使用DLL)     7.2.10  Hook  相關(guān)的API(防止Loader和調(diào)試API)    7.3  使用SDK把程序和殼融為一體    7.3.1  SDK加密的標記     7.3.2  殼程序檢測加密標志     7.3.3  開始加密相關(guān)的數(shù)據(jù)      7.3.4  輸出函數(shù)的聲明    7.3.5  輸出函數(shù)的執(zhí)行代碼定位     7.3.6  為輸出函數(shù)得到殼中加密函數(shù)做準備     7.3.7  程序中使用加密和解密函數(shù)     7.3.8  構(gòu)造殼中的加密和解密函數(shù)    7.3.9  殼尋找程序的輸出函數(shù)位置     7.3.10  “毀尸滅跡”,擦除輸出函數(shù)    7.3.11  殼中分配臨時的內(nèi)存存放加密和解密函數(shù)    7.3.12  殼中執(zhí)行程序輸出函數(shù)傳遞參數(shù) 第8章  Visual  Basic  6  逆向工程  8.1  P-code傳奇  8.2  VB編譯奧秘  8.3  VB與COM   8.4  VB可執(zhí)行程序結(jié)構(gòu)研究  8.5  VB程序事件解讀    8.6  VB程序圖形界面解讀   8.7  VB執(zhí)行代碼研究    8.7.1  VB函數(shù)的解讀    8.7.2  VB函數(shù)調(diào)用約定     8.7.3  執(zhí)行代碼中對控件屬性的操作  8.8  P-code代碼     8.8.1  理解P-code代碼指令    8.8.2  P-code程序調(diào)用約定    8.8.3  調(diào)試時中斷P-code程序的幾種方法    8.8.4  WKT  VB  Debugger實現(xiàn)原理     8.8.5  VB6  P-code  Crackme分析實例  8.9  VB程序保護篇     8.9.1  Anti-Loader技術(shù)      8.9.2  VB“自鎖”功能實現(xiàn)  8.10  相關(guān)工具點評附錄A在Visual  C++中使用內(nèi)聯(lián)匯編附錄B  在Visual  Basic中使用匯編

圖書封面

圖書標簽Tags

評論、評分、閱讀與下載


    軟件加密技術(shù)內(nèi)幕 PDF格式下載


用戶評論 (總計6條)

 
 

  •   很經(jīng)典的一本書,學(xué)習(xí)底層技術(shù)少有的資料
  •   是正品,挺喜歡的不錯,支持一下,以后再次購買
  •   這本書可以讓我們學(xué)到在學(xué)校里所學(xué)的之外的東西。
  •   訂了,但是過來后少了這本,什么時候能有貨?
  •   當當網(wǎng),Verygood!就是平郵慢點。
  •   雖然沒有全部看完??囱W(xué)院出的就是牛,就是權(quán)威。講得很詳細,內(nèi)容豐富。很有幫助啊~~~~~
 

250萬本中文圖書簡介、評論、評分,PDF格式免費下載。 第一圖書網(wǎng) 手機版

京ICP備13047387號-7