一种Web动态网页源码自动化尝试获取方法技术

技术编号:19866450 阅读:52 留言:0更新日期:2018-12-22 13:56
本发明专利技术属于网络技术领域,公开了一种Web动态网页源码自动化尝试获取方法,所述方法包括以下步骤:构造http请求;发送http请求并接收http响应信息;输出http响应信息形成记录;遍历记录,若http响应信息中的状态码为200,则将该条记录输出至结果文件,否则不处理。本发明专利技术分别使用每一个Ascii字符同待测目标URL、身份信息构造http请求并发送,通过对http响应信息的筛选来获得可以获取动态页面源码的字符,提高了源码获取尝试的全面性;整个过程使用程序自动化执行,提高了源码获取尝试的效率。

【技术实现步骤摘要】
一种Web动态网页源码自动化尝试获取方法
本专利技术属于网络
,具体地说是涉及一种Web动态网页源码自动化尝试获取方法。
技术介绍
信息安全领域中,在对动态网页形式的网站进行Web渗透测试时,如果能够拿到动态网页源码,则对了解其输入过滤流程等有很大帮助,进而提高渗透利用的成功率。当前常见的获取方法主要是实用特殊字符手动组装http请求进行获取尝试,比较费时,也容易遗漏。
技术实现思路
本专利技术的目的是为了解决上述问题,提供一种Web动态网页源码自动化尝试获取方法,以尽可能全面、高效地实现Web动态网页源码获取尝试。为了实现上述目的,本专利技术的技术方案是:一种Web动态网页源码自动化尝试获取方法,包括以下步骤:S1,构造http请求;S2,发送http请求并接收http响应信息;S3,输出http响应信息形成记录;S4,遍历记录,若http响应信息中的状态码为200,则将该条记录输出至结果文件,否则不处理。进一步的,所述S1中构造http请求的具体步骤为:输入身份信息和待测目标URL,输入一个Ascii字符设置在待测目标URL尾部组成新的URL,身份信息自动设置在http请求的头部,形成http请求。进一步的,所述的身份信息包括cookie、token、referer、csrf-token、Authorization。进一步的,所述的发送http请求并接收http响应信息的方法包括linuxshell的curl命令、python的httplib库方法。进一步的,所述S3中,所述输出http响应信息形成记录过程中,输出响应信息中的状态码、响应头中的Content-Length字段及本次使用的Ascii字符形成一条记录。进一步的,所述Ascii字符从%00开始,Ascii字符范围为%00~%FF,通过本次使用的Ascii字符形成一条记录后,更换Ascii字符,循环执行步骤S1、S2、S3,直至256个Ascii字符均被使用,每个Ascii字符输出的响应信息中的状态码、响应头中的Content-Length字段及本次使用的Ascii字符均输出形成一条记录。进一步的,所述S4的具体步骤为:遍历记录,如果http响应信息中的状态码为200,则输出Content-Length字段及其对应的Ascii字符到结果文件中;同时记录项总数加一,并对不同的Content-Length值分别进行计数,如果http响应信息中的状态码不为200,则不处理,访问下一条记录,直至遍历所有记录。进一步的,所述不同的Content-Length值的计数中,每项计数信息包括ascii字符、计数值,存到临时内存buffer中。进一步的,如果结果文件中记录项总数为256,则自动删除结果文件中Content-Length值计数最大的对应的记录项,否则不需要处理结果文件。进一步的,所述结果文件中的每项记录中的Ascii字符为可获取动态页面源码的字符,将结果文件中的任一Ascii字符设置在待测目标URL尾部组成新的URL进行访问,即可获得Web动态网页源码。本专利技术的有益效果为:本专利技术分别使用每一个Ascii字符同待测目标URL、身份信息构造http请求并发送,通过对http响应信息的筛选来获得可以获取动态页面源码的字符,提高了源码获取尝试的全面性;将结果文件中的任一Ascii字符设置在待测目标URL尾部组成新的URL进行访问,即可获得Web动态网页源码,整个过程使用程序自动化执行,提高了源码获取尝试的效率。附图说明图1为Web动态网页源码自动化尝试获取方法流程图。具体实施方式为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本专利技术进行详细阐述。根据下述实施例,可以更好地理解本专利技术。然而,本领域的技术人员容易理解,以下实施例仅用于更加清楚地说明本专利技术的技术方案,而不能以此来限制本专利技术的保护范围。如图1所示,一种Web动态网页源码自动化尝试获取方法,包括以下步骤:S1,构造http请求;S2,发送http请求并接收http响应信息;S3,输出http响应信息形成记录;S4,遍历记录,若http响应信息中的状态码为200,则将该条记录输出至结果文件,否则不处理。所述S1中构造http请求的具体步骤为:输入身份信息和待测目标URL,输入一个Ascii字符设置在待测目标URL尾部组成新的URL,身份信息自动设置在http请求的头部,形成http请求。所述的身份信息包括cookie、token、referer、csrf-token、Authorization、其他自定义字段等。所述S2中,所述的发送http请求并接收http响应信息的方法包括linuxshell的curl命令、python的httplib库方法。所述S3中,所述输出http响应信息形成记录过程中,输出响应信息中的状态码、响应头中的Content-Length字段及本次使用的Ascii字符至临时文件A中形成一条记录。Ascii字符从%00开始,Ascii字符范围为%00~%FF,通过本次使用的Ascii字符形成一条记录输出至临时文件A中后,更换Ascii字符,循环执行步骤S1、S2、S3,直至256个Ascii字符均被使用,每个Ascii字符对应的http请求获得的响应信息中的状态码、响应头中的Content-Length字段及本次使用的Ascii字符均输出至临时文件A中形成一条记录。所述S4的具体步骤为:遍历临时文件A中的每一条记录,如果http响应信息中的状态码为200,则输出Content-Length字段及其对应的Ascii字符到结果文件B中;同时记录项总数加一,并对不同的Content-Length值分别进行计数Sum1、Sum2……SumX,否则不处理,访问下一条记录,直至遍历所有记录。所述计数Sum1、Sum2……SumX中,每项计数信息包括ascii字符、计数值,输出至临时内存buffer中。如果结果文件B中记录项总数为256,则自动删除结果文件B中Content-Length值计数最大的对应的记录项,否则不需要处理结果文件B。通过该处理方式可以排除一种特殊情况的影响:有的系统会将所有的请求响应状态都置为200,请求成功与否在http响应体中某些自定义字段反应;如出现此情况,失败响应的响应体长度一般应该是一致,不一致的情况无法自动化。最后获得的结果文件B中的每项记录中的Ascii字符为可以获取动态页面源码的字符,将结果文件B中的任一Ascii字符拼接在待测目标URL尾部组成新的URL进行访问,即可获得Web动态网页源码。本专利技术分别使用每一个Ascii字符同待测目标URL、身份信息构造http请求并发送,通过对http响应信息的筛选来获得可以获取动态页面源码的字符,提高了源码获取尝试的全面性;整个过程使用程序自动化执行,提高了源码获取尝试的效率。其中,附图1中的Y是指Yes,N是指No。本专利技术的Web动态网页源码自动化尝试获取方法可以以脚本形式、web形式、二进制应用程序、APP等形式实现。当以脚本形式实现时,构造http请求的方式如下:执行脚本程序,按照提示在命令行输入身份信息和待测目标URL,输入一个Ascii字符拼接在目标URL尾部组成新的URL,身份本文档来自技高网...

