基于虚拟堆的虚拟保护技术的研究
| 摘要 | 第1-4页 |
| Abstract | 第4-5页 |
| 目录 | 第5-8页 |
| 第一章 绪论 | 第8-14页 |
| ·研究背景 | 第8-9页 |
| ·国内外研究现状 | 第9-10页 |
| ·研究创新点 | 第10-11页 |
| ·研究目标分析 | 第11-12页 |
| ·研究目标 | 第11-12页 |
| ·研究条件、限制 | 第12页 |
| ·论文主要工作 | 第12页 |
| ·论文结构 | 第12-13页 |
| ·本章小结 | 第13-14页 |
| 第二章 综述和相关工作 | 第14-22页 |
| ·研究环境介绍 | 第14-15页 |
| ·虚拟机 | 第14页 |
| ·C++内联汇编 | 第14页 |
| ·Ollydbg | 第14页 |
| ·IDAPro | 第14-15页 |
| ·PE文件格式 | 第15页 |
| ·软件壳 | 第15-16页 |
| ·与非门逻辑 | 第16页 |
| ·软件保护的加密处理手段 | 第16-18页 |
| ·添加新节 | 第16-17页 |
| ·加密引入表 | 第17-18页 |
| ·TLS表的处理 | 第18页 |
| ·花指令 | 第18页 |
| ·寄存器 | 第18-19页 |
| ·伪指令 | 第19页 |
| ·堆 | 第19-20页 |
| ·虚拟堆 | 第20-21页 |
| ·虚拟堆的优势 | 第21页 |
| ·本章小结 | 第21-22页 |
| 第三章 基于虚拟堆的保护模型总体架构 | 第22-26页 |
| ·基于虚拟堆的虚拟保护模型架构 | 第22-23页 |
| ·基于虚拟堆的硬件虚拟 | 第23-24页 |
| ·基于虚拟堆的代码虚拟 | 第24页 |
| ·本章小结 | 第24-26页 |
| 第四章 虚拟堆模型构建 | 第26-34页 |
| ·虚拟堆模型的结构 | 第26-27页 |
| ·虚拟堆的分配 | 第27-29页 |
| ·虚拟堆分配架构 | 第27-28页 |
| ·虚拟堆分配模型 | 第28-29页 |
| ·虚拟堆的堆操作 | 第29-30页 |
| ·基于虚拟堆的栈的虚拟化 | 第30-31页 |
| ·基于虚拟堆的寄存器虚拟化 | 第31-32页 |
| ·寄存器的转变方式 | 第31-32页 |
| ·寄存器转变模型 | 第32页 |
| ·寄存器的虚拟化 | 第32-33页 |
| ·寄存器的虚拟化模型 | 第32-33页 |
| ·本章小结 | 第33-34页 |
| 第五章 基于虚拟堆的伪指令模型构建 | 第34-50页 |
| ·伪指令体系的架构 | 第34-36页 |
| ·伪指令地址派遣机制 | 第36-43页 |
| ·派遣表的结构 | 第36-37页 |
| ·伪指令派遣功能函数 | 第37-38页 |
| ·派遣功能函数的模型 | 第38-43页 |
| ·伪指令执行体原型架构 | 第43-49页 |
| ·HVM伪指令执行体原型 | 第43-44页 |
| ·寄存器操作伪指令模型 | 第44-45页 |
| ·堆栈操作伪指令模型 | 第45-46页 |
| ·调用操作伪指令模型 | 第46-47页 |
| ·跳转操作伪指令模型 | 第47-48页 |
| ·算数操作伪指令模型 | 第48页 |
| ·内存操作伪指令模型 | 第48-49页 |
| ·本章小结 | 第49-50页 |
| 第六章 基于虚拟堆的虚拟指令执行架构 | 第50-60页 |
| ·HVM虚拟保护模型流程模型 | 第50-51页 |
| ·被保护程序的加密 | 第51页 |
| ·处理被保护程序 | 第51页 |
| ·基于虚拟堆的虚拟保护模型流程框架 | 第51-58页 |
| ·HVM执行前需要的准备 | 第51-52页 |
| ·HVM执行入口 | 第52页 |
| ·HVM的初始化 | 第52-55页 |
| ·HVM伪指令提取 | 第55-56页 |
| ·派遣函数表的轮转 | 第56-58页 |
| ·进入伪指令执行函数 | 第58页 |
| ·HVM虚拟指令结合执行 | 第58-59页 |
| ·实现anti-debug | 第58-59页 |
| ·本章小结 | 第59-60页 |
| 第七章 工作总结与展望 | 第60-61页 |
| ·工作总结 | 第60页 |
| ·工作展望 | 第60-61页 |
| 参考文献 | 第61-63页 |
| 致谢 | 第63-64页 |