一种基于模拟浏览器行为的XSS漏洞检测系统的研究与设计

来源 :北京工业大学 | 被引量 : 9次 | 上传用户:aaajane
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
近年来,随着Web应用和HTML5的普及,Web安全问题也日益突出。OWASP公布的2013年十大Web应用安全风险中,跨站脚本漏洞XSS(Cross Site Scripting)名列第三,已成为当前各类Web应用需要共同面对的常见安全风险之一。目前针对自动化XSS漏洞检测工具的研究还不是很充足,传统的基于静态爬虫爬取页面的方法对漏洞注入点的检测覆盖率还不是很高,无法很好地应对复杂网页格式下注入点产生的多种途径,例如有些注入点需要通过用户操作,如点击某个按钮,使浏览器解析JavaScript或加载Ajax才能生成;有些注入点则不存在于表单中,需要分析网页结构才能找到其提交方式。同时,在漏洞检测方面,传统方法也不能很好地动态分析目标站点的回应信息,从而不能够准确地判断出XSS漏洞是否存在。针对上述问题,本文对自动化XSS漏洞检测系统的爬取页面、提取注入点、进行攻击测试和分析结果四个步骤进行了深入研究,主要研究内容如下:(1)研究了Web页面漏洞注入点的自动获取方法,以解决传统静态爬虫对XSS漏洞注入点覆盖率小的问题,提出了基于Headless browser的Web页面爬虫框架,该框架含有浏览器的内核,可以模拟浏览器行为来解析JavaScript和加载Ajax以得到页面中隐藏式注入点,同时可以分析页面的DOM结构以得到页面中的非格式化注入点。通过分析总结了各种注入点和交互点的可能的特征,本文设计并实现的动态爬虫模块可以获取大量因网页格式越来越多样化而产生的非格式化注入点,包括那些既不存在于表单中,也不通过传统的submit方式提交,而是在用户点击某个按钮后,通过JavaScript合成请求提交到服务器的注入点。(2)提出了一种高效的通过提交攻击向量判断XSS漏洞是否存在的方法。设计并实现了可动态识别XSS漏洞的自动化检测模块。在提交攻击向量请求后,可以判断返回页面是否有异常的浏览器行为,并且,借助第三方服务器动态判断页面返回后的结果。如果攻击向量中含有对该服务器的请求,则系统会自动分析第三方服务器的状态,判断返回页面是否执行了这一请求从而判断出当前注入点是否存在漏洞。该系统完全采用Python语言开发,具有易于维护和进行二次开发的特点,对XSS漏洞的检测与研究有非常重要的应用价值。(3)设计并实现了功能友好的用户交互界面。该系统的用户交互界面基于PyQt库设计,使得该模块可以跨平台,在各种操作系统上显示统一的用户界面,方便系统的运行。同时,该模块也对爬虫爬取页面的信息、检测注入点时结果汇报的信息进行了整理,并以丰富的格式进行显示。此外,该模块提供了用户自定义攻击向量、以及获取和设置Cookie等功能,用户可以在系统中直接登录目标页面并将登录状态保存下来,之后检测时,该系统可以加载保存的Cookie文件,以爬取含有正确Cookie时才能爬取到的内容。
其他文献
随着数字化信息资源的日益增长,大量的文本数据不断涌现,为了有效的管理和使用这些文本数据,人们提出了文本自动分类技术,它可以处理和组织庞大的非结构化的文本数据,提高文
随着互联网技术的发展,信息量暴增,给人们的生活发生了翻天覆地的变化。现在,人们已经习惯于在互联网上获取各种各样的信息。这主要归功与搜索引擎技术的发展。然而,传统的搜
移动数据业务的快速发展给电信运营商网络带来巨大的流量压力和管理压力,冲击着移动通信网络性能。在移动通信网络中应用缓存技术在应对流量激增方面发挥着积极作用,但缓存的
光场通过记录场景的光线信息描述场景,提供场景信息的新型参数化描述,可有效支持焦距重调、场景深度估计、任意视点的显示及绘制等特殊应用。因此,光场获取及应用研究成为计算机
随着现代计算机技术和三维扫描技术的不断发展,以三角网格为主要表达方式的三维几何模型数据日益成为当今主流的多媒体数据类型,而且扫描网格的数据量也越来越庞大,针对这种网格
近年来,随着云计算技术的逐步普及,云安全问题逐渐被学术界以及产业界的人们所关注。由于云计算改变了传统的信息基础架构,因此传统的安全设备和方法难以完美地应用其上,云基础设
随着互联网和多媒体技术的快速发展,图像信息资源遍布人们的日常生活,因此从中快速查找到所需的资源成为了亟待解决的问题。从20世纪70年代末期开始,图像检索技术发展至今经历了
随着通信业的不断发展,下一代网络技术受到各大电信运营商的瞩目,NGN成为当前电信网络的主流发展方向。目前,国内外针对下一代网络(NGN)的研究已经越过了NGN概念、体系框架的范
传感器的种类繁多价格低廉,它们监控着世界上的各种变化,产生了大量的数据。对这些数据进行处理和整合,可以得到对现实生活更真实和准确的描述。传感器数据共享平台SenMart能够
随着我国市场经济和信息技术的不断发展,企业对科学化财务管理的需求越来越强烈,财务管理系统作为企业财务管理信息化系统的软件平台,对提高企业财务部门工作效率、提高企业