【技术保护点】
1.一种Web动态网页源码自动化尝试获取方法,其特征在于,包括以下步骤:S1,构造http请求;S2,发送http请求并接收http响应信息;S3,输出http响应信息形成记录;S4,遍历记录,若http响应信息中的状态码为200,则将该条记录输出至结果文件,否则不处理。

【技术特征摘要】
1.一种Web动态网页源码自动化尝试获取方法,其特征在于,包括以下步骤:S1,构造http请求;S2,发送http请求并接收http响应信息;S3,输出http响应信息形成记录;S4,遍历记录,若http响应信息中的状态码为200,则将该条记录输出至结果文件,否则不处理。2.如权利要求1所述的一种Web动态网页源码自动化尝试获取方法,其特征在于,所述S1中构造http请求的具体步骤为:输入身份信息和待测目标URL,输入一个Ascii字符设置在待测目标URL尾部组成新的URL,身份信息自动设置在http请求的头部,形成http请求。3.如权利要求2所述的一种Web动态源码自动化尝试获取方法,其特征在于,所述的身份信息包括cookie、token、referer、csrf-token、Authorization。4.如权利要求1所述的一种Web动态源码自动化尝试获取方法,其特征在于,所述S2中,所述的发送http请求并接收http响应信息的方法包括linuxshell的curl命令、python的httplib库方法。5.如权利要求1所述的一种Web动态网页源码自动化尝试获取方法,其特征在于,所述S3中,所述输出http响应信息形成记录过程中,输出响应信息中的状态码、响应头中的Content-Length字段及本次使用的Ascii字符形成一条记录。6.如权利要求5所述的一种Web动态网页源码自动化尝试获取方法,其特征在于,所述Ascii字符从%00开始,Ascii字符...

【专利技术属性】
技术研发人员:刘雁鸣
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1