静态与动态分析相结合的PHP代码缺陷检测技术研究与实现
摘要 | 第4-5页 |
ABSTRACT | 第5-6页 |
第一章 绪论 | 第9-14页 |
1.1 研究背景及意义 | 第9-10页 |
1.2 国内外研究现状及相关工具 | 第10-12页 |
1.3 论文研究内容 | 第12页 |
1.4 论文结构 | 第12-14页 |
第二章 PHP Web应用安全漏洞研究 | 第14-31页 |
2.1 安全漏洞研究 | 第14-27页 |
2.1.1 跨站脚本漏洞 | 第14-20页 |
2.1.2 SQL注入漏洞 | 第20-23页 |
2.1.3 命令注入 | 第23-25页 |
2.1.4 文件包含 | 第25-26页 |
2.1.5 跨站请求伪造 | 第26页 |
2.1.6 任意url跳转 | 第26-27页 |
2.2 PHP特性 | 第27-28页 |
2.2.1 弱类型 | 第27页 |
2.2.2 魔幻函数 | 第27-28页 |
2.2.3 代码执行函数 | 第28页 |
2.2.4 超全局变量 | 第28页 |
2.2.5 全局变量注册 | 第28页 |
2.3 单入口模式 | 第28-30页 |
2.4 本章小结 | 第30-31页 |
第三章 代码缺陷检测技术研究 | 第31-44页 |
3.1 静态分析 | 第31-38页 |
3.1.1 词法分析 | 第31-34页 |
3.1.2 语法分析 | 第34-37页 |
3.1.3 数据流分析 | 第37-38页 |
3.2 PHP-Parser | 第38-41页 |
3.3 动态技术 | 第41-43页 |
3.3.1 XDebug | 第41-42页 |
3.3.2 模糊测试 | 第42-43页 |
3.3.3 反射技术 | 第43页 |
3.4 小结 | 第43-44页 |
第四章 PHP代码缺陷检测的设计与实现 | 第44-63页 |
4.1 面向对象转面向过程 | 第44-46页 |
4.2 漏洞检测规则定义 | 第46-49页 |
4.2.1 缺陷函数定义 | 第46-48页 |
4.2.2 污染源定义 | 第48页 |
4.2.3 净化函数定义 | 第48-49页 |
4.3 上下文全局变量 | 第49-50页 |
4.4 文件间分析与过程间分析 | 第50-51页 |
4.5 系统设计 | 第51-62页 |
4.5.1 预处理模块 | 第51-52页 |
4.5.2 词法分析和语法分析模块 | 第52页 |
4.5.3 数据流分析模块 | 第52-59页 |
4.5.4 动态分析模块 | 第59-61页 |
4.5.5 系统流程图 | 第61-62页 |
4.6 总结 | 第62-63页 |
第五章 实验数据与结论 | 第63-66页 |
5.1 测试样本 | 第63页 |
5.2 实验环境 | 第63-64页 |
5.3 实验结果记录 | 第64-65页 |
5.4 实验结论 | 第65-66页 |
第六章 工作总结与展望 | 第66-68页 |
6.1 总结 | 第66-67页 |
6.2 展望 | 第67-68页 |
参考文献 | 第68-71页 |
致谢 | 第71-72页 |
攻读学位期间发表的学术论文目录 | 第72页 |