共享软件加壳技术的研究与实现
| 摘要 | 第1-6页 |
| Abstract | 第6-10页 |
| 第一章 绪论 | 第10-13页 |
| ·课题的研究背景 | 第10页 |
| ·软件加密保护研究的主要内容及现状 | 第10-11页 |
| ·课题研究的主要内容 | 第11-13页 |
| 第二章 软件的拷贝保护 | 第13-23页 |
| ·软件拷贝保护技术 | 第13-15页 |
| ·基于介质的保护 | 第13-14页 |
| ·软件注册 | 第14页 |
| ·基于硬件的保护 | 第14-15页 |
| ·共享软件拷贝保护机制的设计 | 第15-22页 |
| ·逻辑保护的设计 | 第16-18页 |
| ·注册保护的设计 | 第18-20页 |
| ·加密关键代码 | 第20-22页 |
| ·小结 | 第22-23页 |
| 第三章 反逆向工程技术 | 第23-37页 |
| ·反调试技术 | 第23-31页 |
| ·调试器简介 | 第23-24页 |
| ·调试器检测技术 | 第24-27页 |
| ·抵御断点 | 第27-30页 |
| ·时间检测 | 第30-31页 |
| ·反静态分析技术 | 第31-34页 |
| ·抵御反汇编器 | 第31-33页 |
| ·代码变换 | 第33-34页 |
| ·反脱壳技术 | 第34-36页 |
| ·反转储技术 | 第34-35页 |
| ·反脱壳脚本的技术 | 第35-36页 |
| ·小结 | 第36-37页 |
| 第四章 PE文件 | 第37-48页 |
| ·PE文件格式介绍 | 第37-43页 |
| ·DOS头部分 | 第38页 |
| ·PE文件头 | 第38-40页 |
| ·可选文件头中的数据目录表 | 第40-41页 |
| ·节表 | 第41-43页 |
| ·PE文件的装载 | 第43-45页 |
| ·向PE文件中插入代码的技术 | 第45-47页 |
| ·插入位置的选择 | 第45-46页 |
| ·插入外部代码的要求 | 第46-47页 |
| ·API函数地址的获取 | 第47页 |
| ·PE文件的加壳保护 | 第47-48页 |
| 第五章 加壳软件的设计与实现方案 | 第48-61页 |
| ·加壳软件的主程序设计 | 第48-53页 |
| ·主程序的实现步骤 | 第49页 |
| ·读取PE文件数据 | 第49-50页 |
| ·输入表的处理 | 第50-51页 |
| ·合并节段 | 第51-52页 |
| ·压缩节段 | 第52页 |
| ·处理资源节段 | 第52-53页 |
| ·外壳部分的设计 | 第53-57页 |
| ·两段壳的设计 | 第54-55页 |
| ·将外壳部分插入到PE文件 | 第55页 |
| ·用SDK方式加强外壳与程序的联系 | 第55-57页 |
| ·加壳程序的测试 | 第57-60页 |
| ·完善设计 | 第60-61页 |
| 第六章 结论 | 第61-62页 |
| 参考文献 | 第62-64页 |
| 附录A SEH相关的数据结构 | 第64-66页 |
| 在学研究成果 | 第66-67页 |
| 致谢 | 第67页 |