CN113596114B - 一种可扩展的自动化Web漏洞扫描系统及方法 - Google Patents
一种可扩展的自动化Web漏洞扫描系统及方法 Download PDFInfo
- Publication number
- CN113596114B CN113596114B CN202110783926.2A CN202110783926A CN113596114B CN 113596114 B CN113596114 B CN 113596114B CN 202110783926 A CN202110783926 A CN 202110783926A CN 113596114 B CN113596114 B CN 113596114B
- Authority
- CN
- China
- Prior art keywords
- module
- extensible
- domain name
- sub
- crawler
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1433—Vulnerability analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种可扩展的自动化Web漏洞扫描系统及方法。该系统,包括可扩展模块、子域名搜集模块、端口防护探测模块、代理池模块、爬虫与被动扫描模块和报告输出模块。该六个模块在运行中任选一个或多个进行组合执行。所述的可扩展模块用于根据使用者的需要外接各类功能模块。所述的子域名搜集模块用于在获取到需探测的所有目标网址后,使用subdomainSearch方法和插件进行双重收集探测。本发明能够自定义探测流程和自由选择工具,因此有很强的灵活性和适应性,可以应对多种复杂的应用场景。此外,本发明的代理池有两个选项,分别为基于评分更新代理池和在交互页面查看高评分的代理IP地址,能够帮助用户选择心仪的代理IP。
Description
技术领域
本发明属于信息安全领域,具体是Web安全领域,涉及一种可扩展的自动化Web漏洞扫描框架的设计方案。通过自定义测试流程和调整各个阶段所采用的探测工具,扫描框架可适应各种不同类型的Web产品的测试。同时考虑到Web产品固有的防护手段,扫描框架还集成了基于评分维护的优质动态免费代理池。通过各阶段的自由工具选择以及优质的代理池,该扫描框架能够处理不同类型的复杂目标。
背景技术
目前Web应用程序种类多样且功能强大,例如网上购物商城,在线社交,远程办公,网络游戏等功能,用户仅需使用普通的浏览器即可随时随地享受丰富的功能。但在精美丰富的功能背后,可能隐藏着大量安全漏洞。其根本原因是,程序开发人员往往以实现功能需求为目标,只会考虑功能是否完善,不会考虑到相关的安全问题,这就导致了一个Web应用程序里存在着许多如XSS与SQL注入这种经典但普遍存在的漏洞。
这时一个以快速自动化扫描目标网址,尽可能检测出潜在漏洞为目标,同时兼顾高效率和高精度的扫描器就十分重要。Web漏洞的扫描分为信息收集和漏洞探测两个阶段。渗透测试的本质就是信息收集,信息收集的全面与否很大程度决定了后期渗透测试的难易程度。信息收集是为了找到尽可能多的网站信息,如子域名和开放端口情况,为漏洞探测阶段提供足够多的探测目标。漏洞探测阶段针对信息收集阶段得到的内容进行各种漏洞类型的扫描。现存的漏洞扫描器分为主动扫描器和被动扫描器。
主动扫描器优点是自动化程度高,操作简单,集合了信息收集和漏洞检测多个阶段。但缺点也十分明显,它不仅在各个渗透流程方面的探查精度方面不如其他的专项扫描工具,而且只能针对单个目标网址进行探测,误报率高且效率较低。如果遇到防护程度较高的网站,如拥有反爬虫机制的网站,还容易被封IP,导致无法进行下一步的探测。而被动扫描器能够被动扫描手动操作产生的流量,精度较高而且不容易被网站的防护阻碍,但缺失了自动进行信息收集的功能,并且需要人为操控,费时费力,不够自动化。
所以只有提出一种结合主动扫描和被动扫描优点的方案,兼顾自动化和探测精度,同时能够处理各种类型的复杂目标,才能满足用户的需求。
发明内容
本发明目的在于针对市场流行扫描器的扫描业务数量限制、自动化程度低、探测精度低、不可扩展等缺点,设计一种可扩展的自动化Web漏洞扫描系统及方法。不仅适用于多种复杂场景下的Web产品扫描,还具有良好的流畅性,不会轻易地被Web固有的防护手段限制探测。
本发明一种可扩展的自动化Web漏洞扫描系统,包括可扩展模块、子域名搜集模块、端口防护探测模块、代理池模块、爬虫与被动扫描模块和报告输出模块。该六个模块在运行中任选一个或多个进行组合执行。所述的可扩展模块用于根据使用者的需要外接各类功能模块。所述的子域名搜集模块用于在获取到需探测的所有目标网址后,使用subdomainSearch方法和插件进行双重收集探测。
所述端口防护探测模块用于在扫描前对目标对象进行防护情况的探测,其工作过程如下:
1)利用CDN子模块进行多次ping请求目标网址,通过比较返回的IP地址是否一致,来判断目标网站是否存在CDN防护。
2)使用Shodan搜索引擎探测子模块进行无需接触目标的端口扫描,使用Masscan和Nmap工具进行联合端口查询,相互验证去重,返回精准的端口。
3)调用WAF检测工具判断网址是否存在WAF,将所有结果存入目标数据库。
所述的代理池模块分为五个部分,分别是网页爬取部分、网页解析部分、IP测试部分、IP评分部分和信息存储部分。
所述的爬虫与被动扫描模块中集成爬虫与被动扫描器。爬虫通过子域名API进行基于广度地爬取。爬虫将爬取结果发送到被动扫描器,被动扫描器扫描所有访问的流量。
所述的报告输出模块用于输出扫描结果。
作为优选,确定被扫描的目标对象不存在CDN和WAF保护的情况下,不启动端口防护探测模块直接进入爬虫与被动扫描模块来提高探测效率。
作为优选,所述的可扩展模块采用字典形式的cmd指令编写方法来提升可扩展性能。
作为优选,可扩展模块提供了三个配置文件,分别是插件调用配置文件,插件资源存放配置文件和结果输出解析文件。同时将插件名称和调用指令以字典的形式写入调用文件;可扩展模块中使用cmd调用指令将插件运行结果以json格式输出到结果输出解析文件中。可扩展模块使用正则表达式自动扫描资源配置文件,匹配每一个插件的调用指令和资源路径,并使用正则解析json格式结果文件,通过关键词匹配将信息存入数据库。
作为优选,subdomainSearch方法的执行过程如下:首先,使用多线程字典爆破,字典包含所有DNS服务商的字典和市面较成规模的子域名探测工具字典;接着,使用搜索引擎语法找寻域名。最后,将以上两步得到的结果汇总,并与插件结果进行去重筛选,存入数据库subdomain表。
作为优选,所述代理池模块的工作过程如下:
首先,查看config配置,使用网页爬取部分获取IP代理网站;
接着,网页解析部分调用parser规则文件进行网页解析,正则匹配关键词为ip,port,protocol,updatetime;
然后,使用testrun函数尝试连接;根据打分机制给予起始分,每隔15分钟重新发起连接请求,检查代理IP是否失效,每次连接失败减一分,连接成功则记录所花费时间;
最后,信息存储部分将所有数据分类存入数据库IP表。当一个IP的分数为零时则删除该IP。
作为优选,所述的代理池模块中加入adressCheck函数。adressCheck函数对多个IP地址库的API接口进行IP地址定位,将于目标对象无关的IP存入IP禁止文件,防止错误爬取。
作为优选,所述爬虫与被动扫描模块的爬取流程为读取子域名,解析网址源代码,查看是否有新的网址链接出现,若有,将新的网址加入队列进行新一轮的爬取,若无,则进行后续子域名的爬取。同时,爬虫进行模拟人工点击和智能填充表单的操作来还原真实访问,得到网页返回的所有的信息,查看是否有新的跳转链接出现,若有,则可进行新一轮的爬取。
作为优选,所述的报告输出模块使用Web框架,以网页形式展示所有阶段测试结果。通过读取子域名数据库,目标数据库和漏洞数据库,将所有信息分页分类展示。
利用前述的自动化Web漏洞扫描系统进行扫描的方法如下:
根据被扫描的目标对象特点,在可扩展模块、子域名搜集模块、端口防护探测模块、代理池模块、爬虫与被动扫描模块和报告输出模块中选择所需的模块在执行。
在需要外接其他功能模块时,启动可扩展模块进行外部扩展。
使用子域名搜集模块对目标对象进行子域名采集。
在未知目标对象防护情况时,启动端口防护探测模块,对目标对象的防护情况进行探测。
代理池模块对目标对象进行网页爬取、网页解析、IP测试、IP评分和信息存储操作。
爬虫与被动扫描模块对目标对象进行数据爬去和扫描分析。
本发明的有益效果如下:
1、本发明能够自定义探测流程和自由选择工具,因此有很强的灵活性和适应性,可以应对多种复杂的应用场景。
2、本发明的代理池提供了两个选项,第一个选项是基于评分更新代理池,代理池会持续地爬取新的代理IP,并且测试已存在的代理IP并打分。第二个选项是直接在交互页面查看高评分的代理IP地址,或是在给出的文件路径查看完整的代理池,代理池中不仅有评分参数,还有连接速度可供用户参考,帮助用户选择心仪的代理IP。
附图说明
图1为本发明进行探测的流程图。
具体实施方式
结合以下具体实施例和附图,对本发明进一步的详细说明。
如图1所示,一种可扩展的自动化Web漏洞扫描系统,基于一款可扩展性强的Web漏洞自动化扫描框架(Extensible Automated Scanning Framework,EASF)。其不仅适用于多种复杂场景下的Web产品扫描,还具有良好的流畅性,不会轻易地被Web产品固有的防护手段限制探测。
如图1所示,该扫描框架将整个渗透流程拆分成子域名收集,端口防护检测,爬虫爬取流量,被动扫描器检测,报告输出。在EASF中,用户可以自定义渗透探测阶段,比如确定目标不存在CDN和WAF保护,用户就可以使扫描器不经过防护探测模块直接进入爬虫模块以提高探测效率。EASF还可以当作工具集来使用,若用户只需进行子域名探测,也可只选择子域名模块然后直接输出报告查看结果,不需要费工夫去专门寻找对口工具。EASF的每一个渗透阶段,用户都可以选择当下效果最好的工具进行扩展,进行自定义以实现效果最大化,再利用爬虫结合精确度高的被动扫描器,就可自动化完成对目标的批量扫描。同时,为防止Web应用程序存在反爬虫手段限制扫描,EASF还建立了一个基于评分维护的优质免费代理池,进一步提升了测试的成功率。
具体地,该可扩展的自动化Web漏洞扫描系统,包括可扩展模块、子域名搜集模块、端口防护探测模块、代理池模块、爬虫与被动扫描模块和报告输出模块。该六个模块中能够任选一个或多个进行组合执行。
各模块的具体内容如下:
1.可扩展模块
可扩展功能可大大增加扫描器的灵活性,贴近用户的需求。但一般使用的可扩展方法受限于脚本的编写语言,只能支持规定好的一两种语言所编写的插件进行扩展。为了摆脱这个障碍;本发明EASF采用字典形式的cmd指令编写方法来提升可扩展性能。本发明中的可扩展模块提供了三个配置文件,分别是插件调用配置文件,插件资源存放配置文件和结果输出解析文件。在环境已存在插件所需语言的条件下,用户将要使用的插件放入资源存放文件;同时将插件名称和调用指令以字典的形式写入调用文件,如‘插件名称:cmd调用指令’,此时注意调用指令中要包含插件的绝对路径;最后cmd调用指令要将插件运行结果以json格式输出到结果输出解析文件中。用户完成资源存放和指令编写后,由python编写的EASF就会使用正则表达式自动扫描资源配置文件,匹配每一个插件的调用指令和资源路径,从而顺利运行非python语言的插件脚本。最后EASF使用正则解析json格式结果文件,通过关键词匹配将信息存入数据库,根据阶段不同,数据库对应分为Target,Subdomain,IP,Task,Vuln几张表。这样用户就可修改已添加任何语言编写的工具或脚本到任意渗透流程阶段,使EASF能够应对更加复杂的场景以此提高漏洞命中率,节省用户的时间和精力。
2.子域名搜集模块
子域名是域名系统(DNS)层次结构的一部分,业务较大的公司使用多个子域名能够更便捷地管理网站的不同功能。域名数量越多则发现漏洞的可能性越大。当目标业务范围较大时,很难保证每个子域名的安全性,因此子域名的搜集至关重要。本发明在获取到需探测的所有目标网址后,子域名搜集模块相继使用了subdomainSearch方法和插件进行双重收集探测。subdomainSearch秉承着先广后筛的原则,第一步使用多线程大规模字典爆破,字典规模十分庞大,包含所有DNS服务商的字典和市面较成规模的子域名探测工具字典;第二步使用搜索引擎语法找寻域名,包括Google语法,Shodan等搜索引擎。最终subdomainSearch将以上两步得到的结果汇总,并与插件结果进行去重筛选,存入数据库subdomain表。
3.端口防护探测模块
一个域名上有许多抽象的端口,一个服务对应着一个端口,进行端口扫描可以尽快地发现服务器的攻击弱点。正因为端口能给出许多重要信息,所以服务器一般会进行端口防护来隔绝恶意的探测。常规的端口防护有使用CDN(内容分发网络)隐藏真实IP地址,也有在发现恶意地大量发包进行端口探测后的IP封禁,甚至大公司会在端口上购买强力地WAF防护,在阻碍探测的同时极大的浪费了测试员的时间精力。针对以上提到的三种防护措施,本发明拥有着相应的应对措施。具体地,端口防护探测模块的工作过程如下:
1)经过子域名搜集阶段拿到所有子域名后,端口防护探测模块首先利用CDN子模块进行多次ping请求目标网址,通过比较返回的IP地址是否一致,来判断目标网站是否存在CDN防护。
2)使用Shodan等搜索引擎探测子模块进行无需接触目标的端口扫描,避免被察觉而被封禁IP,接着使用Masscan和Nmap工具进行联合端口查询,相互验证去重,最终返回较为精准的端口。为了更快地完成多个工具的组合探测,EASF使用了多线程来提高效率。
3)得到真实IP和端口后会调用WAF检测工具判断网址是否存在WAF,最终将所有结果存入目标数据库,供下一阶段使用。
4.代理池模块
一般企业都会在自己的Web产品上添加一些防护手段,较为常见的就是端口防护和反爬虫机制。当服务器发现单一IP对网站发起了大量请求时,该机制会判定网站正在被恶意爬取信息,从而将大量发包的IP设置为禁止访问。为了不影响后续的渗透探测,一个优质的、时刻更新维护的免费代理池就显得十分重要。
代理池模块分为五个部分,分别是网页爬取部分、网页解析部分、IP测试部分、IP评分部分和信息存储部分。代理池模块的工作过程如下:
首先,查看config配置,使用网页爬取部分获取其中存有的IP代理网站;
接着,网页解析部分调用parser规则文件进行网页解析,正则匹配关键词为ip,port,protocol(http是https),updatetime(更新时间);
然后,testrun函数会尝试连接,并记录连接所需时间;再根据打分机制给予10分的起始分,每隔15分钟重新发起连接请求,检查代理IP是否失效,每次连接失败减一分,连接成功则记录所花费时间,以此作为同等分数的优劣判断条件;
最后,信息存储部分将所有数据分类存入数据库IP表。当一个IP的分数为零时则删除该IP,进行多次尝试从而避免网络波动所带来的误差。
由于国外的IP往往不可用,而常见的代理池中又包含世界各地的IP,为了避免不必要的检测,提高效率,EASF的代理池模块加入了adressCheck函数。为了防止误差,adressCheck分别利用淘宝,百度和腾讯IP地址库的API接口进行IP地址定位,正则关键词为国家和省份,若国家对应不为中国则删除该IP并存入IP禁止文件,防止下次错误爬取。
5.爬虫与被动扫描模块
作为一款扫描器,最重要的是扫描探测能力,EASF选择了爬虫与被动扫描器搭配组合来实现最佳扫描效果。首先,爬虫会通过子域名API的方式来进行基于广度地爬取,爬取流程为依次读取子域名,解析网址源代码,查看是否有新的网址链接出现,若有,将新的网址加入队列进行新一轮的爬取,若无进行下一个子域名的爬取。这样就可以最大程度地触发选中目标域的流量。同时,爬虫会进行模拟人工点击和智能填充表单的操作来还原真实访问,得到网页返回的所有的信息,查看是否有新的跳转链接出现,若有,则可进行新一轮的爬取。最后通过代理发送给被动扫描器,被动扫描器扫描每一个访问的流量,降低误报率,提高命中率。EASF预装的是Rad爬虫+Xray被动扫描器组合,最终将探测到的漏洞信息存入数据库Vuln表。
6.报告输出模块
所有探测阶段完成后,报告输出模块使用Web框架,以网页形式直观地展示所有阶段测试结果。通过读取子域名数据库,目标数据库和漏洞数据库,将所有信息分页分类展示。子域名区域展示搜集到的子域名URL,目标区域展示URL,端口和WAF存在情况。漏洞区域展示URL,漏洞类型和可利用的Payload,方便用户进行验证。
为了适应不同使用场景的需求,EASF可以自定义渗透流程以提高实用性,减少不必要流程所带来的时间损耗。例如,已知目标网址不存在反爬虫和WAF防护,就可不使用端口防护和代理池阶段,这样不仅节省了宝贵的资源,还提高了效率。最后,EASF利用数据库存储漏洞信息和执行日志,以网页的形式展现报告。
同时EASF可以自定义探测流程和自由选择工具,因此有很强的灵活性和适应性,可以应对多种复杂的应用场景。不同的Web应用有不同的探测需求,例如电影排行榜网站很可能存在反爬虫机制,那么用户就可以在自定义流程中加入IP代理池流程,以此保证探测的流畅性和成功率。在每个阶段用户都可以自由选择心仪的工具,如更喜欢收集功能强大的OneForAll,用户就可以在子域名搜集阶段选择它使用。若是出现了一款更精准实用的子域名探测工具,用户就可以将该工具扩展到EASF进行使用,从而达到更好的探测效果。
此外,该自动化Web漏洞扫描系统设置的入口界面会展示EASF的所有阶段流程,各流程使用工具以及操作命令提示。由于用户可自定义渗透流程和自由选择每一阶段所用工具,所以,扫描器可针对多种Web场景进行有效探测,其中,EASF已对博客,在线商城,论坛,公司产品首页等多种场景进行了验证探测。用户可输入命令0-7来选择想要探测的目标阶段。
该自动化Web漏洞扫描系统的信息搜集过程包括子域名搜集,端口探测和WAF判断三个阶段。EASF预装了OneForAll和Sublist3r两种工具进行子域名探测,得到的结果将递交给端口防护探测模块。接着该模块使用多线程进行CDN判断,端口扫描和WAF探测,最终将多种探测结果进行整合去重,得到较为精确的结果存入目标数据库。报告输出模块从数据库中得到信息,最终在网页上直观地展示出来。
代理池提供了两个选项,第一个选项是基于评分更新代理池,代理池会持续地爬取新的代理IP,并且测试已存在的代理IP并打分。第二个选项是直接在交互页面查看高评分的代理IP地址,或是在给出的文件路径查看完整的代理池,代理池中不仅有评分参数,还有连接速度可供用户参考,帮助用户选择心仪的代理IP。
爬虫与被动扫描模块从目标数据库获得需要爬取的网址,通过代理发送给被动扫描器进行检测。被动扫描器扫描经过的流量,若发现漏洞的存在就会输出记录。
在爬虫与被动扫描模块中,被动扫描器将探测到的结果以URL,Plugin和Payload分类存入漏洞数据库,报告输出模块读取数据库信息以网页报告的形式展示。
Claims (9)
1.一种可扩展的自动化Web漏洞扫描系统,其特征在于:包括可扩展模块、子域名搜集模块、端口防护探测模块、代理池模块、爬虫与被动扫描模块和报告输出模块;该六个模块在运行中任选一个或多个进行组合执行;所述的可扩展模块用于根据使用者的需要外接各类功能模块;所述的子域名搜集模块用于在获取到需探测的所有目标网址后,使用subdomainSearch方法和插件进行双重收集探测;
所述端口防护探测模块用于在扫描前对目标对象进行防护情况的探测,其工作过程如下:
1)利用CDN子模块进行多次ping请求目标网址,通过比较返回的IP地址是否一致,来判断目标网站是否存在CDN防护;
2)使用Shodan搜索引擎探测子模块进行无需接触目标的端口扫描,使用Masscan和Nmap工具进行联合端口查询,相互验证去重,返回精准的端口;
3)调用WAF检测工具判断网址是否存在WAF,将所有结果存入目标数据库;
所述的代理池模块分为五个部分,分别是网页爬取部分、网页解析部分、IP测试部分、IP评分部分和信息存储部分;
所述的爬虫与被动扫描模块中集成爬虫与被动扫描器;爬虫通过子域名API进行基于广度的爬取;爬虫将爬取结果发送到被动扫描器,被动扫描器扫描所有访问的流量;
所述的报告输出模块用于输出扫描结果;
所述代理池模块的工作过程如下:
首先,查看config配置,使用网页爬取部分获取IP代理网站;
接着,网页解析部分调用parser规则文件进行网页解析,正则匹配关键词为ip,port,protocol, updatetime;
然后,使用testrun函数尝试连接;根据打分机制给予起始分,每隔15分钟重新发起连接请求,检查代理IP是否失效,每次连接失败减一分,连接成功则记录所花费时间;
最后,信息存储部分将所有数据分类存入数据库IP表;当一个IP的分数为零时则删除该IP。
2.根据权利要求1所述的一种可扩展的自动化Web漏洞扫描系统,其特征在于:确定被扫描的目标对象不存在CDN和WAF保护的情况下,不启动端口防护探测模块直接进入爬虫与被动扫描模块来提高探测效率。
3.根据权利要求1所述的一种可扩展的自动化Web漏洞扫描系统,其特征在于:所述的可扩展模块采用字典形式的cmd指令编写方法来提升可扩展性能。
4.根据权利要求1所述的一种可扩展的自动化Web漏洞扫描系统,其特征在于:可扩展模块提供了三个配置文件,分别是插件调用配置文件,插件资源存放配置文件和结果输出解析文件;同时将插件名称和调用指令以字典的形式写入调用文件;可扩展模块中使用cmd调用指令将插件运行结果以json格式输出到结果输出解析文件中;可扩展模块使用正则表达式自动扫描资源配置文件,匹配每一个插件的调用指令和资源路径,并使用正则解析json格式结果文件,通过关键词匹配将信息存入数据库。
5.根据权利要求1所述的一种可扩展的自动化Web漏洞扫描系统,其特征在于:subdomainSearch方法的执行过程如下:第一步,使用多线程字典爆破,字典包含所有DNS服务商的字典和市面较成规模的子域名探测工具字典;第二步,使用搜索引擎语法找寻域名;最后,将第一步和第二步得到的结果汇总,并与插件结果进行去重筛选,存入数据库subdomain表。
6.根据权利要求1所述的一种可扩展的自动化Web漏洞扫描系统,其特征在于:所述的代理池模块中加入adressCheck函数;adressCheck函数对多个IP地址库的API接口进行IP地址定位,将于目标对象无关的IP存入IP禁止文件,防止错误爬取。
7.根据权利要求1所述的一种可扩展的自动化Web漏洞扫描系统,其特征在于:所述爬虫与被动扫描模块的爬取流程为读取子域名,解析网址源代码,查看是否有新的网址链接出现,若有,将新的网址加入队列进行新一轮的爬取,若无,则进行下一子域名的爬取;同时,爬虫进行模拟人工点击和智能填充表单的操作来还原真实访问,得到网页返回的所有的信息,查看是否有新的跳转链接出现,若有,则可进行新一轮的爬取。
8.根据权利要求1所述的一种可扩展的自动化Web漏洞扫描系统,其特征在于:所述的报告输出模块使用Web框架,以网页形式展示所有阶段测试结果;通过读取子域名数据库,目标数据库和漏洞数据库,将所有信息分页分类展示。
9.一种可扩展的自动化Web漏洞扫描方法,其特征在于:采用如权利要求1所述的一种可扩展的自动化Web漏洞扫描系统;该方法的具体步骤如下:
根据被扫描的目标对象特点,在可扩展模块、子域名搜集模块、端口防护探测模块、代理池模块、爬虫与被动扫描模块和报告输出模块中选择所需的模块在执行;
在需要外接其他功能模块时,启动可扩展模块进行外部扩展;
使用子域名搜集模块对目标对象进行子域名采集;
在未知目标对象防护情况时,启动端口防护探测模块,对目标对象的防护情况进行探测;
代理池模块对目标对象进行网页爬取、网页解析、IP测试、IP评分和信息存储操作;
爬虫与被动扫描模块对目标对象进行数据爬去和扫描分析。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110783926.2A CN113596114B (zh) | 2021-07-12 | 2021-07-12 | 一种可扩展的自动化Web漏洞扫描系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110783926.2A CN113596114B (zh) | 2021-07-12 | 2021-07-12 | 一种可扩展的自动化Web漏洞扫描系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113596114A CN113596114A (zh) | 2021-11-02 |
CN113596114B true CN113596114B (zh) | 2022-11-18 |
Family
ID=78246862
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110783926.2A Active CN113596114B (zh) | 2021-07-12 | 2021-07-12 | 一种可扩展的自动化Web漏洞扫描系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113596114B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114510352B (zh) * | 2022-02-15 | 2022-09-02 | 北京永信至诚科技股份有限公司 | 一种自动渗透项目调度任务方法及系统 |
CN114697085B (zh) * | 2022-03-15 | 2024-01-30 | 浪潮软件集团有限公司 | web应用安全测试中漏扫测试系统及实现方法 |
CN115208695B (zh) * | 2022-09-13 | 2022-12-06 | 平安银行股份有限公司 | 黑盒安全扫描的方法、装置、系统和电子设备 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104363236A (zh) * | 2014-11-21 | 2015-02-18 | 西安邮电大学 | 一种自动化漏洞验证的方法 |
CN110062025B (zh) * | 2019-03-14 | 2022-09-09 | 深圳绿米联创科技有限公司 | 数据采集的方法、装置、服务器及存储介质 |
CN111447224A (zh) * | 2020-03-26 | 2020-07-24 | 江苏亨通工控安全研究院有限公司 | web漏洞扫描方法及漏洞扫描器 |
CN112182587A (zh) * | 2020-09-30 | 2021-01-05 | 中南大学 | Web漏洞扫描方法、系统、装置、存储介质和计算机设备 |
-
2021
- 2021-07-12 CN CN202110783926.2A patent/CN113596114B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN113596114A (zh) | 2021-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113596114B (zh) | 一种可扩展的自动化Web漏洞扫描系统及方法 | |
US20210382949A1 (en) | Systems and methods for web content inspection | |
US9558355B2 (en) | Security scan based on dynamic taint | |
CN104980309A (zh) | 网站安全检测方法及装置 | |
KR20040082633A (ko) | 인터넷 검색 엔진에 있어서의 무효 클릭 검출 방법 및 장치 | |
CN114866358B (zh) | 一种基于知识图谱的自动化渗透测试方法及系统 | |
CN109462583A (zh) | 一种基于静态和动态相结合的反射型漏洞检测方法 | |
US20200336498A1 (en) | Method and apparatus for detecting hidden link in website | |
CN103581185A (zh) | 对抗免杀测试的云查杀方法、装置及系统 | |
Gadient et al. | Web apis in android through the lens of security | |
CN105404816A (zh) | 基于内容的漏洞检测方法及装置 | |
CN105635064A (zh) | Csrf攻击检测方法及装置 | |
CN112738127B (zh) | 基于Web的网站与主机漏洞检测系统及其方法 | |
Redondo et al. | Towards improving productivity in nmap security audits | |
Qu | Research on password detection technology of iot equipment based on wide area network | |
CN108200191B (zh) | 利用微扰法的客户端动态url相关脚本字符串检测系统 | |
Zhao et al. | Large-scale detection of privacy leaks for BAT browsers extensions in China | |
CN114780398A (zh) | 面向Cisco IOS-XE的Web命令注入漏洞检测方法 | |
CN111404903B (zh) | 一种日志处理方法、装置、设备及存储介质 | |
KR100619179B1 (ko) | 인터넷 검색 엔진에 있어서의 무효 클릭 검출 방법 및 장치 | |
Almazrouei et al. | The Internet of Things Network Penetration Testing Model Using Attack Graph Analysis | |
KR102622018B1 (ko) | 보안데이터 처리장치, 보안데이터 처리방법 및 보안데이터를 처리하는 컴퓨터로 실행 가능한 프로그램을 저장하는 저장매체 | |
CN114422274B (zh) | 一种基于云原生的多场景漏洞检测方法、装置及存储介质 | |
CN108536603A (zh) | 一种针对新顶级域名的Web浏览器行为自动化测试方法 | |
KR102258956B1 (ko) | 관계형 데이터베이스를 관리하기 위한 언어인 SQL(Structured Query Language)이 사용되는 환경에서 공격을 탐지하기 위한 방법 및 이를 사용한 서버 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |