摘要 | 第1-4页 |
Abstract | 第4-8页 |
第1章 引言 | 第8-11页 |
·课题背景与面临的挑战 | 第8-9页 |
·定义和要解决的问题 | 第8页 |
·研究现状及课题背景 | 第8-9页 |
·主要工作及贡献 | 第9-10页 |
·论文结构安排 | 第10-11页 |
第2章 相关工作综述 | 第11-24页 |
·函数调用图生成工具概述 | 第11-13页 |
·静态函数调用图生成工具 | 第11-12页 |
·动态函数调用图生成工具 | 第12-13页 |
·kallsyms机制 | 第13-14页 |
·动态跟踪工具相关研究 | 第14-21页 |
·工具介绍 | 第14-19页 |
·跟踪工具对比分析 | 第19-21页 |
·逆向工程流程 | 第21-23页 |
·反编译技术 | 第21-22页 |
·分析技术 | 第22-23页 |
·小结 | 第23-24页 |
第3章 基于内核跟踪的动态函数调用图生成工具 | 第24-38页 |
·函数调用图生成工具概述 | 第24页 |
·设计思路 | 第24-26页 |
·动态函数调用图实现 | 第26-33页 |
·内核、系统及内核可加载模块的编译 | 第27页 |
·运行S2E获取trace数据 | 第27-31页 |
·DCG-RTL数据标准 | 第31页 |
·中间数据的处理 | 第31-32页 |
·扩展LXR功能 | 第32-33页 |
·动态函数调用图效果展示 | 第33-34页 |
·应用实例 | 第34-36页 |
·文件读写的指针函数分析 | 第35页 |
·可加载模块分析 | 第35-36页 |
·小结 | 第36-38页 |
第4章 基于动态函数调用分析的内核可加载模块的逆向工程方法 | 第38-49页 |
·基于动态函数调用分析的逆向工程的工作流程 | 第38-39页 |
·获取加载模块ELF格式各段的起始位置和大小 | 第39-41页 |
·基于动态函数调用分析的逆向工程的实现 | 第41-48页 |
·获取跟踪数据 | 第41页 |
·筛选数据 | 第41-42页 |
·代码分段 | 第42-43页 |
·二进制代码反编译 | 第43-44页 |
·代码汇集 | 第44-45页 |
·编译验证 | 第45-48页 |
·小结 | 第48-49页 |
第5章 实验验证 | 第49-59页 |
·实验环境及准备 | 第49-50页 |
·内核可加载模块加载过程 | 第50-51页 |
·实验一 | 第51-58页 |
·记录跟踪数据 | 第51页 |
·数据筛选 | 第51-52页 |
·代码分段 | 第52-53页 |
·二进制代码反编译 | 第53-55页 |
·代码汇集 | 第55-57页 |
·编译汇编代码并加载验证 | 第57-58页 |
·小结 | 第58-59页 |
第6章 结论以及进一步工作 | 第59-61页 |
·结论 | 第59-60页 |
·进一步工作 | 第60-61页 |
参考文献 | 第61-63页 |
致谢 | 第63-65页 |
个人简历、在学期间发表的学术论文与研究成果 | 第65页 |