第1篇 加密与解密入门篇 2
第1章 加密与解密技术基础 2
1.1 初识加密与解密技术 2
1.1.1 什么是密码学 2
1.1.2 加密与解密技术概述 3
1.1.3 常见软件加密保护技术 3
1.1.4 熟悉汇编语言的几条常用命令 5
1.1.5 软件解密方式 8
1.2 文件读/写与动态链接库(DLL) 9
1.2.1 INI文件与自定义文件 9
1.2.2 创建DLL文件 12
1.2.3 隐式调用和显式调用 15
1.3 BPL组建设计 16
1.3.1 什么是包(BPL) 16
1.3.2 包的设计与发布 17
1.3.3 包的安装与卸载 20
1.4 软件的试用期 21
1.4.1 软件的试用次数 21
1.4.2 软件的试用天数 25
1.4.3 软件最后的试用日期 30
1.4.4 软件启动后的执行时间限制 34
1.4.5 软件的NAG窗口提示 35
1.5 专家点拨(常见问题与解答) 39
第2章 代码分析与常用工具简介 40
2.1 认识PE格式文件 40
2.1.1 PE文件格式 40
2.1.2 检验PE文件的有效性 42
2.1.3 文件头(File Header) 43
2.1.4 可选头部(Optional Header) 46
2.1.5 区块表(Section Table) 48
2.1.6 输入表(Import Table) 50
2.1.7 输出表(Export Table) 52
2.2 了解代码分析技术 54
2.2.1 转换文件的虚拟地址与偏移地址 54
2.2.2 搜索OEP 55
2.2.3 转储程序与修复输入表 59
2.2.4 修复输入表 61
2.3 了解静态分析技术及其工具 62
2.3.1 静态分析的概念 62
2.3.2 认识程序类型分析工具 63
2.3.3 认识资源编辑器工具 64
2.3.4 认识反汇编分析工具 66
2.4 了解动态分析技术及其工具 68
2.5 流行注册表分析工具 69
2.5.1 Regedit 69
2.5.2 RegSnap 71
2.5.3 Regmon 73
2.5.4 Regshot 74
2.5.5 File Montior 75
2.6 专家点拨(常见问题与解答) 76
第2篇 典型工具篇 78
第3章 静态反汇编工具 78
3.1 认识常用反汇编程序 78
3.1.1 反汇编程序代码 78
3.1.2 程序的基本信息 79
3.1.3 程序的反汇编源代码 82
3.1.4 源代码各部分的含义 83
3.2 两种常用反汇编工具概述 85
3.2.1 反汇编工具1:W32Dasm 85
3.2.2 反汇编工具2:C32asm 94
3.3 静态分析解密 99
3.3.1 静态分析解密的一般流程 99
3.3.2 常见指令的机器码值 100
3.3.3 两种注册判断的修改方法 101
3.3.4 实例分析:静态分析解密 101
3.4 用Keymake制作补丁程序 106
3.4.1 制作文件补丁程序 106
3.4.2 制作内存补丁程序 107
3.5 专家点拨(常见问题与解答) 108
第4章 动态跟踪分析工具 109
4.1 Ollydbg功能概述 109
4.1.1 认识Ollydbg的主界面 109
4.1.2 配置Ollydbg 112
4.1.3 Ollydbg的常用操作及功能 114
4.1.4 常用的Ollydbg插件 120
4.2 Ollydbg动态调试解密 120
4.2.1 动态调试解密的流程 121
4.2.2 实例分析:动态调试解密1 121
4.2.3 实例分析:动态调试解密2 124
4.3 动态分析软件SoftICE 126
4.3.1 SoftICE安装后的配置与调用 126
4.3.2 SoftICE的窗口界面 130
4.3.3 SoftICE中的组合键与常用命令 132
4.3.4 使SoftICE在程序的入口处停下来 133
4.3.5 修改代码的属性 134
4.4 动态分析软件TRW2000 134
4.4.1 TRW2000的安装与配置 135
4.4.2 TRW2000的主窗口概述 137
4.4.3 TRW2000中的常用命令和常用键 138
4.5 专家点拨(常见问题与解答) 141
第5章 必备的辅助工具 142
5.1 编辑工具 142
5.1.1 十六进制编辑工具 142
5.1.2 汇编编辑工具Hiew 152
5.2 监视工具 154
5.2.1 文件监视工具 155
5.2.2 注册表监视工具 156
5.2.3 API监视工具 158
5.2.4 MFC监视工具 160
5.3 资源编辑与修复工具 161
5.3.1 资源修复工具 161
5.3.2 资源编辑工具 162
5.3.3 Restools资源管理工具 165
5.4 打补丁工具 167
5.4.1 DUP工具使用详解 167
5.4.2 XCell工具使用详解 170
5.5 专家点拨(常见问题与解答) 171
第3篇 关键技术篇 174
第6章 加壳与脱壳技术 174
6.1 壳的基础知识 174
6.1.1 壳的加载过程 174
6.1.2 脱壳机 176
6.2 抓取内存映像 176
6.2.1 Dump的原理 176
6.2.2 反Dump技术 179
6.3 重建输入表 184
6.3.1 输入表重建的原理 185
6.3.2 确定IAT的地址和大小 188
6.3.3 根据IAT重建输入表 189
6.3.4 ImportREC重建输入表 191
6.3.5 输入表加密小结 193
6.4 DLL文件脱壳 194
6.4.1 找寻DLL文件的OEP 194
6.4.2 Dump映像文件 197
6.4.3 重建DLL的输入表 198
6.4.4 附加数据 199
6.5 压缩壳 200
6.5.1 UPX外壳 200
6.5.2 ASPack外壳 201
6.6 加密壳 201
6.6.1 ASProtect 201
6.6.2 Armadillo 203
6.7 专家点拨(常见问题与解答) 204
第7章 补丁技术 205
7.1 程序补丁概述 205
7.2 常见的补丁工具 206
7.2.1 补丁制作工具CodeFusion 206
7.2.2 补丁制作工具DUP 209
7.3 常见补丁技术的应用 213
7.3.1 开始程序分析 213
7.3.2 确定配置方案 214
7.3.3 制作补丁程序 217
7.3.4 为程序添加功能 218
7.3.5 可执行文件的加密 219
7.4 常用的SMC技术 220
7.4.1 SMC函数概述 221
7.4.2 高级SMC补丁技术 221
7.5 注册机制作工具CrackCode 223
7.5.1 寻找注册码 223
7.5.2 内存直接寻址法 224
7.5.3 寄存器间接寻址法 224
7.5.4 Decompile Winhelp注册机的写法 225
7.5.5 CrackCode的加强模式 226
7.6 专家点拨(常见问题与解答) 228
第4篇 软件保护篇 230
第8章 常用加密软件工具的使用 230
8.1 使用多媒体加密工具 230
8.1.1 Private Pix 230
8.1.2 CryptaPix 233
8.1.3 WinXFiles 236
8.2 使用多功能加密工具 240
8.2.1 文件密使 240
8.2.2 BlackBox 245
8.2.3 ABI-CODER 249
8.2.4 加密精灵 252
8.3 专家点拨(常见问题与解答) 258
第9章 网络验证加密软件的使用 259
9.1 Web服务器验证加密技术 259
9.1.1 客户端加密实现 260
9.1.2 本地计算机控制实现 262
9.2 本地服务器验证加密技术 266
9.2.1 客户端加密实现 266
9.2.2 服务器端加密实现 268
9.3 在线升级验证加密技术 269
9.3.1 在线升级验证实现 269
9.3.2 实例分析:在线升级验证 270
9.4 专家点拨(常见问题与解答) 275
第10章 注册认证和注册机 277
10.1 加密算法和校验方式 277
10.1.1 选用加密算法 277
10.1.2 注册码直接校验 282
10.1.3 注册码重启校验 283
10.1.4 实例分析:用户名保护 285
10.2 随机注册码模式 286
10.2.1 实例分析1:随机注册码保护 286
10.2.2 实例分析2:注册机的制作 288
10.3 KeyFile保护方式 289
10.3.1 实例分析1:KeyFile保护 289
10.3.2 实例分析2:注册机的制作 290
10.4 用DLL实现注册认证 291
10.4.1 DLL认证的优缺点 291
10.4.2 用DLL实现注册认证 291
10.5 用控件实现注册认证 292
10.5.1 DLL控件的注册认证 292
10.5.2 BPL控件的注册认证 295
10.6 专家点拨(常见问题与解答) 298
第11章 不同软件的保护措施 299
11.1 对抗不同的破解手段 299
11.1.1 对抗DeDe 299
11.1.2 对抗SoftICE 300
11.1.3 对抗动态调试 301
11.1.4 对抗静态调试 302
11.1.5 实现磁盘文件自校验 303
11.2 安装包程序的保护措施 304
11.2.1 用Advanced Installer制作MSI程序安装包 304
11.2.2 用InstallShield制作程序安装包 308
11.2.3 用Setup Factory制作程序安装包 310
11.2.4 用Wise制作程序安装包 318
11.3 不同软件的保护实现 323
11.3.1 把ASP编写成DLL 324
11.3.2 COM组件的Delphi实现 327
11.3.3 实现软件注册保护的VCL组件 330
11.3.4 利用伪装壳制造虚假信息 333
11.3.5 利用加密锁保护程序 334
11.4 专家点拨(常见问题与解答) 337
第5篇 加密与解密实战篇 340
第12章 光盘和系统加密与解密技术12.1 光盘的加密与解密技术 340
12.1.1 使用CD-Protector软件加密光盘 340
12.1.3 使用光盘加密大师加密光盘 341
12.1.4 使用CryptCD加密光盘 343
12.1.5 破解加密光盘 346
12.2 用“私人磁盘”隐藏大文件 347
12.2.1 “私人磁盘”的创建 347
12.2.2 “私人磁盘”的删除 349
12.3 给系统桌面加把超级锁 350
12.3.1 生成后门口令 350
12.3.2 设置登录口令 351
12.4 系统全面加密大师PC Security 352
12.4.1 驱动器的加密与解密 352
12.4.2 锁定系统 353
12.5 星号密码查看工具 355
12.5.1 XP星号密码查看器 356
12.5.2 SnadBoy's Revelation 356
12.5.3 侠客星号密码查看器 357
12.5.4 星号密码保护策略 360
12.6 专家点拨(常见问题与解答) 362
第13章 加密与解密实用技术突破 364
13.1 文件夹加密与解密 364
13.1.1 加密文件系统EFS基础 364
13.1.2 加密文件系统EFS的加密应用 365
13.1.3 加密证书导入导出及加密文件共享 367
13.1.4 解密EFS加密文件 370
13.2 网页信息的加密与解密 373
13.2.1 在线网页的加密与解密 373
13.2.2 防御网页破解 374
13.2.3 常见的网页加密工具 378
13.3 聊天工具加密与解密 382
13.3.1 MSN聊天记录加密与解密 382
13.3.2 QQ加密与解密 385
13.4 网吧限制的破解与防范 392
13.4.1 突破网吧下载限制 392
13.4.2 注册表的突破 394
13.4.3 网吧防破解方法 396
13.4.4 恶意代码防御战 397
13.5 专家点拨(常见问题与解答) 400
附录A 常用文件、软件加密技术 401
A.1 对Word文件进行加密与解密 401
A.1.1 运用Word自身的加密功能 401
A.1.2 使用AOPR解密Word文档 404
A.1.3 Advanced Word 2000 Password Recovery 405
A.1.4 风语文件加密软件 406
A.1.5 Word Document Password Recovery 407
A.1.6 Word 97/2000/XP密码查看器 407
A.2 对Excel文件进行加密与解密 408
A.2.1 运行Excel自身的加密功能 408
A.2.2 Excel Password Recovery 410
A.2.3 办公文件密码恢复程序 412
A.2.4 Excel 97/2000/XP密码查看器 413
A.2.5 Excel Key的使用 413
A.3 宏加密与解密技术概述 414
A.3.1 使用宏进行加密 414
A.3.2 解除宏密码 416
A.4 WinRAR压缩文件的加密与解密 417
A.4.1 WinRAR自身的口令加密 417
A.4.2 使用Advanced RAR Password Recovery探测口令 418
A.4.3 使用RAR Password Recovery探测口令 418
A.4.4 使用RAR Key解除WinRAR文件口令 419
A.5 EXE文件的加密与解密 420
A.5.1 利用ASPack对EXE文件进行加密 420
A.5.2 使用tElock对EXE文件进行加密 421
A.5.3 使用EXE文件加口令对EXE文件进行加密 421
A.6 对PDF进行加密与解密 422
A.6.1 加密PDF文件 422
A.6.2 使用EncryptPDF加密文件 424
A.6.3 Advanced PDF Password Recovery的使用 425
A.6.4 使用PDF Password Remover解除PDF文件口令 426
A.7 数据库的加密与解密 427
A.7.1 在Microsoft SQL Server中设置sa账户密码 427
A.7.2 对Access数据表进行加密 428
A.7.3 多功能密码破解软件 429
A.8 Foxmail的邮箱的加密与解密 430
A.8.1 加密Foxmail邮箱 431
A.8.2 月影Foxmail邮件转换/密码恢复器 432
A.8.3 使用Advanced Mailbox Password Recovery解密Foxmail邮件 433
A.9 专家点拨(常见问题与解答) 433