软件加壳技术的研究与实现
| 摘要 | 第1-6页 |
| Abstract | 第6-11页 |
| 1 绪论 | 第11-14页 |
| ·课题提出的背景 | 第11-12页 |
| ·软件保护技术的研究现状 | 第12-13页 |
| ·课题研究的主要内容 | 第13页 |
| ·本章小结 | 第13-14页 |
| 2 PE文件 | 第14-28页 |
| ·PE文件格式概述 | 第14-18页 |
| ·区块 | 第15-16页 |
| ·相对虚拟地址 | 第16-17页 |
| ·数据目录表 | 第17-18页 |
| ·输入函数 | 第18页 |
| ·PE文件结构 | 第18-27页 |
| ·DOS文件头和NT文件头 | 第18-20页 |
| ·区块表 | 第20-22页 |
| ·各种区块的描述 | 第22-23页 |
| ·输入表 | 第23-25页 |
| ·资源 | 第25-27页 |
| ·本章小结 | 第27-28页 |
| 3 加壳与脱壳 | 第28-45页 |
| ·认识壳 | 第28-31页 |
| ·什么是外壳 | 第29页 |
| ·壳的加载过程 | 第29-31页 |
| ·加壳工具 | 第31-32页 |
| ·脱壳工具 | 第32-34页 |
| ·专用脱壳工具 | 第33页 |
| ·通用脱壳工具 | 第33-34页 |
| ·手动脱壳 | 第34-43页 |
| ·查找入口点 | 第34-36页 |
| ·抓取内存映像文件 | 第36-38页 |
| ·重建输入表 | 第38-43页 |
| ·重建可编辑资源 | 第43页 |
| ·本章小结 | 第43-45页 |
| 4 反跟踪技术 | 第45-54页 |
| ·反调试技术 | 第45-49页 |
| ·句柄检测 | 第45-47页 |
| ·利用 SoftICE的后门指令 | 第47页 |
| ·注册表中的键值检测 | 第47-48页 |
| ·枚举进程的方式检测 | 第48页 |
| ·利用系统 API | 第48-49页 |
| ·断点检测技术 | 第49-50页 |
| ·反静态分析技术 | 第50-52页 |
| ·扰乱汇编代码 | 第50-51页 |
| ·花指令 | 第51-52页 |
| ·反DUMP技术 | 第52-53页 |
| ·本章小结 | 第53-54页 |
| 5 加壳方案的设计与实现 | 第54-68页 |
| ·加壳方案的设计 | 第54-55页 |
| ·方案的特点 | 第55-56页 |
| ·加壳方案的具体实现 | 第56-64页 |
| ·文件格式的判断 | 第56页 |
| ·文件基本数据的读入 | 第56-58页 |
| ·文件的压缩 | 第58页 |
| ·资源区块的处理 | 第58-59页 |
| ·输入表的处理 | 第59-60页 |
| ·特殊代码的加密 | 第60-62页 |
| ·外壳部分 | 第62-64页 |
| ·将外壳部分添加至原始程序 | 第64页 |
| ·界面设计 | 第64-66页 |
| ·设计小结 | 第66-68页 |
| 6 未来研究工作展望 | 第68-71页 |
| ·代码块动态加解密 | 第68-69页 |
| ·使用硬件加密 | 第69-71页 |
| 7 结论 | 第71-72页 |
| 参考文献 | 第72-75页 |
| 在学研究成果 | 第75-76页 |
| 致谢 | 第76页 |