1.本发明涉及计算机技术领域,特别涉及一种域名资产漏洞扫描方法、装置、设备、存储介质。
背景技术:2.在日常的英特网或者组织的局域网中,由于大多数拥有网络交互能力的程序都不同程度存在着可被利用的漏洞。计算机漏洞存在可以使攻击者能够在未授权的情况下访问或破坏系统。特别是有网络监听权限的软件。如果计算机系统中的漏洞一直未被发现,会长期存在,容易成为被攻击的对象。但是一般的政府、大型公司的域名关联众多的子域名以及主机,所以随着网络的普及,网络漏洞的危害日益凸显。日常经常使用的网站,大多数通过域名访问,如百度的主域名baidu.com,提供web服务的子域名www.baidu.com。而我们真正访问的百度的是https://www.baidu.com,现有的漏洞扫描工具如:nikto、appscan扫描的都是web应用的漏洞,openvas、nessus essentials等工具是扫描ip的漏洞。因此目前缺少根据域名来全方面扩展扫描域名关联漏洞的工具。
3.综上,如何实现轻量化、高效性的全量扫描主域名下的网络资产漏洞,提高漏洞探测速度是本领域有待解决的技术问题。
技术实现要素:4.有鉴于此,本发明的目的在于提供一种域名资产漏洞扫描方法、装置、设备、存储介质,能够实现轻量化、高效性的全量扫描主域名下的网络资产漏洞,提高漏洞探测速度。其具体方案如下:
5.第一方面,本技术公开了一种域名资产漏洞扫描方法,包括:
6.扫描用户通过预设接口输入的目标域名,以获取对应的第一主域名;
7.读取用户配置信息,基于所述用户配置信息探测与所述第一主域名关联的第二主域名;
8.查询所述第一主域名和所述第二主域名的子域名,并对所述子域名进行去重解析处理,以得到目标子域名;
9.对所述目标子域名进行ip探测,以获取目标子域名ip;
10.解析所述目标子域名ip,以获取相应的网络资产信息,对所述网络资产信息进行扫描以获取域名资产关联的漏洞。
11.可选的,所述读取用户配置信息之后,还包括:
12.判断所述用户配置信息中是否包含有需要探测第二主域名的目标配置信息;
13.若所述目标配置信息中不包含需要探测所述第二主域名信息,则查询所述第一主域名的子域名。
14.可选的,所述查询所述第一主域名和所述第二主域名的子域名,包括:
15.利用搜索引擎以及预设映射列表从预设线程池中查询所述第一主域名的子域名
和所述第二主域名的子域名。
16.可选的,所述利用搜索引擎以及预设映射列表从预设线程池中查询所述第一主域名的子域名和所述第二主域名的子域名之前,还包括:
17.通过网络爬虫探测网络上的子域名,并构建所述子域名和对应的主域名的映射关系,以生成相应的预设映射列表。
18.可选的,所述对所述子域名进行去重解析处理,以得到目标子域名,包括:
19.对所述子域名进行ip去重处理,以得到不同ip的子域名;
20.将所述不同ip的子域名通过域名解析服务器,进行解析验证,以得到目标子域名。
21.可选的,所述解析所述目标子域名ip,以获取相应的网络资产信息,包括:
22.利用masscan探测提供连接服务的端口,以获取正常开启的端口;
23.利用nmap解析端口的服务,以获取提供web服务的端口。
24.可选的,所述对所述网络资产信息进行扫描以获取域名资产关联的漏洞,包括:
25.对目标子域名、所述正常开启的端口、所述提供web服务的端口进行扫描以获取域名资产关联的漏洞。
26.第二方面,本技术公开了
27.一种域名资产漏洞扫描装置,包括:
28.第一域名确定模块,用于扫描用户通过预设接口输入的目标域名,以获取对应的第一主域名;
29.第二域名确定模块,用于读取用户配置信息,基于所述用户配置信息探测与所述第一主域名关联的第二主域名;
30.子域名确定模块,用于查询所述第一主域名和所述第二主域名的子域名,并对所述子域名进行去重解析处理,以得到目标子域名;
31.ip获取模块,用于对所述目标子域名进行ip探测,以获取目标子域名ip;
32.漏洞扫描模块,用于解析所述目标子域名ip,以获取相应的网络资产信息,对所述网络资产信息进行扫描以获取域名资产关联的漏洞。
33.第三方面,本技术公开了一种电子设备,包括:
34.存储器,用于保存计算机程序;
35.处理器,用于执行所述计算机程序,以实现前述公开的域名资产漏洞扫描方法的步骤。
36.第四方面,本技术公开了一种计算机可读存储介质,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的域名资产漏洞扫描方法的步骤。
37.可见,本技术公开了一种域名资产漏洞扫描方法,包括:扫描用户通过预设接口输入的目标域名,以获取对应的第一主域名;读取用户配置信息,基于所述用户配置信息探测与所述第一主域名关联的第二主域名;查询所述第一主域名和所述第二主域名的子域名,并对所述子域名进行去重解析处理,以得到目标子域名;对所述目标子域名进行ip探测,以获取目标子域名ip;解析所述目标子域名ip,以获取相应的网络资产信息,对所述网络资产信息进行扫描以获取域名资产关联的漏洞。由此可见,本技术通过基于主域名扩散,探测到子域名、web应用程序、主机、端口等相关网络资产信息,并自动化扫描对应网络资产漏洞,能够部署和运行在常规配置的linux系统,扫描到域名相关的所有的网络资产的漏洞,并通
过配置化和并发的程序设计,充分利用网络资源和设备性能,以达到最大的探测速度。
附图说明
38.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
39.图1为本技术公开的一种域名资产漏洞扫描方法流程图;
40.图2为本技术公开的一种具体的域名资产漏洞扫描方法流程图;
41.图3为本技术公开的一种域名资产漏洞全量扫描流程图;
42.图4为本技术公开的一种域名资产漏洞扫描装置结构示意图;
43.图5为本技术公开的一种电子设备结构图。
具体实施方式
44.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
45.在日常的英特网或者组织的局域网中,由于大多数拥有网络交互能力的程序都不同程度存在着可被利用的漏洞。计算机漏洞存在可以使攻击者能够在未授权的情况下访问或破坏系统。特别是有网络监听权限的软件。如果计算机系统中的漏洞一直未被发现,会长期存在,容易成为被攻击的对象。但是一般的政府、大型公司的域名关联众多的子域名以及主机,所以随着网络的普及,网络漏洞的危害日益凸显。日常经常使用的网站,大多数通过域名访问,如百度的主域名baidu.com,提供web服务的子域名www.baidu.com。而我们真正访问的百度的是https://www.baidu.com/,现有的漏洞扫描工具如:nikto、appscan扫描的都是web应用的漏洞,openvas、nessus essentials等工具是扫描ip的漏洞。因此目前缺少根据域名来全方面扩展扫描域名关联漏洞的工具。
46.为此,本技术公开了一种域名资产漏洞扫描方案,能够实现轻量化、高效性的全量扫描主域名下的网络资产漏洞,提高漏洞探测速度。
47.参照图1所示,本发明实施例公开了一种域名资产漏洞扫描方法,包括:
48.步骤s11:扫描用户通过预设接口输入的目标域名,以获取对应的第一主域名。
49.本实施例中,首先需要用户输入一个域名,域名又称网域,是由一串用点分隔的名字组成的internet上某一台计算机或计算机组的名称,用于在数据传输时对计算机的定位标识,当前用户输入的域名为www.qq.com。然后点击开始探测扫描,程序就会自动化开始扫描该域名。通过解析该域名,会获取第一主域名qq.com。
50.步骤s12:读取用户配置信息,基于所述用户配置信息探测与所述第一主域名关联的第二主域名。
51.本实施例中,从用户配置中读取是否需要探测公司其他关联的主域名,如果需要探测,则会探测和qq.com相同的备案主体的第二主域名,如tencent.com。
52.本实施例中,所述读取用户配置信息之后,还包括:判断所述用户配置信息中是否包含有需要探测第二主域名的目标配置信息;若所述目标配置信息中不包含需要探测所述第二主域名信息,则查询所述第一主域名的子域名。可以理解的是,在读取用户配置信息之后,对用户配置信息进行判断,判断是否需要探测第二主域名,若不需要探测,这直接执行查询第一主域名下的所有子域名的信息,也即查询qq.com下的子域名信息。
53.步骤s13:查询所述第一主域名和所述第二主域名的子域名,并对所述子域名进行去重解析处理,以得到目标子域名。
54.本实施例中,将上述获取的主域名放到集合中,例如,放入domainset中;然后查询第一主域名和第二主域名的子域名,并对所述子域名进行去重解析处理,以得到目标子域名。可以理解的是,将所有主域名放到一个统一的集合中,利用子域名探测查询工具进行子域名的探测查询,然后将查询到的所有子域名进行相应的去重处理、解析处理,以得到目标子域名。
55.步骤s14:对所述目标子域名进行ip探测,以获取目标子域名ip。
56.本实施例中,本实施例中,对所述子域名进行ip去重处理,以得到不同ip的子域名;将所述不同ip的子域名通过域名解析服务器,进行解析验证,以得到目标子域名。可以理解的是,通过对单个子域名的扩散漏洞探测,去探测到子域名的ip,如果域名解析到是cname,则继续探测映射的域名,如果是a地址域名,则获取对应的ip地址。通过多次ping,探测cdn后域名真实的ip。dns历史解析记录网站查询,如https://viewdns.info/iphistory。将所有探测得到的ip放入本线程的集合实例ipset中。
57.步骤s15:解析所述目标子域名ip,以获取相应的网络资产信息,对所述网络资产信息进行扫描以获取域名资产关联的漏洞。
58.本实施例中,对目标子域名ip进行解析,以获取相应的网络资产信息,对所述网络资产信息进行扫描以获取域名资产关联的漏洞,例如:对于web资产通过专门漏洞脚本库,探测对应的web漏洞。对于ipset和portset,通过对应的主机漏洞扫描工具,扫描对应的主机漏洞、弱口令等,就能全方面得扫描到域名资产所有关联的漏洞。
59.可见,本技术公开了一种域名资产漏洞扫描方法,包括:扫描用户通过预设接口输入的目标域名,以获取对应的第一主域名;读取用户配置信息,基于所述用户配置信息探测与所述第一主域名关联的第二主域名;查询所述第一主域名和所述第二主域名的子域名,并对所述子域名进行去重解析处理,以得到目标子域名;对所述目标子域名进行ip探测,以获取目标子域名ip;解析所述目标子域名ip,以获取相应的网络资产信息,对所述网络资产信息进行扫描以获取域名资产关联的漏洞。由此可见,本技术通过基于主域名扩散,探测到子域名、web应用程序、主机、端口等相关网络资产信息,并自动化扫描对应网络资产漏洞,能够部署和运行在常规配置的linux系统,扫描到域名相关的所有的网络资产的漏洞,并通过配置化和并发的程序设计,充分利用网络资源和设备性能,以达到最大的探测速度。
60.参照图2所示,本发明实施例公开了一种具体的域名资产漏洞扫描方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。具体的:
61.步骤s21:扫描用户通过预设接口输入的目标域名,以获取对应的第一主域名。
62.步骤s22:读取用户配置信息,基于所述用户配置信息探测与所述第一主域名关联的第二主域名。
63.其中,步骤s21、s22中更加详细的处理过程请参照前述公开的实施例,在此不再进行赘述。
64.步骤s23:利用搜索引擎以及预设映射列表从预设线程池中查询所述第一主域名的子域名和所述第二主域名的子域名。
65.本实施例中,所述利用搜索引擎以及预设映射列表从预设线程池中查询所述第一主域名的子域名和所述第二主域名的子域名之前,还包括:通过网络爬虫探测网络上的子域名,并构建所述子域名和对应的主域名的映射关系,以生成相应的预设映射列表。可以理解的是,所有集合中的域名,放入专门的线程池domaintaskpool中,去进行单个域名的扩散漏洞探测步骤。domaintaskpool中的线程,会如下述的流程进行扩散探测:通过主流的搜索引擎,如谷歌、百度等常用的引擎,还有如https://fofa.info/,https://www.zoomeye.org/,这类专用的网络资产搜索网站,https://tool.chinaz.com/subdomain,这类第三方的子域名搜索工具。使用harker语法,所有网站提供的api去查询探测domainset中所有主域名的子域名。语句如:site:tencent.com。然后通过去重、通过域名解析服务器验证域名存在后,放入子域名的集合subdomainset中。根据预设的域名层级和长度、子域名字典,通过字典爆破、暴力枚举等去枚举主域名下属的子域名。然后通过域名解析服务器,验证域名是否存在。然后将存在的域名放入子域名的集合subdomainset中。预先通过网络爬虫,持续探测网络上的域名。并将探测到的域名和主域名做绑定。维护一个主域名对应的子域名的列表的数据库。然后就可以通过这个数据库中就可以快速查找本次探测的主域名所对应的子域名。通过域名解析服务器验证后,去重放入子域名的集合subdomainset中。
66.步骤s24:对所述子域名进行去重解析处理,以得到目标子域名,并对所述目标子域名进行ip探测,以获取目标子域名ip。
67.步骤s24中更加详细的处理过程请参照前述公开的实施例,在此不再进行赘述。
68.步骤s25:解析所述目标子域名ip,以获取相应的网络资产信息,对所述网络资产信息进行扫描以获取域名资产关联的漏洞。
69.本实施例中,利用masscan探测提供连接服务的端口,以获取正常开启的端口;利用nmap解析端口的服务,以获取提供web服务的端口。对目标子域名、所述正常开启的端口、所述提供web服务的端口进行扫描以获取域名资产关联的漏洞。当完成子域名的ip探测后,将ipset中的所有子域名放入iptaskpool线程池中继续按下述的流程执行:通过解析ip所有的端口0-65535,探测ip端口是否存在。通过masscan工具,能通过半连接快速探测能连接的端口。然后通过nmap工具,解析所有的端口的服务。对于提供web服务的端口,放入集合webset中。对于正常打开的端口,将其存入portset中。综上所述的探测流程后,获取到了该域名所有相关的网络资产,并且存在了ipset,webset,portset四个集合中。然后对于web资产我们通过专门漏洞脚本库,探测对应的web漏洞。对于ipset和portset,通过对应的主机漏洞扫描工具,扫描对应的主机漏洞、弱口令等。就能全方面得扫描到域名资产所有关联的漏洞。
70.参照图3所示,用户通过预设接口输入相关域名信息,然后利用程序读取并分析该域名的主域名,并基于配置信息再次探测查询相同主体备案并关联的其他主域名,然后将主域名和其他主域名放入集合domainset进行保存,然后将集合中所有的域名放入线程池
domaintaskpool中,进行子域名的探测,在子域名的探测中具体可以通过以下三种探测方式进行子域名探测,搜索引擎探测、字典枚举探测、网络爬虫探测等,然后对探测到的子域名进行去重处理,并通过域名解析器验证域名存在,将通过验证的子域名放入到子域名的集合subdomainset中,至此完成了子域名的获取和筛选。需要注意的是,预先可以通过网络爬虫的方式将探测到的子域名和主域名做一个绑定关系,并生成相应的域名-子域名关系映射表,并定时或实时维护该关系映射表所在的数据库,以便下次进行子域名查询时,可以利用数据库中的关系映射表快速查找本次探测的主域名所对应的子域名。当获取到筛选后的子域名后,对所有的筛选后的子域名进行ip探测,其中ip探测的过程可以通过一下三种方式完成,首先进行域名解析,例如:解析ip所有的端口0-65535,探测ip端口是否存在;其次,可以通过多次ping,探测cdn后域名真实ip;最后,可以通过dns历史解析记录网站查询ip。最终将探测的所有子域名的真实ip存入线程的集合实例ipset。然后对所有ip通过工具解析端口服务,例如若解析到提供web服务的端口,将其放入集合webset中,若解析到正常打开的端口,则将其放入集合portset中,然后对于web资产通过专门漏洞脚本库,探测对应的web漏洞。对于ipset和portset,通过对应的主机漏洞扫描工具,扫描对应的主机漏洞、弱口令等。我们就能全方面得扫描到域名资产所有关联的漏洞。
71.由此可见,本技术中使用三种不同探测子域名的方法,会出现重复子域名;不同的子域名会存在相同ip的情况。而申请将数据放入集合中,会做去重过滤,通过多线程技术并发扫描,扫描更加高效。通过线程池动态扩展,充分利用所在服务器的处理性能和网络带宽。并且通过集合去重操作,避免网络资产和漏洞重复探测。提高了扫描效率,子域名探测通过搜索引擎、字典枚举、网络爬虫;ip收集通过域名解析、多次ping、dns历史解析记录查询等技术,使网络资产信息收集的全面性。能够根据域名扩散,更加全面地探测到相关资产,进行漏洞扫描,并通过域名扫描收集得到子域名、web应用程序、主机、端口。然后再有针对性地对各个类型的网络资产扫描漏洞
72.参照图4所示,本发明实施例公开了一种域名资产漏洞扫描装置,包括:
73.第一域名确定模块11,用于扫描用户通过预设接口输入的目标域名,以获取对应的第一主域名;
74.第二域名确定模块12,用于读取用户配置信息,基于所述用户配置信息探测与所述第一主域名关联的第二主域名;
75.子域名确定模块13,用于查询所述第一主域名和所述第二主域名的子域名,并对所述子域名进行去重解析处理,以得到目标子域名;
76.ip获取模块14,用于对所述目标子域名进行ip探测,以获取目标子域名ip;
77.漏洞扫描模块15,用于解析所述目标子域名ip,以获取相应的网络资产信息,对所述网络资产信息进行扫描以获取域名资产关联的漏洞。
78.可见,本技术公开了一种域名资产漏洞扫描方法,包括:扫描用户通过预设接口输入的目标域名,以获取对应的第一主域名;读取用户配置信息,基于所述用户配置信息探测与所述第一主域名关联的第二主域名;查询所述第一主域名和所述第二主域名的子域名,并对所述子域名进行去重解析处理,以得到目标子域名;对所述目标子域名进行ip探测,以获取目标子域名ip;解析所述目标子域名ip,以获取相应的网络资产信息,对所述网络资产信息进行扫描以获取域名资产关联的漏洞。由此可见,本技术通过基于主域名扩散,探测到
子域名、web应用程序、主机、端口等相关网络资产信息,并自动化扫描对应网络资产漏洞,能够部署和运行在常规配置的linux系统,扫描到域名相关的所有的网络资产的漏洞,并通过配置化和并发的程序设计,充分利用网络资源和设备性能,以达到最大的探测速度。
79.进一步的,本技术实施例还公开了一种电子设备,图5是根据一示例性实施例示出的电子设备20结构图,图中的内容不能认为是对本技术的使用范围的任何限制。
80.图5为本技术实施例提供的一种电子设备20的结构示意图。该电子设备20,具体可以包括:至少一个处理器21、至少一个存储器22、电源23、通信接口24、输入输出接口25和通信总线26。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的域名资产漏洞扫描方法中的相关步骤。另外,本实施例中的电子设备20具体可以为电子计算机。
81.本实施例中,电源23用于为电子设备20上的各硬件设备提供工作电压;通信接口24能够为电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本技术技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
82.其中,处理器21可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器21可以采用dsp(digital signal processing,数字信号处理)、fpga(field-programmable gate array,现场可编程门阵列)、pla(programmable logic array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器21也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称cpu(central processing unit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器21可以在集成有gpu(graphics processing unit,图像处理器),gpu用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器21还可以包括ai(artificial intelligence,人工智能)处理器,该ai处理器用于处理有关机器学习的计算操作。
83.另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源可以包括操作系统221、计算机程序222等,存储方式可以是短暂存储或者永久存储。
84.其中,操作系统221用于管理与控制电子设备20上的各硬件设备以及计算机程序222,以实现处理器21对存储器22中海量数据223的运算与处理,其可以是windows server、netware、unix、linux等。计算机程序222除了包括能够用于完成前述任一实施例公开的由电子设备20执行的域名资产漏洞扫描方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。数据223除了可以包括电子设备接收到的由外部设备传输进来的数据,也可以包括由自身输入输出接口25采集到的数据等。
85.进一步的,本技术还公开了一种计算机可读存储介质,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的域名资产漏洞扫描方法。关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。
86.本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装
置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
87.专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。
88.最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
89.以上对本发明所提供的一种域名资产漏洞扫描方法、装置、设备、存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
技术特征:1.一种域名资产漏洞扫描方法,其特征在于,包括:扫描用户通过预设接口输入的目标域名,以获取对应的第一主域名;读取用户配置信息,基于所述用户配置信息探测与所述第一主域名关联的第二主域名;查询所述第一主域名和所述第二主域名的子域名,并对所述子域名进行去重解析处理,以得到目标子域名;对所述目标子域名进行ip探测,以获取目标子域名ip;解析所述目标子域名ip,以获取相应的网络资产信息,对所述网络资产信息进行扫描以获取域名资产关联的漏洞。2.根据权利要求1所述的域名资产漏洞扫描方法,其特征在于,所述读取用户配置信息之后,还包括:判断所述用户配置信息中是否包含有需要探测第二主域名的目标配置信息;若所述目标配置信息中不包含需要探测所述第二主域名信息,则查询所述第一主域名的子域名。3.根据权利要求1所述的域名资产漏洞扫描方法,其特征在于,所述查询所述第一主域名和所述第二主域名的子域名,包括:利用搜索引擎以及预设映射列表从预设线程池中查询所述第一主域名的子域名和所述第二主域名的子域名。4.根据权利要求3所述的域名资产漏洞扫描方法,其特征在于,所述利用搜索引擎以及预设映射列表从预设线程池中查询所述第一主域名的子域名和所述第二主域名的子域名之前,还包括:通过网络爬虫探测网络上的子域名,并构建所述子域名和对应的主域名的映射关系,以生成相应的预设映射列表。5.根据权利要求1所述的域名资产漏洞扫描方法,其特征在于,所述对所述子域名进行去重解析处理,以得到目标子域名,包括:对所述子域名进行ip去重处理,以得到不同ip的子域名;将所述不同ip的子域名通过域名解析服务器,进行解析验证,以得到目标子域名。6.根据权利要求1至5任一项所述的域名资产漏洞扫描方法,其特征在于,所述解析所述目标子域名ip,以获取相应的网络资产信息,包括:利用masscan探测提供连接服务的端口,以获取正常开启的端口;利用nmap解析端口的服务,以获取提供web服务的端口。7.根据权利要求6所述的域名资产漏洞扫描方法,其特征在于,所述对所述网络资产信息进行扫描以获取域名资产关联的漏洞,包括:对目标子域名、所述正常开启的端口、所述提供web服务的端口进行扫描以获取域名资产关联的漏洞。8.一种域名资产漏洞扫描装置,其特征在于,包括:第一域名确定模块,用于扫描用户通过预设接口输入的目标域名,以获取对应的第一主域名;第二域名确定模块,用于读取用户配置信息,基于所述用户配置信息探测与所述第一
主域名关联的第二主域名;子域名确定模块,用于查询所述第一主域名和所述第二主域名的子域名,并对所述子域名进行去重解析处理,以得到目标子域名;ip获取模块,用于对所述目标子域名进行ip探测,以获取目标子域名ip;漏洞扫描模块,用于解析所述目标子域名ip,以获取相应的网络资产信息,对所述网络资产信息进行扫描以获取域名资产关联的漏洞。9.一种电子设备,其特征在于,包括:存储器,用于保存计算机程序;处理器,用于执行所述计算机程序,以实现如权利要求1至7任一项所述的域名资产漏洞扫描方法的步骤。10.一种计算机可读存储介质,其特征在于,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的域名资产漏洞扫描方法的步骤。
技术总结本申请公开了一种域名资产漏洞扫描方法、装置、设备、存储介质,涉及计算机技术领域,包括:扫描用户通过预设接口输入的目标域名,以获取对应的第一主域名;读取用户配置信息,基于用户配置信息探测与第一主域名关联的第二主域名;查询第一主域名和第二主域名的子域名,并对子域名进行去重解析处理,以得到目标子域名;对目标子域名进行IP探测,以获取目标子域名IP;解析目标子域名IP,以获取相应的网络资产信息,对网络资产信息进行扫描以获取域名资产关联的漏洞。本申请基于主域名扩散,探测到子域名、Web应用程序、主机、端口等相关网络资产信息,并自动化扫描对应网络资产漏洞,并通过配置化和并发的程序设计,提高漏洞探测效率。效率。效率。
技术研发人员:卢杰 黄进
受保护的技术使用者:杭州安恒信息技术股份有限公司
技术研发日:2022.07.13
技术公布日:2022/11/1