一种自动生成存储型XSS攻击向量的测试方法与流程

文档序号:11432539阅读:383来源:国知局
本发明涉及计算机测试
技术领域
:,具体地,涉及一种自动生成存储型xss攻击向量的测试方法。
背景技术
::xss是web应用程序中最普遍的一类漏洞。根据不同的形成原因,xss可以分为三类:反射型、存储型和dom型,其中存储型xss危害性最为严重。针对存储型xss的特点及其触发方式,设计并实现了一款自动化生成存储型xss攻击向量的工具。使用该工具对国内两个大型视频分享网站的日志发布系统进行测试,发现了6类导致存储型xss漏洞的攻击向量。目前,采用的存储型xss攻击向量的测试方法测试存在步骤繁琐、自动化程度低和有效性差的缺陷。技术实现要素:本发明的目的在于,针对上述问题,提出一种自动生成存储型xss攻击向量的测试方法,以实现步骤简单、自动化程度高和有效性好的优点。为实现上述目的,本发明采用的技术方案是:一种自动生成存储型xss攻击向量的测试方法,主要包括:步骤1:将生成的测试用攻击向量,存储在一个.txt文件中,每个攻击向量为一行;步骤2:webfuzz分行读取.txt文件,并自动发送给web应用程序;步骤3:web应用程序相应并返回结果。进一步地,所述测试用攻击向量的生成方法包括使用<script>、使用事件、使用url伪协议、使用css、使用expression。进一步地,所述测试用攻击向量的变异方法包括使用大小写、使用嵌套、插入混淆字符、使用html编码。进一步地,所述测试的测试者通过任意增减html元素标签和事件来获得自己需要的攻击向量集。进一步地,所述webfuzz为一个开源的web漏洞检测工具,使用c#编写,可以自动连续发送自定义的http请求,将webfuzz进行改进,修复了webfuzz在对攻击向量连续进行post提交时content-length字段无法变动的缺陷。本发明的一种自动生成存储型xss攻击向量的测试方法,主要包括:步骤1:将生成的测试用攻击向量,存储在一个.txt文件中,每个攻击向量为一行;步骤2:webfuzz分行读取.txt文件,并自动发送给web应用程序;步骤3:web应用程序相应并返回结果,实现步骤简单、自动化程度高和有效性好的优点。附图说明附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:图1为本发明所述一种自动生成存储型xss攻击向量的测试方法的测试步骤图。具体实施方式以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。由图1可知,一种自动生成存储型xss攻击向量的测试方法,主要包括:步骤1:将生成的测试用攻击向量,存储在一个.txt文件中,每个攻击向量为一行;步骤2:webfuzz分行读取.txt文件,并自动发送给web应用程序;步骤3:web应用程序相应并返回结果。测试用攻击向量的生成方法包括使用<script>、使用事件、使用url伪协议、使用css、使用expression。测试用攻击向量的变异方法包括使用大小写、使用嵌套、插入混淆字符、使用html编码。测试的测试者通过任意增减html元素标签和事件来获得自己需要的攻击向量集。webfuzz为一个开源的web漏洞检测工具,使用c#编写,可以自动连续发送自定义的http请求,将webfuzz进行改进,修复了webfuzz在对攻击向量连续进行post提交时content-length字段无法变动的缺陷。我们使用上述测试方法生成了364个攻击向量,并利用这些攻击向量分别对这些web应用程序进行了测试,其中在2个web应用程序中发现了存储型xss漏洞,共有12个攻击向量成功注入到了日志页面中。下面列出了一些成功的攻击向量:<imgstyle="xss:expression(alert('xss'))"><imgsrc="#"onmousemove="alert('xss')"><inputonerror="alert('xss')"src="#"type="image"><tableonmousemove="alert('xss')"border="1"><tr><th>xss</th></tr></table><imgsrc="javascript:alert('xss');">从测试中,我们可以看出这些web应用程序都对用户输入html格式的内容做了过滤、净化等防范措施。但其中有些做的不够,如对expression未作防范,以及一些html事件调用处理的不够。经过测试后,这些都可以有针对性的进行改进。具体分析结果见表1。表1漏洞结果详细说明如果攻击者利用这些漏洞在页面注入恶意代码,那么所有访问这些页面的用户都可能遭受攻击。攻击者可以劫持用户正在进行的会话,而这可能会威胁到用户敏感信息的泄露或财产的安全。攻击者还可以利用这些漏洞挂上木马或者发动蠕虫攻击,造成更大的社会危害。至少可以达到以下有益效果:本发明的一种自动生成存储型xss攻击向量的测试方法,主要包括:步骤1:将生成的测试用攻击向量,存储在一个.txt文件中,每个攻击向量为一行;步骤2:webfuzz分行读取.txt文件,并自动发送给web应用程序;步骤3:web应用程序相应并返回结果,实现步骤简单、自动化程度高和有效性好的优点。最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。技术特征:技术总结本发明公开了一种自动生成存储型XSS攻击向量的测试方法,主要包括:步骤1:将生成的测试用攻击向量,存储在一个.txt文件中,每个攻击向量为一行;步骤2:WebFuzz分行读取.txt文件,并自动发送给Web应用程序;步骤3:Web应用程序相应并返回结果。本发明的一种自动生成存储型XSS攻击向量的测试方法,可以实现步骤简单、自动化程度高和有效性好的优点。技术研发人员:李炜;何剑受保护的技术使用者:广西科技大学技术研发日:2017.03.15技术公布日:2017.08.29
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1