本书分为基础篇、分析篇、保护篇和扩展篇四大部分,内容涉及.NET框架基础、元数据与MSIL、.NET程序与内核调试、主流代码保护及其逆向技术、非托管API应用、64位.NET程序调试等。本书是软件开发人员了解.NET内核及加密解密技术不可多得的参考书,适合.NET开发人员及加密与解密爱好者阅读。
网站首页 软件下载 游戏下载 翻译软件 电子书下载 电影下载 电视剧下载 教程攻略
书名 | 微软.NET程序的加密与解密/安全技术大系 |
分类 | 教育考试-考试-计算机类 |
作者 | 单海波//王坤峰//李晓峰 |
出版社 | 电子工业出版社 |
下载 | ![]() |
简介 | 编辑推荐 本书分为基础篇、分析篇、保护篇和扩展篇四大部分,内容涉及.NET框架基础、元数据与MSIL、.NET程序与内核调试、主流代码保护及其逆向技术、非托管API应用、64位.NET程序调试等。本书是软件开发人员了解.NET内核及加密解密技术不可多得的参考书,适合.NET开发人员及加密与解密爱好者阅读。 内容推荐 本书是软件安全主题网站——看雪学院《加密与解密》软件安全系列丛书的第三本,主要介绍代码保护与加密解密技术在微软.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 元数据表 参考文献 |
随便看 |
|
霍普软件下载网电子书栏目提供海量电子书在线免费阅读及下载。