Web SQLIA漏洞的静态污点分析和动态验证研究与实现
发布时间:2023-11-24 19:33
污点分析,作为一种信息流分析的实现形式,建立来自不可信方法和参数的值是否可以流动进入安全敏感操作的分析模型,以此来找到Web应用中潜在的安全漏洞。污点分析分为静态污点分析和动态污点分析,可以发现很多Web应用程序中的常见漏洞,比如:SQL注入、XSS攻击,因而受到研究界和业界的广泛关注。结合静态分析与动态验证,本文提出了一种基于中间代码级的SQLIA漏洞的检测和验证的解决方案。首先将Web应用程序的Java和Jsp源代码转换成统一的中间代码形式-Jimple,接着通过全局静态分析获取程序的Source集合和Sink集合,然后将Source分为原生和非原生两类,并将非原生Source映射至对应的原生Source,保证了Source的可靠性。接着结合同方法、Request、Session和方法调用信息,初步判定Source和Sink之间的潜在执行路径,有效地排除了不可能的执行路径,很好地避免了路径爆炸问题。然后对相应的Source、Sink之间的路径集合进行活跃变量分析,通过活跃变量的污点传播来确定对应路径。同时,完成了静态污点分析的自动化分析工具TASAT。最后基于动态插桩和动态污点传播...
【文章页数】:70 页
【学位级别】:硕士
【文章目录】:
摘要
Abstract
1 绪论
1.1 课题研究背景与意义
1.2 国内外研究现状
1.3 本文的主要研究内容及贡献
1.4 论文组织结构
2 相关技术介绍
2.1 Soot框架介绍
2.2 污点分析
2.3 SQL注入
2.4 Selenium工具
3 静态分析相关方法及原型工具
3.1 静态分析流程概述
3.2 获得辅助信息
3.3 原生Source的判断及转换
3.4 基于四重关系匹配Source、Sink对
3.5 污点传播规则的定义及活跃变量分析
3.6 原型工具TASAT的设计
4 动态验证相关方法
4.1 动态插桩
4.2 自动化执行验证
4.3 sanitize处理
5 实验结果及分析
6 总结与展望
参考文献
致谢
在读期间公开发表论文(著)及科研情况
本文编号:3866453
【文章页数】:70 页
【学位级别】:硕士
【文章目录】:
摘要
Abstract
1 绪论
1.1 课题研究背景与意义
1.2 国内外研究现状
1.3 本文的主要研究内容及贡献
1.4 论文组织结构
2 相关技术介绍
2.1 Soot框架介绍
2.2 污点分析
2.3 SQL注入
2.4 Selenium工具
3 静态分析相关方法及原型工具
3.1 静态分析流程概述
3.2 获得辅助信息
3.3 原生Source的判断及转换
3.4 基于四重关系匹配Source、Sink对
3.5 污点传播规则的定义及活跃变量分析
3.6 原型工具TASAT的设计
4 动态验证相关方法
4.1 动态插桩
4.2 自动化执行验证
4.3 sanitize处理
5 实验结果及分析
6 总结与展望
参考文献
致谢
在读期间公开发表论文(著)及科研情况
本文编号:3866453
本文链接:https://www.wllwen.com/shoufeilunwen/xixikjs/3866453.html