| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 论坛
 上传资源
上传编程相关的资源,源源不断赚取资源分,以备将来下载之需
ghf794785671
文件大小:43.19 MB
文件类型:pdf
发布时间:2021-08-22 11:12:41
需资源分:2
下载次数:12
Tag:加密与解密[第4版].pdf
::资源简介::
加密与解密[第4版],1
 专家寄语,13
 基础篇
  第01章 基础知识,36
   1_1 什么是加密与解密,36
    1_1_1 软件的加密与解密,36
    1_1_2 软件逆向工程,36
    1_1_3 逆向分析技术,37
   1_2 文本字符,38
    1_2_1 ASCII与Unicode字符集,38
    1_2_2 字节存储顺序,40
   1_3 Windows操作系统,40
    1_3_1 Win32_API函数,40
    1_3_2 WOW64,43
    1_3_3 Windows消息机制,43
    1_3_4 虚拟内存,45
 调试篇
  第02章 动态分析技术,48
   2_1 OllyDbg调试器,48
    2_1_1 OllyDbg的界面,48
    2_1_2 OllyDbg的配置,49
    2_1_3 基本操作,50
    2_1_4 常用断点,61
    2_1_5 插件,69
    2_1_6 Run_trace,70
    2_1_7 Hit_trace,71
    2_1_8 调试符号,71
    2_1_9 加载程序,73
    2_1_10 OllyDbg的常见问题,74
   2_2 x64dbg调试器,76
   2_3 MDebug调试器,78
    2_3_1 MDebug的界面,78
    2_3_2 表达式,79
    2_3_3 调试,79
    2_3_4 断点,80
    2_3_5 MDebug的其他功能,81
   2_4 WinDbg调试器,81
    2_4_1 WinDbg的安装与配置,81
    2_4_2 调试过程,85
    2_4_3 断点命令,85
    2_4_4 栈窗口,87
    2_4_5 内存命令,89
    2_4_6 脚本,90
    2_4_7 调试功能扩展,92
    2_4_8 小结,93
  第03章 静态分析技术,94
   3_1 文件类型分析,94
   3_2 反汇编引擎,95
    3_2_1 OllyDbg的ODDisasm,95
    3_2_2 BeaEngine,95
    3_2_3 Udis86,95
    3_2_4 Capstone,96
    3_2_5 AsmJit,97
    3_2_6 Keystone,98
    3_2_7 小结,98
   3_3 静态反汇编,99
    3_3_1 IDA Pro简介,99
    3_3_2 IDA的配置,100
    3_3_3 IDA主窗口,102
    3_3_4 交叉参考,103
    3_3_5 参考重命名,104
    3_3_6 标签的用法,105
    3_3_7 格式化指令操作数,105
    3_3_8 函数的操作,106
    3_3_9 代码和数据转换,106
    3_3_10 字符串,107
    3_3_11 数组,108
    3_3_12 结构体,109
    3_3_13 枚举类型,113
    3_3_14 变量,114
    3_3_15 FLIRT,115
    3_3_16 IDC脚本,116
    3_3_17 插件,120
    3_3_18 IDA调试器,121
    3_3_19 远程调试,124
    3_3_20 其他功能,127
    3_3_21 小结,128
   3_4 十六进制工具,128
   3_5 静态分析技术应用实例,131
    3_5_1 解密初步,131
    3_5_2 逆向工程初步,133
 解密篇
  第04章 逆向分析技术,136
   4_1 32位软件逆向技术,136
    4_1_1 启动函数,136
    4_1_2 函数,137
    4_1_3 数据结构,145
    4_1_4 虚函数,149
    4_1_5 控制语句,151
    4_1_6 循环语句,158
    4_1_7 数学运算符,159
    4_1_8 文本字符串,162
    4_1_9 指令修改技巧,164
   4_2 64位软件逆向技术,165
    4_2_1 寄存器,165
    4_2_2 函数,166
    4_2_3 数据结构,176
    4_2_4 控制语句,179
    4_2_5 循环语句,188
    4_2_6 数学运算符,192
    4_2_7 虚函数,203
    4_2_8 小结,227
  第05章 演示版保护技术,228
   5_1 序列号保护方式,228
    5_1_1 序列号保护机制,228
    5_1_2 如何攻击序列号保护机制,229
    5_1_3 字符串比较形式,231
    5_1_4 制作注册机,232
   5_2 警告窗口,237
   5_3 时间限制,239
    5_3_1 计时器,239
    5_3_2 时间限制,239
    5_3_3 拆解时间限制保护,240
   5_4 菜单功能限制,241
    5_4_1 相关函数,241
    5_4_2 拆解菜单限制保护,242
   5_5 KeyFile保护,242
    5_5_1 相关API函数,242
    5_5_2 拆解KeyFile保护,243
   5_6 网络验证,247
    5_6_1 相关函数,248
    5_6_2 破解网络验证的一般思路,248
   5_7 光盘检测,253
    5_7_1 相关函数,253
    5_7_2 拆解光盘保护,254
   5_8 只运行1个实例,255
    5_8_1 实现方法,255
    5_8_2 实例,256
   5_9 常用断点设置技巧,256
  第06章 加密算法,257
   6_1 单向散列算法,257
    6_1_1 MD5算法,257
    6_1_2 SHA算法,261
    6_1_3 SM3密码杂凑算法,265
    6_1_4 小结,265
   6_2 对称加密算法,265
    6_2_1 RC4流密码,265
    6_2_2 TEA算法,267
    6_2_3 IDEA算法,270
    6_2_4 BlowFish算法,277
    6_2_5 AES算法,280
    6_2_6 SM4分组密码算法,293
    6_2_7 小结,293
   6_3 公开密钥加密算法,293
    6_3_1 RSA算法,294
    6_3_2 ElGamal公钥算法,298
    6_3_3 DSA数字签名算法,304
    6_3_4 椭圆曲线密码编码学,306
    6_3_5 SM2算法,313
   6_4 其他算法,313
    6_4_1 CRC32算法,313
    6_4_2 Base64编码,314
   6_5 常见的加密库接口及其识别,315
    6_5_1 Miracl大数运算库,315
    6_5_2 FGInt,317
    6_5_3 其他加密算法库介绍,318
   6_6 加密算法在软件保护中的应用,319
 系统篇
  第07章 Windows内核基础,324
   7_1 内核理论基础,324
    7_1_1 权限级别,324
    7_1_2 内存空间布局,325
    7_1_3 Windows与内核启动过程,326
    7_1_4 Windows R3与R0通信,328
    7_1_5 内核函数,330
    7_1_6 内核驱动模块,331
   7_2 内核重要数据结构,332
    7_2_1 内核对象,332
    7_2_2 SSDT,334
    7_2_3 TEB,336
    7_2_4 PEB,338
   7_3 内核调试基础,340
    7_3_1 使用WinDbg搭建双机调试环境,340
    7_3_2 加载内核驱动并设置符号表,342
    7_3_3 SSDT与Shadow SSDT的查看,345
  第08章 Windows下的异常处理,347
   8_1 异常处理的基本概念,347
    8_1_1 异常列表,347
    8_1_2 异常处理的基本过程,348
   8_2 SEH的概念及基本知识,353
    8_2_1 SEH的相关数据结构,353
    8_2_2 SEH处理程序的安装和卸载,354
    8_2_3 SEH实例跟踪,355
   8_3 SEH异常处理程序原理及设计,359
    8_3_1 异常分发的详细过程,359
    8_3_2 线程异常处理,364
    8_3_3 异常处理的栈展开,370
    8_3_4 MSC编译器对线程异常处理的增强,376
    8_3_5 顶层异常处理,383
    8_3_6 异常处理程序的安全性,391
   8_4 向量化异常处理,395
    8_4_1 向量化异常处理的使用,395
    8_4_2 VEH与SEH的异同,396
    8_4_3 向量化异常处理的新内容,397
   8_5 x64平台上的异常处理,397
    8_5_1 原生x64程序的异常分发,398
    8_5_2 WOW64下的异常分发,400
   8_6 异常处理程序设计中的注意事项,401
   8_7 异常处理的实际应用,402
    8_7_1 使用SEH对用户输入进行验证,402
    8_7_2 SEH在加密与解密中的应用,403
    8_7_3 用VEH实现API_Hook,405
   8_8 本章小结,405
  第09章 Win32调试API,406
   9_1 调试相关函数简要说明,406
   9_2 调试事件,409
   9_3 创建并跟踪进程,411
   9_4 调试循环体,412
   9_5 处理调试事件,413
   9_6 线程环境,414
   9_7 将代码注入进程,416
  第10章 VT技术,418
   10_1 硬件虚拟化的基本概念,418
    10_1_1 概述,418
    10_1_2 相关结构和汇编指令,419
    10_1_3 EPT机制,422
   10_2 VT技术的应用,423
    10_2_1 编译运行ShadowWalker,423
    10_2_2 分析Hypervisor,424
    10_2_3 检测VT支持情况,426
    10_2_4 VMCS的配置,427
    10_2_5 EPT的配置,430
    10_2_6 开启VT,433
    10_2_7 内存隐藏的实现,433
   10_3 VT调试方法,435
  第11章 PE文件格式,438
   11_1 PE的基本概念,439
    11_1_1 基地址,439
    11_1_2 虚拟地址,440
    11_1_3 相对虚拟地址,440
    11_1_4 文件偏移地址,441
   11_2 MS-DOS头部,441
   11_3 PE文件头,442
    11_3_1 Signature字段,442
    11_3_2 IMAGE_FILE_HEADER结构,443
    11_3_3 IMAGE_OPTIONAL_HEADER结构,444
   11_4 区块,449
    11_4_1 区块表,449
    11_4_2 常见区块与区块合并,451
    11_4_3 区块的对齐值,453
    11_4_4 文件偏移与虚拟地址的转换,453
   11_5 输入表,455
    11_5_1 输入函数的调用,455
    11_5_2 输入表的结构,456
    11_5_3 输入地址表,458
    11_5_4 输入表实例分析,458
   11_6 绑定输入,462
   11_7 输出表,463
    11_7_1 输出表的结构,464
    11_7_2 输出表实例分析,465
   11_8 基址重定位,466
    11_8_1 基址重定位的概念,466
    11_8_2 基址重定位表的结构,467
    11_8_3 基址重定位表实例分析,468
   11_9 资源,469
    11_9_1 资源结构,469
    11_9_2 资源结构实例分析,472
    11_9_3 资源编辑工具,474
   11_10 TLS初始化,474
   11_11 调试目录,475
   11_12 延迟载入数据,475
   11_13 程序异常数据,476
   11_14 _NET头部,476
   11_15 编写PE分析工具,477
    11_15_1 检查文件格式,477
    11_15_2 读取FileHeader和OptionalHeader的内容,478
    11_15_3 得到数据目录表信息,479
    11_15_4 得到区块表信息,480
    11_15_5 得到输出表信息,481
    11_15_6 得到输入表信息,482
  第12章 注入技术,484
   12_1 DLL注入方法,484
    12_1_1 通过干预输入表处理过程加载目标DLL,484
    12_1_2 改变程序运行流程使其主动加载目标DLL,500
    12_1_3 利用系统机制加载DLL,518
   12_2 DLL注入的应用,525
   12_3 DLL注入的防范,525
    12_3_1 驱动层防范,525
    12_3_2 应用层防范,527
  第13章 Hook技术,531
   13_1 Hook概述,531
    13_1_1 IAT_Hook篡改MessageBox消息,531
    13_1_2 Inline_Hook篡改指定MessageBox消息,533
   13_2 Hook的分类,534
    13_2_1 Address_Hook,535
    13_2_2 Inline_Hook,545
    13_2_3 基于异常处理的Hook,547
    13_2_4 不是Hook的Hook,548
   13_3 Hook位置的挑选,549
   13_4 Hook的典型过程,553
    13_4_1 Address_Hook的实施过程,553
    13_4_2 Inline Hook的实施过程,560
    13_4_3 基于异常处理的Hook实施过程,563
    13_4_4 二次Hook的注意事项,566
    13_4_5 通用Hook引擎的实现,567
   13_5 Detour函数的典型用法,567
   13_6 Hook中的注意事项,570
   13_7 Hook在x64平台上的新问题,575
   13_8 Hook技术的应用,577
   13_9 Hook的检测/恢复与对抗,578
    13_9_1 Hook的检测与恢复,578
    13_9_2 Hook的对抗,579
   13_10 本章小结,580
    漏洞篇
  第14章 漏洞分析技术,582
   14_1 软件漏洞原理,582
    14_1_1 缓冲区溢出漏洞,582
    14_1_2 整型溢出漏洞,587
    14_1_3 UAF漏洞,589
   14_2 Shellcode,589
    14_2_1 Shellcode的结构,590
    14_2_2 Shellcode通用技术,593
    14_2_3 实战Shellcode编写,594
   14_3 漏洞利用,600
    14_3_1 漏洞利用基本技术,601
    14_3_2 漏洞利用高级技术,604
   14_4 漏洞样本,606
   14_5 样本分析,607
    14_5_1 准备工作,607
    14_5_2 静态分析,608
    14_5_3 动态调试,610
    14_5_4 追根溯源,615
    14_5_5 小结,619
    脱壳篇
  第15章 专用加密软件,622
   15_1 认识壳,622
    15_1_1 壳的概念,622
    15_1_2 压缩引擎,623
   15_2 压缩壳,623
    15_2_1 UPX,623
    15_2_2 ASPack,624
   15_3 加密壳,624
    15_3_1 ASProtect,624
    15_3_2 Armadillo,624
    15_3_3 EXECryptor,625
    15_3_4 Themida,625
   15_4 虚拟机保护软件,626
    15_4_1 虚拟机介绍,626
    15_4_2 VMProtect简介,626
  第16章 脱壳技术,628
   16_1 基础知识,628
    16_1_1 壳的加载过程,628
    16_1_2 脱壳机,629
    16_1_3 手动脱壳,630
   16_2 寻找OEP,630
    16_2_1 根据跨段指令寻找OEP,630
    16_2_2 用内存访问断点寻找OEP,634
    16_2_3 根据栈平衡原理寻找OEP,635
    16_2_4 根据编译语言特点寻找OEP,636
   16_3 抓取内存映像,637
    16_3_1 Dump原理,637
    16_3_2 反Dump技术,638
   16_4 重建输入表,640
    16_4_1 输入表重建的原理,640
    16_4_2 确定IAT的地址和大小,641
    16_4_3 根据IAT重建输入表,642
    16_4_4 用Import REC重建输入表,645
    16_4_5 输入表加密概括,648
   16_5 DLL文件脱壳,649
    16_5_1 寻找OEP,649
    16_5_2 Dump映像文件,651
    16_5_3 重建DLL的输入表,652
    16_5_4 构造重定位表,653
   16_6 附加数据,655
   16_7 PE文件的优化,657
   16_8 压缩壳,660
    16_8_1 UPX外壳,660
    16_8_2 ASPack外壳,663
   16_9 加密壳,667
   16_10 静态脱壳,671
    16_10_1 外壳Loader分析,671
    16_10_2 编写静态脱壳器,675
    保护篇
  第17章 软件保护技术,678
   17_1 防范算法求逆,678
    17_1_1 基本概念,678
    17_1_2 堡垒战术,679
    17_1_3 游击战术,680
   17_2 抵御静态分析,681
    17_2_1 花指令,681
    17_2_2 SMC技术实现,683
    17_2_3 信息隐藏,687
    17_2_4 简单的多态变形技术,688
   17_3 文件完整性检验,689
    17_3_1 磁盘文件校验的实现,689
    17_3_2 校验和,691
    17_3_3 内存映像校验,691
   17_4 代码与数据结合,693
    17_4_1 准备工作,694
    17_4_2 加密算法的选用,695
    17_4_3 手动加密代码,695
    17_4_4 使 _text区块可写,696
   17_5 关于软件保护的若干忠告,697
  第18章 反跟踪技术,699
   18_1 由BeingDebugged引发的蝴蝶效应,699
    18_1_1 BeingDebugged,699
    18_1_2 NtGlobalFlag,703
    18_1_3 Heap Magic,705
    18_1_4 从源头消灭BeingDebugged,710
   18_2 回归Native:用户态的梦魇,710
    18_2_1 CheckRemoteDebuggerPresent,711
    18_2_2 ProcessDebugPort,711
    18_2_3 ThreadHideFromDebugger,714
    18_2_4 DebugObject,716
    18_2_5 SystemKernelDebuggerInformation,720
    18_2_6 Native API,722
    18_2_7 Hook和AntiHook,727
   18_3 真正的奥秘:小技巧一览,730
    18_3_1 SoftICE检测方法,730
    18_3_2 OllyDbg检测方法,732
    18_3_3 调试器漏洞,734
    18_3_4 防止调试器附加,735
    18_3_5 父进程检测,737
    18_3_6 时间差,737
    18_3_7 通过Trap Flag检测,738
    18_3_8 双进程保护,738
  第19章 外壳编写基础,739
   19_1 外壳的结构,739
   19_2 加壳主程序,740
    19_2_1 判断文件是否为PE格式,740
    19_2_2 文件基本数据读入,740
    19_2_3 附加数据的读取,742
    19_2_4 输入表的处理,742
    19_2_5 重定位表的处理,745
    19_2_6 文件的压缩,747
    19_2_7 资源数据的处理,750
    19_2_8 区块的融合,754
   19_3 用汇编写外壳部分,755
    19_3_1 外壳的加载过程,755
    19_3_2 自建输入表,756
    19_3_3 外壳引导段,757
    19_3_4 外壳第2部分,760
    19_3_5 将外壳部分添加至原程序,765
   19_4 用C++编写外壳部分,768
  第20章 虚拟机的设计,773
   20_1 虚拟机保护技术原理,773
    20_1_1 反汇编引擎,773
    20_1_2 指令分类,773
   20_2 启动框架和调用约定,774
    20_2_1 调度器,774
    20_2_2 虚拟环境,775
    20_2_3 平衡栈vBegin和vCheckESP,776
   20_3 Handler的设计,777
    20_3_1 辅助Handler,777
    20_3_2 普通Handler和指令拆解,778
    20_3_3 标志位问题,779
    20_3_4 相同作用的指令,779
    20_3_5 转移指令,780
    20_3_6 转移跳转指令的另一种实现,781
    20_3_7 call指令,782
    20_3_8 retn指令,782
    20_3_9 不可模拟指令,783
   20_4 托管代码的异常处理,783
    20_4_1 VC++的异常处理,783
    20_4_2 Delphi的异常处理,788
   20_5 本章小结,791
  第21章 VMProtect逆向和还原浅析,792
   21_1 VMProtect逆向分析,792
    21_1_1 VMProtect虚拟执行引擎的全景图,792
    21_1_2 VMProtect虚拟引擎的基本架构,797
    21_1_3 指令分类,797
   21_2 VMProtect的还原,799
    21_2_1 虚拟执行系统,800
    21_2_2 生成完整的字节码流程图,801
    21_2_3 给Handler命名并添加语义动作,808
    21_2_4 将字节码的低级描述转换为中级描述,809
    21_2_5 清除无用的字节码,810
    21_2_6 用真值表化简逻辑指令,810
    21_2_7 从特征中建立部分寄存器映射信息,813
    21_2_8 其他无法确定的寄存器的图着色算法,819
    21_2_9 使用DAG匹配生成指令,822
    21_2_10 其他问题,825
 软件重构篇
  第22章 补丁技术,828
   22_1 文件补丁,828
   22_2 内存补丁,829
    22_2_1 跨进程内存存取机制,829
    22_2_2 Debug API机制,831
    22_2_3 利用调试寄存器机制,834
    22_2_4 利用DLL注入技术,837
    22_2_5 利用Hook技术,841
    22_2_6 利用VT技术,844
   22_3 SMC补丁技术,847
    22_3_1 单层SMC补丁技术,847
    22_3_2 多层SMC补丁技术,848
   22_4 补丁工具,850
  第23章 代码的二次开发,852
   23_1 数据对齐,852
   23_2 增加空间,852
    23_2_1 区块间隙,852
    23_2_2 手动构造区块,853
    23_2_3 工具辅助构造区块,854
   23_3 获得函数的调用信息,854
    23_3_1 增加输入函数,854
    23_3_2 显式链接调用DLL,855
   23_4 代码的重定位,856
    23_4_1 修复重定位表,856
    23_4_2 代码的自定位技术,858
   23_5 增加输出函数,859
   23_6 消息循环,860
    23_6_1 WndProc函数,860
    23_6_2 寻找消息循环,861
    23_6_3 WndProc汇编形式,862
   23_7 菜单扩展,863
    23_7_1 扩充WndProc,863
    23_7_2 扩充Exit菜单的功能,864
    23_7_3 扩充Open菜单的功能,864
   23_8 DLL扩展,867
    23_8_1 扩展接口,867
    23_8_2 扩展消息循环,868
 语言和平台篇
  第24章 _NET平台加解密,872
   24_1 _NET概述,872
    24_1_1 什么是 _NET,872
    24_1_2 基本概念,873
    24_1_3 第1个 _NET程序,874
   24_2 MSIL与元数据,875
    24_2_1 PE结构的扩展,875
    24_2_2 _NET下的汇编MSIL,881
    24_2_3 MSIL与元数据的结合,883
   24_3 代码分析与修改技术,885
    24_3_1 静态分析,885
    24_3_2 动态调试,887
    24_3_3 代码修改,889
   24_4 _NET代码保护技术及其逆向,891
    24_4_1 强名称,891
    24_4_2 名称混淆,893
    24_4_3 流程混淆,897
    24_4_4 压缩,899
    24_4_5 加密,903
    24_4_6 其他保护手段,909
   24_5 本章小结,910
 取证篇
  第25章 数据取证技术,912
   25_1 硬盘数据的获取和固定,912
    25_1_1 硬盘数据的获取,912
    25_1_2 电子数据的固定,916
   25_2 硬盘的分区和数据恢复,916
    25_2_1 分区的解析,918
    25_2_2 基于文件系统的数据恢复原理,920
   25_3 内存分析,924
    25_3_1 内存镜像的获取,925
    25_3_2 内存镜像的分析,928
   25_4 动态仿真技术,931
    25_4_1 仿真专用硬件,931
    25_4_2 软件仿真,932
   25_5 注册表,934
    25_5_1 Hive文件,934
    25_5_2 注册表中的时间,935
    25_5_3 USB移动存储设备,936
   25_6 文件格式,937
    25_6_1 文件修复和特征码,937
    25_6_2 基于文件的数据恢复技术,938
    25_6_3 数据隐藏的分析,940
 术语表,943
 参考文献,945
::下载地址::

BCCN本地下载 
开通VIP
可免资源分下载所有资源
::下载本资源的人也下载了::
::作者其它资源::
 
>> 评论
 
热门Tag:
 
编程中国 版权所有,并保留所有权利。 在线客服
微信扫码咨询

Powered by BCCN 1.020, Processed in 0.009745 second(s)
Copyright©2010-2024, BCCN.NET, All Rights Reserved

在线客服
微信扫码咨询