幫助中心 | 我的帳號 | 關於我們

微軟.NET程序的加密與解密/安全技術大系

  • 作者:單海波//王坤峰//李曉峰
  • 出版社:電子工業
  • ISBN:9787121075520
  • 出版日期:2008/11/01
  • 裝幀:平裝
  • 頁數:339
人民幣:RMB 49 元      售價:
放入購物車
加入收藏夾

內容大鋼
    本書是軟體安全主題網站——看雪學院《加密與解密》軟體安全系列叢書的第三本,主要介紹代碼保護與加密解密技術在微軟.NET框架中的應用。全書分為基礎篇、分析篇、保護篇和擴展篇四大部分,內容涉及.NET框架基礎、元數據與MSIL、.NET程序與內核調試、主流代碼保護及其逆向技術、非托管API應用、64位.NET程序調試等。本書的層次循序漸進,難度深入淺出,且注重實例分析,是軟體開發人員了解.NET內核及加密解密技術不可多得的參考書,適合.NET開發人員及加密與解密愛好者閱讀。

作者介紹
單海波//王坤峰//李曉峰

目錄
第一部分  基礎篇
  第1章  微軟.NET框架基本原理
    1.1  什麼是.NET
    1.2  編寫第一個.NET程序  
      1.2.1  .NET開發環境
      1.2.2  程序的編譯
    1.3  逆向第一個.NET程序  
      1.3.1  用ildasm反編譯.NET程序
      1.3.2  反編譯的結果:MSIL與元數據
      1.3.3  用ilasm進行再編譯
    1.4  程序的運行:CLR與JIT
    1.5  小結
  第2章  MSIL中間語言
    2.1  MSIL語言基礎
      2.1.1  IL程序基本結構
      2.1.2  2.0版IL支持的新特性
      2.1.3  一個完整的代碼示例
    2.2  MSIL的運行機制:堆棧機
    2.3  MSIL指令  
      2.3.1  流程式控制制指令
      2.3.2  算術指令  
      2.3.3  參數、局部變數與欄位定址指令
      2.3.4  方法調用  
      2.3.5  類與值類型操作指令
      2.3.6  向量操作指令
    2.4  小結
  第3章  PE結構擴展與元數據
    3.1  .NET對PE結構的擴展  
    3.2  元數據及其結構  
      3.2.1  什麼是元數據  
      3.2.2  元數據的存儲形式(1):堆
      3.2.3  元數據的存儲形式(2):表
      3.2.4  元數據的Signature  
    3.3  元數據的標識及其解碼  
    3.4  元數據的驗證  
    3.5  小結  
第二部分  分析篇
  第4章  靜態分析技術  
    4.1  靜態反編譯軟體  
      4.1.1  Reflector的使用  
      4.1.2  Dis#的使用  
      4.1.3  其他反編譯軟體  
    4.2  代碼修改技術  
    4.3  代碼復用技術  
    4.4  混合編譯程序的靜態分析
    4.5  .NET程序本地化技術
      4.5.1  基礎知識  
      4.5.2  利用可視化工具的本地化  
      4.5.3  利用MSIL的本地化  
    4.6  小結  

  第5章  動態調試技術
    5.1  .NET動態調試的分類  
    5.2  混合模式調試  
      5.2.1  GuiDbg的應用  
      5.2.2  PeBrowseDbg的應用  
    5.3  本地調試  
      5.3.1  OllyDbg的應用  
      5.3.2  WinDbg的應用  
    5.4  小結
