基于python的XSS漏洞检测插件的设计与实现.docx
《基于python的XSS漏洞检测插件的设计与实现.docx》由会员分享,可在线阅读,更多相关《基于python的XSS漏洞检测插件的设计与实现.docx(18页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、摘要XSS攻击者将恶意脚本写入Web应用当中,并且实际执行,恶意脚本在浏览器客户端中也被应用,给用户造成很恶劣的后果。所以本着快速解决因为XSS漏洞导致的用户信息泄露的问题,本文根据对XSS的研究对XSS设计了有关XSS漏洞修复的一些实际可行的方法和程序,通过研究跨站点脚本的基本原理和相关知识,对客户端进行安全且全面分析,同时会对跨站点脚本攻击信息技术及其基本原理进行了简单介绍。通过设计和实现XSS漏洞检测模型去完成XSS漏洞相关的检测和修复,成立了不同系统的模块。以及对系统功能和性能测试结果的细化解析,对于XSS漏洞检测模型能够生效,实现网站脚本漏洞的修复。并应用了XSS的漏洞检测的计算方案
2、,完成了对XSS漏洞检测的研究。在实验开发中实现对XSS漏洞的相关问题,验证了XSS漏洞检测插件能够解决XSS漏洞相关问题,具有显著优势。关键词:XSS漏洞;Python;插件;漏洞检测Abstract The XSS attacker writes the malicious script into the Web application and actually executes it. The malicious script is also applied in the browser client, resulting in very bad consequences for the
3、 user. So in a quick fix for XSS holes caused by user information leakage problem, in this paper, based on the study of XSS for XSS design about XSS holes to repair some of the practical ways and procedures, through the study and the related knowledge, the basic principle of cross-site scripting sec
4、urity for the client is analyzed, at the same time to cross-site scripting attacks of information technology and its basic principle has carried on the simple introduction. Through the design and implementation of XSS vulnerability detection model to complete XSS vulnerability related detection and
5、repair, set up different system modules. As well as the detailed analysis of system function and performance test results, the XSS vulnerability detection model can be effective, to achieve the website script vulnerability repair. The XSS vulnerability detection calculation scheme is applied to comp
6、lete the research on XSS vulnerability detection. The XSS vulnerability related problems are realized in the experimental development, and the XSS vulnerability detection plug-in is proved to be able to solve the XSS vulnerability related problems, which has significant advantages.Keywords:XSS holes
7、; Python; Plug-in; Leak check目录第一章绪论11.1 研究背景及意义11.2 国内外研究现状21.3 研究内容31.4 组织结构4第二章 XSS相关技术研究52.1 XSS攻击技术分析52.2 防御技术分析62.3本章小结7第三章基于爬虫的XSS漏洞检测算法研究83.1 基于文本相似度算法的页面去重83.2 基于正则匹配的漏洞注入点定位算法83.3 基于注入点分类的XSS漏洞检测算法93.4 基于模拟攻击的漏洞检测算法93.5 本章小结10第四章 XSS漏洞检测插件的实现与测评114.1 插件的实现114.2 插件的测试124.3 本章小结13第五章 总结与展望14
8、参考文献15广东东软学院本科生毕业设计(论文)第一章绪论1.1研究背景及意义进入二十一世纪,网络安全和信息安全备受国家的关注。在2016年举办的第十二届全国人民代表大会常务委员会上,宣布了维护网络空间主权的法律成立中华人民共和国网络安全法,从此引领社会信息化发展走向健康发展的方向。随着网络的不断深入的发展,Web应用漏洞也越来越多样化,而XSS漏洞是众多所有漏洞中最受大众关注的。根据OWASP漏洞分类说明,XSS(Cross Site Scripting)长期位于各大漏洞排行榜中最受关注的漏洞1。并且传统的XSS攻击手段无时无刻不在考验着Web应用安全方案的健壮性、灵活性。2XSS攻击指攻击者
9、在客户端浏览器中进行恶意脚本的执行指令的相关的操作,进而导致用户隐私信息的泄漏,带来一定的财产损失。遍布世界各地,编写跨站点脚本编写着实的是一个棘手的问题,因为XSS漏洞可能导致关联的网络安全问题。跨站点脚本攻击可以窃取用户所有的隐私信息;跨站点脚本攻击的实现可以轻易帮助不法分子实现盗取客户重要信息的途径,对客户强行发送广告链接小窗口等。通过跨站点脚本攻击轻松完成他们想要实现的操作,攻击者将跨站点恶意代码在网页进行了隐藏式的编辑,当客户无意识的进入到不法分子早就设下的包含Web木马的恶意站点的网站;攻击者早就预谋将XSS攻击脚本以非常隐匿的方式写入到了网页中,进而当受害者点击到这个提前设下圈套
10、的页面进行内容的浏览时,网页就会泄漏浏览者的信息,并将用户输入的重要个人信息发送给攻击者;在2019年的3月11日,就有网络安全专家剖出了目前超过42,000台Seagate GoFlex家用网络存储(NAS)设备是非常容易遭到XSS恶意脚本攻击的。希捷现在已修复了部分产品中存在的XSS漏洞的难题,但是仍有漏洞问题的出现,而且并没有得到彻底的解决。而跟据阿里云安全团队在2019.7月发布的2019上半年web应用安全报告,XSS攻击的方式方法和各种层出不断的web漏洞无时无刻不在威胁着web应用安全方案的和安全团队的快速反应能力2。不仅如此,报告还显示其中传统web攻击来源94%是扫描器。根据
11、这个思路,那我就用python写一个扫描XSS漏洞的插件,防范于未然。这样可以大大减少被攻击的可能性,节省了人力物力。但在查阅资料后,发现,现在已有可用的检测XSS漏洞的工具。目前,在国内XSS漏洞在早期的网站进行设计中,网页的存在不同形式发展都是一个静态的3。静态Web内容和稳定,不经常更新,但难以在稍后阶段维持。如果我们需要进行维护社会更新自己网页,就要通过再次编辑HTML网页的方式实现,所以面对巨大的网站的时候,维护一个静态网页的工作量可见其难度有多难。在这个网络飞速发展的时代,大批的动态网站技术的涌现,这些动态网页技术根据用户的需求和选择以及动态的变化,我们需要改变的内容来源于数据库。
12、虽然我们这样的技术与学生时代的需求更加的契合,但是发展动态网页也不是万全之策,一样会遭受到网络的攻击,可能要比普通静态的网页安全系数高一点点,这里应用层攻击最常出现的依然是XSS攻击4。这是XSS攻击:攻击者在网页中注入恶意脚本代码,但是当用户信任的服务器打开网站浏览网页,嵌入到网页中的恶意代码,而用户的知识来执行,这样才能实现攻击3的目的。网络进行爬虫主要是通过浏览并对互联网企业网页进行窃取2。网络爬虫自身其实是一种作为搜索引擎的基础设施存在的,其拥有着搜索引擎的丰富的数据库资源5。如果一些具有XSS漏洞的网页被网络爬虫抓取,用户在使用搜索结果时容易受到XSS攻击,因此搜索引擎的性能评估肯定
13、会受到影响1。基于这些原因,当网络爬虫访问 web 页面时,检测 web 页面中的 XSS 漏洞非常重要6。这样做可以很好的保护搜索引擎用户的安全,对于遏制XSS攻击也能起到一定的保护作用。1.2国内外研究现状1966年,XSS跨站点脚本正式问世,从此开始一直被OWASP资质作为十大安全漏洞之一8。关于XSS的国内外研究发展的现状具体可见表1-1。表1-1国内外XSS漏洞研究对比作者研究成果存在的问题吴翰清沈忠涛张玉清文 凯何小乐S.KalsVan Gundy M在白帽子讲web安全一书总深入浅出的剖析了XSS攻击的产生,构造技巧和利用方式,并提出了一些XSS防御策略。提出了从表单和URL两方
14、面检测漏洞,设计了一款XSS检测工具。在一种基于网络爬虫的跨站点脚本漏洞检测一文中,提出了参照渗透测试的思想进行模拟攻击,进而判断漏洞是否存在。提出了“SecBar”测试模型。国外著名的漏洞测试工具比如WebInspect和WVS(Web Vulerability Scanner)都是基于检测模型Van Gundy MVan Gundy M,Chen H.Noncespace提出了可以根据污点跟踪管理策略来防范攻XSS漏洞攻击,其原理就是我们通过将客户端标记为可信和不可信客户端,然后学生通过合理配置相应的安全教育策略来防范XSS漏洞攻击这些防御策略只能防范一些低级的XSS漏洞。由于对Cooki
15、es和Session的分析不足,会造成一定程度的漏报。用于测试用于反射XSS弱点,和检测的存储型跨站点脚本漏洞的影响的唯一方法是不理想的。该类测试工具可以检测多种类型的网络安全漏洞,但是对XSS的检测不够具有针对性,检测效果不理想。该类测试方法的检测技术效率较低。而且国家安全发展策略配置的使用受网站开发企业人员限制由于目前我国社会接触互联网的时间较晚,对网络信息安全的研究少之又少,很不成熟,使得我国在网络环境安全的研究与其他国家落后很多。攻击代码改变XSS漏洞,在互联网上,以便跨站点脚本漏洞比较多,跨站点脚本安全造成了很大的关注。安全专家,这开始研究跨站点脚本漏洞,各种检测方法和预防措施2。在
16、杨君的 XSS攻击检测与安全防护技术研究与设计中提到过滤特殊字符,像是常见的尖括号。这种做法大开大合,很是粗暴,也很简单,但是这样容易改变原文的意思,容易造成歧义。所以预防XSS,对用户输入直接过滤并不是最佳的选择7。1.3研究内容网络信息安全是发展的一个持续的过程,虽然跨站点脚本已经越来越具备比较成熟的防御系统,但针对这种攻击手段层出不穷。网络进行信息系统安全伴随着中国互联网的诞生,网络攻击和防御技术在不断碰撞和对抗的过程中可以得到社会发展。 这就要求我们从发展的角度来研究跨站点脚本攻击和防御技术。值得一提的是,由于本人使用的语言是python,在最开始的python学习中了解到seleni
17、um模块搭配phantomJS的方式driver.get(URL)构造GET请求,链接到服务器,发送GET请求进而导提出子链接。而这么做具有3个好处。一是该框架自身可以完成仿造的浏览器设定,轻松完成所有的数据提取和破解的过程,并且通过龙卷风模块httpclient的辅助行为,绕过大多数反爬虫网站从而轻松逃过过滤。第二,selenium模块时可以完成对页面上的可视元素和隐藏元素进行划分的,避免爬虫到蜜罐中。第三是它的框架是伪浏览器,虽然自身并没有任何的GUI,但是支持HTML的功能,JavaScript具有跟浏览器相同的解析能力,该程序不会渲染出网页需要显示的内容,而是通过不使用CSS和GUI渲
18、染,轻松绕过这些自身就可以完成相关内容的搜索,页面元素的JavaScript执行等,因此浏览效率远超于一般的浏览器。 但是后来我们知道,早在2018年selenium和phantomJS就分手了,selenium就已经不支持phantomJS了。可见网络技术的更新速度的惊人。我们建议改进当前的 XSS 漏洞检测模型,以解决漏报和低效率检测 XSS 漏洞的问题。状态和Web应用程序安全漏洞进行了分析,跨站点脚本和研究知识的基本原理,深入分析和跨站点脚本攻击XSS的防御,通过深入的漏洞检测机制的仔细的剖析,找出高效率的工具对跨站点脚本漏洞完成相应的检测。1.4组织结构本论文主要包括六个章节:第一章
19、主要是交代了跨站点脚本的研究的背景和研究的目的,对于跨站点脚本攻防技术的研究现状进行总结阐述,最后介绍了整篇论文的研究的主要的内容和论文的大框架进行交代。第二章对于客户端脚本安全管理的理论进行论述,XSS攻击网络技术的相关理论逐一解析,对于XSS漏洞的分类和工作原理也详细阐释,总结了XSS漏洞的危害和基本的防御措施。第三章研究跨站漏洞检测算法,提出改进XSS漏洞检测算法,从跨站点脚本漏洞中找到出口,改进XSS漏洞检测模块中的攻击向量库生成算法,从而生成XSS漏洞检测效率和漏洞检测的工具。第四章根据XSS漏洞检测系统,实现可疑的点和系统的漏洞检测,最后确定系统的测试的最终的目标,形成一定的测试环
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 python XSS 漏洞 检测 插件 设计 实现
限制150内