【技术实现步骤摘要】
一种面向java web服务的漏洞扫描系统及方法
[0001]本专利技术涉及漏洞扫描
,尤其涉及一种面向java web服务的漏洞扫描系统及方法。
技术介绍
[0002]随着互联网的高速发展,互联网成为了联结所有人信息的交汇点。人们越来越习惯在互联网上完成各种业务功能,很多的金融公司,政府机构,私人企业的业务通过各种web系统进行交互处理,为人民提高更加方便快捷的服务。同时,网络安全形势也越来越严峻,网络攻击事件频繁,用户个人隐私大量泄露,对于企业和个人造成很大影响。做好网络安全防护越来越重要。
[0003]做好网络安全防护一般需要企业了解自身暴露资产,完整的对于企业的暴力资产做渗透测试、漏洞扫描。针对安全漏洞企业需要安排开发人员进行修复之后再进行漏洞验证等等。而其中的财力人力的开销是巨大的,对于中小型企业来讲负担较大。而漏洞扫描器可以很好的较低中小型企业的压力,漏洞扫描器操作简单,运行速率快,耗时短,可以协助安全人员更快更高效的完成系统安全评估。
[0004]在现在已知的技术中,扫描器没有具体针对不同java框架进行区分扫描,扫描不够灵活,扫描速率慢。对于URL资产处理较为复杂,一些静态文件和无效链接无需进行漏洞探测。整体扫描较为单一不够灵活,目录扫描方面只对于输入站点的子目录进行扫描,但是目标资产可能存在多级目录。框架识别不够精细,常见java开发模板漏洞没有完善的漏洞库。
技术实现思路
[0005]本专利技术的目的在于提供一种面向java web服务的漏洞扫描系统及方法,从 ...
【技术保护点】
【技术特征摘要】
1.一种面向java web服务的漏洞扫描系统,其特征在于,包括资产收集模块、指纹识别模块、框架漏洞扫描模块和基础漏洞扫描模块,所述资产收集模块会根据输入的目标站点收集该站点URL信息以及站点子目录信息;所述指纹识别模块针对java框架的指纹识别,通过查找几个常见的位置来确定当前框架类型;所述框架漏洞扫描模块用于在所述指纹扫描模块判断出框架类型后进入该框架进行漏洞扫描,收集常见java框架漏洞;所述基础漏洞扫描模块包括目录扫描子模块、XSS漏洞扫描子模块和SQL注入漏洞扫描子模块;所述目标扫描子模块用于扫描目标资产URL的子目录;所述XSS漏洞扫描子模块用于扫描爬虫获取的所有URL是否存在xss漏洞;所述SQL注入漏洞扫描子模块用于确定SQL注入模块是否有用户恶意构造的数据库命令进入数据库中执行。2.根据权利要求1所述的面向java web服务的漏洞扫描系统,其特征在于,所述资产收集模块采用广度优先爬虫策略爬取全站URL,优先爬取重要性和关联度较高的链接,使用python的BeautifulSoup模块,获取所有带href属性的a标签,把a标签中的href属性提取出来,去除重复链接,如果提取出来的是非目标资产那么去除,如果是非http开头的则带上资产根目录,通过此处理好的链接加入未访问列表,已经爬虫过后的链接加入已访问列表;取出未访问列表里面的URL按照爬虫步骤再次进行爬虫,爬虫完毕将爬虫结果放入一个文件中方便之后的指纹识别模块、框架漏洞扫描模块和基础漏洞扫描模块进行调用。3.根据权利要求1所述的面向java web服务的漏洞扫描系统,其特征在于,所述指纹识别模块通过查找几个常见的位置来确定当前框架类型,包括HTTP头,http响应头的server,X
‑
Powered
‑
By和cookies,具体包括以下步骤:首先获取响应包里面的HTTP头信息,接着确认里面是否有Server,X
‑
Jenkins,X
‑
Powered
‑
By,Powered by这些HTTP头,如果存在那么直接获取对应的java框架信息。4.根据权利要求1所述的面向java web服务的漏洞扫描系统,其特征在于,所述SQL注入漏洞扫描子模块通过SQL注入模块注入测试语句和不同测试语句的响应包的区别进行漏洞判断,具体包括:B1,首先进行waf判断,尝试使用含有特殊字符的URL访问被注入的网站,判断是否存在waf,若不存在,则直接进入步骤B2;若存在,则需要再次判断是否能绕过,若能绕过,则修改测试语句,尝试绕过payload后进入步骤B2;若不能绕过,则直接进入步骤B2;B2,测试SQL注入模块有报错注入、布尔盲注和延时盲注,采用常用SQL注入中的报错注入、联合查询语句进行测试,比较不同测试响应判断是否存在漏洞,若存在漏洞,则直接输出测试结果后,再测试布尔盲注和延时盲注;否则,直接测试布尔盲注和延时盲注。5.根据权利要求4所述的面向java web服务的漏洞扫描系统,其特征在于,所述使用含有特殊字符的URL访问被注入的网站,判断是否存在waf具体包括:使用含有特殊字符的URL访问,出现响应403,500或者响应含有banned,firewall之类的关键词;步骤B2包括:采用报错注入、布尔盲注和延时盲注作为SQL基础测试,其中,所述报错注入指的是枚举口令以暴力测试的方式注入,获得正确口令;延时盲注,当页面无法回显查询信息时,可以考虑使用延时盲注,延时盲注攻击者通过构造延时语句,当数据库执行该语句时如果满足判断条件那么执行时间短,如果不满足判断条件会导致执行时间很长,攻击者就可以通过响应时间长短判断测试语句是否正确,从而得到数据库信息;布尔盲注用于没有回显的情形,通过响应返回的true或者false来判断数据库信息使用布尔盲注之前需要
先判断数据是字符型还是数字型,之后再构造布尔语句判断页面回显,用于查询数据库是否有该信息,若有则返回信息详情,若无则会有对应报错。6.一种面向java web服务的漏洞扫描方法,其特征在于,基于权利要求1
‑
5任一所述的java web服务的漏洞扫描系统实现,包括以下步骤:S1,将...
【专利技术属性】
技术研发人员:纪守领,彭浩,乐梦娇,费俊涛,张旭鸿,赵丹丹,钟鸣,伍一鸣,
申请(专利权)人:尚蝉浙江科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。