基于网络爬虫的Web应用程序漏洞检测方法的研究与实现

来源 :北京交通大学 | 被引量 : 1次 | 上传用户:binzhi0du
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
当前Web技术随着互联网的普及而快速发展,特别是快速发展的移动互联网使得Web技术时刻伴随着我们每一个互联网用户。但是,Web技术是一把双刃剑,在给互联网用户带来便利的同时,也带来了巨大的安全风险。近年来,Web应用的安全事件频繁发生,Web应用漏洞严重威胁着Web应用程序的安全以及相关用户的隐私安全。在OWASP自2007年以来,发布的历次Web应用十大安全漏洞中,SQL注入式漏洞和XSS漏洞一直稳居前三名之列,是最为普遍和危险的两类Web应用程序漏洞。因此,Web应用漏洞的检测与修复对于保障Web应用的安全极为重要,本文开展相关研究具有重要的现实意义和实用价值。Web应用程序漏洞检测的基本出发点是从攻击者的角度来看待Web应用程序的环境安全性。换句话说,通过向服务器发送若干网络请求,然后分析服务器的响应信息,进而判断被检测Web应用程序是否存在相应类型的漏洞,从而及时修复对应的安全问题、提高程序安全性和更好地保护用户的隐私。本文在深入研究网络爬虫技术的基础上,对爬虫策略进行了优化改进,对相似页面进行了聚类,设计了更为全面、丰富的漏洞攻击向量库,实现了基于网络爬虫的Web应用程序漏洞检测原型系统。主要工作和创新点如下:(1)针对现有网络爬虫搜索策略所存在的陷入循环和抓取页面过多的问题,综合考虑网页包含的新页面数及兄弟节点的相关性,提出了基于近邻兄弟节点的广度搜索策略,提高了网络爬虫的效率。(2)针对页面的DOM结构进行相似度分析,提出了基于权值分配的页面结构相似度计算方法,然后利用层次聚类方法对结构相似页面进行聚类,并从每一类中抽取出一个页面所对应的URL进行漏洞检测。实验表明,相关方法和聚类处理可极大地提高漏洞检测的效率。(3)考虑到二阶漏洞相对于一阶漏洞更为隐蔽、更难以发现,深入研究了Web二阶漏洞的攻击原理,提出了基于污点标记与跟踪的二阶漏洞检测方法。进一步说,首先污点标记请求的URL,然后跟踪探寻可能存放污点的页面,接着向污点标记的URL中注入攻击向量并请求,最后对可能存放污点的页面进行漏洞检测。实验表明,该方法能够有效地提高二阶漏洞的检测效率。(4)针对攻击向量库相对缺乏且攻击向量攻击性弱的问题,深入研究了SQL注入和XSS攻击的攻击向量的语法规则及组成结构,提出了基于规则的攻击向量生成方法和攻击向量因子变异方法。实验表明,相关方法在丰富扩充攻击向量库的同时,也能够有效地提高攻击向量的攻击性。(5)根据研究的检测方法,结合“高内聚,低耦合”思想,设计并实现了基于网络爬虫的Web应用漏洞检测系统。本系统在功能上分为四大模块:主控模块、网络爬虫模块、攻击向量生成模块和漏洞检测模块。实验表明,本系统与主流漏洞检测工具AWVS和App Scan相比具有较高的性能与准确性。
其他文献
形声是汉字的一种造字法,但汉字并不因此以表音见长.由于汉字造字本意及表音的特点,造字法本身的障碍,用字过程的影响,语音演变的影响等,形声字声符表音准确度呈弱化状态.
目的研究PBL教学模式在维持性血液透析(MHD)患者健康教育中的作用。方法选取我院2011年1月~2011年12月在我院规律透析的患者120例,随机分为两组,A组60例,采用PBL教学模式,B组60