动静结合的二阶SQL注入漏洞检测技术研究
摘要 | 第3-4页 |
Abstract | 第4-5页 |
第1章 引言 | 第9-15页 |
1.1 研究背景及意义 | 第9-10页 |
1.2 国内外研究现状 | 第10-13页 |
1.2.1 静态分析 | 第10-11页 |
1.2.2 动态分析 | 第11-12页 |
1.2.3 动静结合 | 第12-13页 |
1.3 论文主要工作 | 第13-14页 |
1.4 论文结构安排 | 第14-15页 |
第2章 二阶SQL注入研究 | 第15-25页 |
2.1 SQL注入概述 | 第15-20页 |
2.1.1 SQL注入分类 | 第16-17页 |
2.1.2 现有防御技术 | 第17-20页 |
2.2 二阶SQL注入 | 第20-22页 |
2.2.1 存储阶段 | 第21-22页 |
2.2.2 触发阶段 | 第22页 |
2.3 漏洞特点分析 | 第22-24页 |
2.3.1 污点传播 | 第23页 |
2.3.2 多阶段 | 第23页 |
2.3.3 隐式读写 | 第23-24页 |
2.4 本章小结 | 第24-25页 |
第3章 静态污点与模糊测试结合的检测方法 | 第25-55页 |
3.1 检测系统设计 | 第25-27页 |
3.2 静态污点分析 | 第27页 |
3.3 分析前端设计 | 第27-33页 |
3.3.1 中间表示 | 第28页 |
3.3.2 控制流图 | 第28-29页 |
3.3.3 调用图 | 第29-30页 |
3.3.4 污点分析规则 | 第30-33页 |
3.4 分析前端实现 | 第33-38页 |
3.4.1 生成抽象语法树 | 第33-34页 |
3.4.2 生成控制流图 | 第34-37页 |
3.4.3 生成调用图 | 第37-38页 |
3.5 分析后端设计 | 第38-43页 |
3.5.1 图的遍历 | 第38-39页 |
3.5.2 数据流分析框架与格 | 第39-40页 |
3.5.3 数据流约束方程 | 第40-41页 |
3.5.4 数据流问题 | 第41页 |
3.5.5 数据流分析方法 | 第41-42页 |
3.5.6 分析框架推导 | 第42-43页 |
3.6 分析后端实现 | 第43-47页 |
3.6.1 数据结构定义 | 第43-44页 |
3.6.2 过程内分析 | 第44-45页 |
3.6.3 过程间分析 | 第45-47页 |
3.7 动态分析设计与实现 | 第47-51页 |
3.7.1 获取元数据 | 第47-48页 |
3.7.2 模糊测试设计 | 第48-50页 |
3.7.3 模糊测试实现 | 第50-51页 |
3.8 实验与分析 | 第51-54页 |
3.8.1 实验环境 | 第51页 |
3.8.2 实验样本 | 第51-52页 |
3.8.3 检测效果分析 | 第52-53页 |
3.8.4 系统性能分析 | 第53-54页 |
3.9 本章小结 | 第54-55页 |
第4章 动态污点与词法分析结合的检测方法 | 第55-67页 |
4.1 检测系统设计 | 第55-57页 |
4.1.1 设计分析 | 第55-56页 |
4.1.2 系统总体设计 | 第56-57页 |
4.2 动态污点分析 | 第57-58页 |
4.3 改进的动态污点分析 | 第58-61页 |
4.3.1 测试用例 | 第58-59页 |
4.3.2 源代码插桩 | 第59-60页 |
4.3.3 匹配分析 | 第60-61页 |
4.4 输入点获取 | 第61-63页 |
4.4.1 词法分析获取输入点 | 第61-62页 |
4.4.2 结合爬虫获取输入点 | 第62-63页 |
4.5 实验与分析 | 第63-66页 |
4.5.1 实验环境 | 第63页 |
4.5.2 实验样本 | 第63-64页 |
4.5.3 输入点检测分析 | 第64-65页 |
4.5.4 检测效果分析 | 第65-66页 |
4.6 本章小结 | 第66-67页 |
第5章 总结与展望 | 第67-69页 |
5.1 研究总结 | 第67-68页 |
5.2 工作展望 | 第68-69页 |
参考文献 | 第69-73页 |
致谢 | 第73-74页 |
个人简历、在学期间发表的学术论文与研究成果 | 第74页 |