第三部分  保護篇
  第6章  強名稱保護
    6.1  給程序簽署強名稱  
      6.1.1  什麼是強名稱
      6.1.2  單個程序集的簽署  
      6.1.3  引用有強名稱的程序集  
    6.2  強名稱的移除和替換  
      6.2.1  去除和替換強名稱的原理  
      6.2.2  利用工具的自動實現  
    6.3  代碼與強名稱的結合
    6.4  小結  
  第7章  名稱混淆  
    7.1  名稱混淆的基本原理  
    7.2  手動實現名稱混淆  
    7.3  名稱混淆的局限性  
    7.4  常見名稱混淆形式  
    7.5  反名稱混淆的一般方法  
    7.6  小結  
  第8章  流程混淆
    8.1  流程混淆的基本原理  
    8.2  常見流程混淆的方式:基於跳轉的混淆  
      8.2.1  代碼塊的易位  
      8.2.2  連續跳轉  
      8.2.3  跳轉表  
      8.2.4  邏輯跳轉  
      8.2.5  switch跳轉  
    8.3  流程混淆的擴展:語法混淆  
      8.3.1  讓堆棧溢出  
      8.3.2  利用高級語言不支持的語法  
      8.3.3  利用高級語言間的語法差異  
      8.3.4  利用反編譯引擎的缺陷  
      8.3.5  插入無效指令編碼  
    8.4  反流程混淆的一般方法  
    8.5  小結
  第9章  輔助保護手段  
    9.1  用戶字元串編碼  
      9.1.1  一般編碼  
      9.1.2  使用強名稱的編碼  
    9.2  給程序集添加錯誤元數據  
      9.2.1  #GUID大小錯誤  
      9.2.2  TypeDef的Extends項錯誤  

      9.2.3  利用PE結構  
      9.2.4  添加多個Module  
    9.3  打包
    9.4  特殊的.NET屬性  
    9.5  利用系統特性  
    9.6  小結
  第10章  殼保護  
    10.1  什麼是程序集整體保護  
    10.2  純.NET實現的壓縮殼  
    10.3  基於Win32的殼  
    10.4  掛鉤內核的殼  
    10.5  什麼是基於每個方法的保護  
      10.5.1  常見的掛鉤形式  
      10.5.2  更進一步的保護  
      10.5.3  實現方式  
      10.5.4  一般分析方法  
    10.6  小結  
  第11章  其他保護方式  
    11.1  許可證保護  
      11.1.1  許可證機制簡介  
      11.1.2  .NET許可證機制的擴展  
      11.1.3  一般分析方法  
    11.2  演算法的運用  
      11.2.1  .NET提供的演算法空間  
      11.2.2  對稱演算法的.NET實現  
      11.2.3  非對稱演算法的.NET實現  
      11.2.4  數字簽名的.NET實現  
    11.3  虛擬機保護  
    11.4  編譯為本地代碼  
    11.5  動態方法委託調用  
    11.6  小結  
第四部分  擴展篇
  第12章  非托管API  
    12.1  非托管API綜述  
    12.2  宿主API  
    12.3  合成API  
    12.4  強名稱API  
    12.5  元數據API  
    12.6  分析API  
    12.7  小結  
  第13章  MONO、SSCLI與.NET內核調試  
    13.1  MONO簡介  
    13.2  SSCIL簡介  
    13.3  .NET框架內核調試  
    13.4  小結  
  第14章  Win64平台上的.NET  
    14.1  64位編程的一般性問題  
    14.2  C++編程的改變  
      14.2.1  彙編級的改變  
      14.2.2  .NET編程的改變  

    14.3  64位PE結構  
    14.4  64位.NET程序調試  
    14.5  小結  
附錄A  元數據表  
參考文獻

  • 商品搜索:
  • | 高級搜索
首頁新手上路客服中心關於我們聯絡我們Top↑
Copyrightc 1999~2008 美商天龍國際圖書股份有限公司 臺灣分公司. All rights reserved.
營業地址:臺北市中正區重慶南路一段103號1F 105號1F-2F
讀者服務部電話:02-2381-2033 02-2381-1863 時間:週一-週五 10:00-17:00
 服務信箱:bookuu@69book.com 客戶、意見信箱:cs@69book.com
ICP證:浙B2-20060032