CN114584486B - 一种基于分布式的网络资产扫描探测平台及扫描探测方法 - Google Patents

一种基于分布式的网络资产扫描探测平台及扫描探测方法 Download PDF

Info

Publication number
CN114584486B
CN114584486B CN202210165952.3A CN202210165952A CN114584486B CN 114584486 B CN114584486 B CN 114584486B CN 202210165952 A CN202210165952 A CN 202210165952A CN 114584486 B CN114584486 B CN 114584486B
Authority
CN
China
Prior art keywords
scanning
task
module
sub
information
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
Application number
CN202210165952.3A
Other languages
English (en)
Other versions
CN114584486A (zh
Inventor
朱东杰
刘以海
侯国慧
王书东
徐庆杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Binzhou Coc Carpet Co ltd
Original Assignee
Binzhou Coc Carpet Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Binzhou Coc Carpet Co ltd filed Critical Binzhou Coc Carpet Co ltd
Priority to CN202210165952.3A priority Critical patent/CN114584486B/zh
Publication of CN114584486A publication Critical patent/CN114584486A/zh
Application granted granted Critical
Publication of CN114584486B publication Critical patent/CN114584486B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/28Restricting access to network management systems or functions, e.g. using authorisation function to access network configuration
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种基于分布式的网络资产扫描探测平台及扫描探测方法,平台包括:基于Kafka分布式消息发布与订阅系统构建的分布式网络资产扫描探测子系统;基于ElasticSearch分布式海量数据存储与检索系统构建的分布式海量数据弹性存取子系统;利用Python编程语言,基于Flask框架、elasticsearch6框架、kafka‑python框架和pymysql框架编写的Web Server服务端,Web Server服务端与分布式网络资产扫描探测子系统相连接,分布式网络资产扫描探测子系统与分布式海量数据弹性存取子系统相连接;MySQL数据库,Web Server服务端利用pymysql框架与MySQL数据库相连接;利用Vue框架构建的Web网页,Web网页与Web Server服务端相连接。通过本发明的技术方案,实现对网络资产扫描与探测,而且并行化程度高、处理大规模扫描探测任务效率高。

Description

一种基于分布式的网络资产扫描探测平台及扫描探测方法
技术领域
本发明涉及网络资产探测技术领域,具体而言,涉及一种基于分布式的网络资产扫描探测平台和一种基于分布式的网络资产扫描探测方法。
背景技术
网络资产探测是指梳理、统计网络资产情况的过程,一般包括活动主机发现、操作系统识别、应用及其版本识别等,是实现网络安全管理的重要前提,在网络安全相关工作中具有广泛的应用价值。其中,网络资产在广义上主要包括网络资产(包括IP 地址、通信协议、通信端口和域名等)、硬件资产(包括设备类型、设备品牌和设备型号等要素)和软件资产(包括数据库、中间件和操作系统等组成部分)三大部分。一个与网络资产相关联的现实世界中的实体(下文简称实体),例如企业、政府机构、科研院所、高校等,占有或者使用的网络资产是多种多样的。除了服务器、路由器等常规网络资产外,带有人脸识别功能的门禁等物联网硬件设备也在实体的网络资产列表中越来越普遍,这些实体的网络资产一般都是通过无线或者有线的方式接入互联网,为实体提供包括RESTful API在内的多种网络服务接口。网络资产类型多样、网络资产硬件设备接入方式多样、网络资产服务提供方式/服务协议多样、网络资产在逻辑上/ 物理上分布分散等问题给网络资产安全管理带来了多重考验。
当实体部署在某一接入互联网的设备上的应用或产品存在某种安全隐患而网络资产管理者没有及时发现时,一些不法分子可能会使用技术手段侵入实体的网络资产的控制系统,对实体存储在网络资产中的数据或运行在网络资产上的系统造成严重威胁,同时可能会给实体带来不可估量的经济损失。
发明内容
本发明旨在至少解决现有技术或相关技术中存在的技术问题之一。
为此,本发明的目的在于提供一种基于分布式的网络资产扫描探测平台及扫描探测方法,实现对网络资产扫描与探测,而且并行化程度高、处理大规模扫描探测任务效率高,不但能够为梳理实体的软硬件版本、决策实体软件和设备的更新升级等工作提供事实依据,而且,可以发现实体中使用的旧版本或高风险版本的软件产品或应用服务时,借助最新漏洞情报检索功能,准确地采取应对措施,及时降低网络资产中隐含的风险。
为了实现上述目的,本发明的第一方面的技术方案提供了一种基于分布式的网络资产扫描探测平台,包括:基于Kafka分布式消息发布与订阅系统构建的分布式网络资产扫描探测子系统,用于并行化高效执行大批量的网络资产扫描与探测任务;基于ElasticSearch分布式海量数据存储与检索系统构建的分布式海量数据弹性存取子系统,用于对海量的网络资产扫描探测结果进行存储和检索;利用Python编程语言,基于 Flask框架、elasticsearch6框架、kafka-python框架和pymysql框架编写的Web Server 服务端,所述Web Server服务端利用kafka-python框架与所述分布式网络资产扫描探测子系统相连接,所述分布式网络资产扫描探测子系统与所述分布式海量数据弹性存取子系统以所述Web Server服务端中提供的elasticsearch6框架服务为桥梁相连接,以将分布式网络资产扫描探测子系统的扫描探测结果存储并根据用户需求进行高效检索;MySQL数据库,所述Web Server服务端利用pymysql框架与所述MySQL数据库相连接,用于记录用户发起的网络资产扫描与探测任务;利用Vue框架构建的Web网页,所述Web网页与所述Web Server服务端相连接,以向用户提供基于分布式的网络资产扫描探测平台服务。
在该技术方案中,将分布式系统架构应用到网络资产扫描探测平台中,基于Kafka分布式消息发布与订阅系统构建了分布式网络资产扫描探测子系统,能够实现大批量扫描探测任务的负载均衡执行,并行化程度高、处理大规模扫描探测任务效率高。基于ElasticSearch分布式海量数据存储与检索系统构建了分布式海量数据弹性存取子系统能够实现海量扫描结果的可靠存储与检索,更好的满足大批量扫描任务的需求。针对大批量扫描探测任务,本发明提出的基于分布式的网络资产扫描探测平台可以较为迅速地给出准确有效的扫描探测结果,具有高效的并行化能力,在网络资产扫描与探测任务执行效率上相较于传统的单点扫描探测工具有较大提升,能够帮助用户网络资产进行快速梳理,及时发现旧版软件、易受攻击的漏洞等问题,有效降低其网络资产风险。利用Python编程语言,基于Flask框架、elasticsearch6框架、kafka-python框架和pymysql框架编写的WebServer服务端,将分布式网络资产扫描探测子系统与分布式海量数据弹性存取子系统相连接,可以将分布式网络资产扫描探测子系统的扫描探测结果存储到分布式海量数据弹性存取子系统中,并根据用户需求进行高效检索。 MySQL数据库可以记录用户发起的网络资产扫描与探测任务,进一步提高扫描探测效率。利用Vue框架构建的Web网页则可以向用户提供基于分布式的网络资产扫描探测平台服务。
在上述技术方案中,优选地,所述分布式网络资产扫描探测子系统包括面向IP扫描探测任务的分布式网络资产扫描探测模块、面向域名扫描探测任务的分布式网络资产扫描探测模块。
在该技术方案中,通过设计面向IP扫描探测任务的分布式网络资产扫描探测模块以及面向域名扫描探测任务的分布式网络资产扫描探测模块,能够实现给定的IP或域名的大批量扫描探测任务的并行化高效执行,进一步提高了扫描探测结果的得出速度,而且更加准确有效。
在上述任一项技术方案中,优选地,所述面向IP扫描探测任务的分布式网络资产扫描探测模块包括:Masscan扫描子模块、Nmap扫描子模块、Zgrab2扫描子模块、网页截图获取子模块、网页源码获取子模块、Whois扫描子模块,其中,Nmap扫描子模块、Zgrab2扫描子模块、网页截图获取子模块、网页源码获取子模块、以及Whois扫描子模块并行设置,且分别与所述Masscan扫描子模块相连接,所述Masscan扫描子模块,用于在接收到task_ip_gn主题类型的任务信息后,串行执行Masscan扫描获取给定IP段中的活动IP信息和活动端口信息,并转为Kafka Producer,向下层发布sub Task_ip_gn主题类型的任务信息;所述Nmap扫描子模块,用于根据所述Masscan扫描子模块扫描得到的活动IP信息和活动端口信息进行端口信息探测和操作系统推断;所述Zgrab2扫描子模块,用于根据所述Masscan扫描子模块扫描得到的活动IP信息进行证书和加密算法的获取;网页截图获取子模块,用于网页截图的获取,采用遍历尝试的策略,对Masscan扫描子模块扫描得到的每个活动IP的每个活动端口尝试进行网页截图获取;网页源码获取子模块,用于网页源码的获取,采用遍历尝试的策略,对 Masscan扫描子模块扫描得到的每个活动IP的每个活动端口尝试进行网页源码获取; Whois扫描子模块,用于域名whois信息的扫描。
在该技术方案中,面向IP扫描探测任务的分布式网络资产扫描探测首先串行执行Masscan扫描探测任务,获取到给定IP段中的活动IP信息和活动端口信息,便于后续依据活动IP信息和活动端口信息并行执行Nmap扫描、Zgrab2扫描、网页截图获取、网页源码获取和Whois扫描五项扫描探测任务。Nmap扫描、Zgrab2扫描、网页截图获取、网页源码获取和Whois扫描五项扫描探测任务并行执行,不但高效可靠,而且,能够实现端口信息探测和操作系统推断、证书和加密算法的获取、网页截图的获取、网页源码的获取、域名whois信息的扫描等多方面的扫描探测,使得扫描探测结果更加全面可靠、准确有效,而且,执行效率更高,进一步有助于帮助用户网络资产进行快速梳理,及时发现旧版软件、易受攻击的漏洞等问题,有效降低其网络资产风险。
在上述任一项技术方案中,优选地,所述面向域名扫描探测任务的分布式网络资产扫描探测模块包括:并行设置的Nslookup扫描子模块、Whois扫描子模块、Whatweb 扫描子模块以及WAF扫描子模块;与所述Nslookup扫描子模块相连接的Masscan扫描子模块;并行设置的Nmap扫描子模块、Zgrab2扫描子模块、网页截图获取子模块以及网页源码获取子模块,所述Nmap扫描子模块、Zgrab2扫描子模块、网页截图获取子模块以及网页源码获取子模块分别与所述Masscan扫描子模块相连接,所述 Nslookup扫描子模块,用于在接收到task_domain_gn主题类型的任务信息后,获取与目标域名相关的IP信息,并转为KafkaProducer,向下层Masscan扫描子模块发布 task_ip_gn主题类型的任务信息;所述Whois扫描子模块,用于在接收到task_domain_gn 主题类型的任务信息后获取目标域名的Whois信息;所述Whatweb扫描子模块,用于在接收到task_domain_gn主题类型的任务信息后扫描查询获取目标域名网站所使用的服务及其版本;所述WAF扫描子模块,用于在接收到task_domain_gn主题类型的任务信息后获取目标域名网站的防火墙信息;所述Masscan扫描子模块,用于在接收到 task_ip_gn主题类型的任务信息后,串行执行Masscan扫描获取给定IP段中的活动IP 信息和活动端口信息,并转为Kafka Producer,向下层发布subTask_ip_gn主题类型的任务信息;所述Nmap扫描子模块,用于根据所述Masscan扫描子模块扫描得到的活动IP信息和活动端口信息进行端口信息探测和操作系统推断;所述Zgrab2扫描子模块,用于根据所述Masscan扫描子模块扫描得到的活动IP信息进行证书和加密算法的获取;网页截图获取子模块,用于网页截图的获取,采用遍历尝试的策略,对Masscan 扫描子模块扫描得到的每个活动IP的每个活动端口尝试进行网页截图获取;网页源码获取子模块,用于网页源码的获取,采用遍历尝试的策略,对Masscan扫描子模块扫描得到的每个活动IP的每个活动端口尝试进行网页源码获取。
在该技术方案中,面向域名扫描探测任务的分布式网络资产扫描探测并行执行Nslookup扫描、Whois扫描、Whatweb扫描和WAF扫描四项扫描探测任务,不但高效可靠,而且,能够实现与目标域名相关的IP信息获取、目标域名的Whois信息获取、目标域名网站所使用的服务及其版本扫描查询获取、目标域名网站的防火墙信息扫描获取,等多方面的扫描探测,使得扫描探测结果更加全面可靠、准确有效,而且,执行效率更高,实现对给定域名的大批量扫描探测任务的并行化高效执行。而且, Nslookup扫描子模块中在消费者实例扫描完成后转为Kafka Producer,向下层Masscan 扫描子模块发布task_ip_gn主题类型的任务信息,继续以给定IP段为依据,进行并行执行Nmap扫描、Zgrab2扫描、网页截图获取、网页源码获取四项扫描探测任务。Nmap 扫描、Zgrab2扫描、网页截图获取、网页源码获取四项扫描探测任务并行执行,不但高效可靠,而且,能够实现端口信息探测和操作系统推断、证书和加密算法的获取、网页截图的获取、网页源码的获取等多方面的扫描探测,使得扫描探测结果更加全面可靠、准确有效,而且,执行效率更高,进一步有助于帮助用户网络资产进行快速梳理,及时发现旧版软件、易受攻击的漏洞等问题,有效降低其网络资产风险。
在上述任一项技术方案中,优选地,所述分布式海量数据弹性存取子系统包括多个预设节点,所述多个预设节点都具有客户端节点功能,预设Node 01节点和Node 02 节点具有主节点和数据节点功能,预设Node 03节点和Node 04节点具有数据节点功能,其中,客户端节点,用于充当负载均衡器的角色,包括但不限于处理路由请求、处理搜索、分发索引操作;主节点,用于处理集群操作相关的内容,包括但不限于创建或删除索引、跟踪收集集群中各个节点的状态、分片的分配;数据节点,用于存储,包括但不限于存储集群中的所有文档数据。
在该技术方案中,预设四个节点及其功能配置,利用这些预设的配置,在四个节点(Node 01-Node 04)上构建基于ElasticSearch分布式海量数据存储与检索子系统,从而实现了对海量的网络资产扫描探测结果的存储和检索,一方面实现了海量的网络资产扫描探测结果的分布式存储,存储效率高,另一方面,可以根据用户需求进行高效检索。
本发明的第二方面的技术方案提出了一种基于分布式的网络资产扫描探测方法,包括:接收用户发送的网络资产扫描与探测任务;确定接收到的任务信息的主题类型;若确定接收到的任务信息主题类型为task_ip_gn时,则执行面向IP扫描探测任务的分布式网络资产扫描探测;若确定接收到的任务信息主题类型为task_domain_gn时,则执行面向域名扫描探测任务的分布式网络资产扫描探测;将对网络资产扫描探测结果存储到分布式海量数据弹性存取子系统中。
在该技术方案中,在接收到用户发送的网络资产扫描与探测任务时,确定接收到的任务信息的主题类型,并根据主题类型执行相应的分布式网络资产扫描探测,能够实现大批量扫描探测任务的负载均衡执行,并行化程度高、处理大规模扫描探测任务效率高。将对网络资产扫描探测结果存储到分布式海量数据弹性存取子系统中,不但存储效率高,存储可靠,而且便于高效检索,能够更好的满足大批量扫描任务的需求。本发明提出的基于分布式的网络资产扫描探测方法,可以较为迅速地给出准确有效的扫描探测结果,具有高效的并行化能力,在网络资产扫描与探测任务执行效率上相较于传统的单点扫描探测工具有较大提升,能够帮助用户网络资产进行快速梳理,及时发现旧版软件、易受攻击的漏洞等问题,有效降低其网络资产风险。
在上述技术方案中,优选地,所述执行面向IP扫描探测任务的分布式网络资产扫描探测具体包括以下步骤:串行执行Masscan扫描获取给定IP段中的活动IP信息和活动端口信息;当Masscan Consumer/Producer Group中的消费者实例完成Masscan扫描后将转为Kafka Producer,向下层任务发布sub Task_ip_gn主题类型的任务信息,其中,n为消费者群组Task Group的群组ID;在接收到Masscan Consumer/Producer Group发布的sub Task_ip_gn主题类型的任务消息后,并行执行Nmap扫描、Zgrab2扫描、网页截图获取、网页源码获取和Whois扫描,其中,Nmap扫描具体为根据Masscan 扫描获取到的活动IP信息和活动端口信息进行端口信息探测和操作系统推断;Zgrab2 扫描具体为根据Masscan扫描获取到的活动IP信息进行证书和加密算法的获取;网页截图获取具体为采用遍历尝试的策略对Masscan扫描获取到的每个活动IP的每个活动端口尝试进行网页截图获取;网页源码获取具体为采用遍历尝试的策略对Masscan扫描获取到的每个活动IP的每个活动端口尝试进行网页源码获取;Whois扫描具体为扫描域名whois信息。
在该技术方案中,面向IP扫描探测任务的分布式网络资产扫描探测首先串行执行Masscan扫描探测任务,获取到给定IP段中的活动IP信息和活动端口信息,便于后续依据活动IP信息和活动端口信息并行执行Nmap扫描、Zgrab2扫描、网页截图获取、网页源码获取和Whois扫描五项扫描探测任务。Nmap扫描、Zgrab2扫描、网页截图获取、网页源码获取和Whois扫描五项扫描探测任务并行执行,不但高效可靠,而且,能够实现端口信息探测和操作系统推断、证书和加密算法的获取、网页截图的获取、网页源码的获取、域名whois信息的扫描等多方面的扫描探测,使得扫描探测结果更加全面可靠、准确有效,而且,执行效率更高,进一步有助于帮助用户网络资产进行快速梳理,及时发现旧版软件、易受攻击的漏洞等问题,有效降低其网络资产风险。
在上述任一项技术方案中,优选地,所述执行域名扫描探测任务的分布式网络资产扫描探测具体包括以下步骤:并行执行Nslookup扫描、Whois扫描、Whatweb扫描和WAF扫描,其中,Nslookup扫描具体为:在接收到task_domain_gn主题类型的任务信息后,获取与目标域名相关的IP信息;当Nslookup Consumer/Producer Group中的消费者实例扫描完成后将转为Kafka Producer,向下层的Masscan Group发布 task_ip_gn主题类型的任务信息,其中,n为消费者群组Task Group的群组ID,Whois 扫描具体为:获取目标域名的Whois信息,Whatweb扫描具体为:扫描查询获取目标域名网站所使用的服务及其版本,WAF扫描具体为:获取目标域名网站的防火墙信息,在接收到task_ip_gn主题类型的任务信息后,串行执行Masscan扫描获取给定IP段中的活动IP信息和活动端口信息;当Masscan Consumer/Producer Group中的消费者实例完成Masscan扫描后将转为Kafka Producer,向下层任务发布sub Task_ip_gn主题类型的任务信息,其中,n为消费者群组Task Group的群组ID;在接收到Masscan Consumer/Producer Group发布的sub Task_ip_gn主题类型的任务消息后,并行执行 Nmap扫描、Zgrab2扫描、网页截图获取、网页源码获取,其中,Nmap扫描具体为根据Masscan扫描获取到的活动IP信息和活动端口信息进行端口信息探测和操作系统推断,Zgrab2扫描具体为根据Masscan扫描获取到的活动IP信息进行证书和加密算法的获取,网页截图获取具体为采用遍历尝试的策略对Masscan扫描获取到的每个活动IP 的每个活动端口尝试进行网页截图获取,网页源码获取具体为采用遍历尝试的策略对 Masscan扫描获取到的每个活动IP的每个活动端口尝试进行网页源码获取。
在该技术方案中,面向域名扫描探测任务的分布式网络资产扫描探测并行执行Nslookup扫描、Whois扫描、Whatweb扫描和WAF扫描四项扫描探测任务,不但高效可靠,而且,能够实现与目标域名相关的IP信息获取、目标域名的Whois信息获取、目标域名网站所使用的服务及其版本扫描查询获取、目标域名网站的防火墙信息扫描获取,等多方面的扫描探测,使得扫描探测结果更加全面可靠、准确有效,而且,执行效率更高,实现对给定域名的大批量扫描探测任务的并行化高效执行。而且, Nslookup扫描子模块中在消费者实例扫描完成后转为Kafka Producer,向下层Masscan 扫描子模块发布task_ip_gn主题类型的任务信息,继续以给定IP段为依据,进行并行执行Nmap扫描、Zgrab2扫描、网页截图获取、网页源码获取四项扫描探测任务。Nmap 扫描、Zgrab2扫描、网页截图获取、网页源码获取四项扫描探测任务并行执行,不但高效可靠,而且,能够实现端口信息探测和操作系统推断、证书和加密算法的获取、网页截图的获取、网页源码的获取等多方面的扫描探测,使得扫描探测结果更加全面可靠、准确有效,而且,执行效率更高,进一步有助于帮助用户网络资产进行快速梳理,及时发现旧版软件、易受攻击的漏洞等问题,有效降低其网络资产风险。
在上述任一项技术方案中,优选地,基于分布式的网络资产扫描探测方法,还包括:根据接收到的网络资产扫描与探测任务在分布式海量数据弹性存取子系统中检索网络资产扫描探测结果;将接收到的用户发送的网络资产扫描与探测任务记录到 MySQL数据库中。
在该技术方案中,实现了根据用户需求在分布式海量数据弹性存取子系统中检索网络资产扫描探测结果,检索效率高,便于用户调用查看扫描探测结果,进一步有利于规避网络资产风险。通过将接收到的用户发送的网络资产扫描与探测任务记录到 MySQL数据库中,便于后期调用查看,也有利于实现在接收到相同网络资产扫描与探测任务时,直接调用网络资产扫描探测结果,进一步提高了扫描探测任务执行效率。
在上述任一项技术方案中,优选地,基于分布式的网络资产扫描探测方法,还包括:预设分布式海量数据弹性存取子系统的配置,预设Node 01节点和Node 02节点具有作为主节点和数据节点的功能,预设Node 03节点和Node 04节点仅具有作为数据节点的功能,预设Node 01节点、Node 02节点、Node 03节点、Node 04节点都具有作为客户端节点的功能。
在该技术方案中,预设分布式海量数据弹性存取子系统的配置,客户端节点,用于充当负载均衡器的角色,包括但不限于处理路由请求、处理搜索、分发索引操作;主节点,用于处理集群操作相关的内容,包括但不限于创建或删除索引、跟踪收集集群中各个节点的状态、分片的分配;数据节点,用于存储,包括但不限于存储集群中的所有文档数据。利用预设的配置,在四个节点(Node 01-Node 04)上构建分布式海量数据存储与检索子系统,从而实现对海量的网络资产扫描探测结果的存储和检索。
本发明的第三方面的技术方案提出了一种计算机设备,计算机设备包括处理器,处理器用于执行存储器中存储的计算机程序时实现如上述本发明的第二方面的技术方案提出的任一项的基于分布式的网络资产扫描探测方法的步骤。
在该技术方案中,计算机设备包括处理器,处理器用于执行存储器中存储的计算机程序时实现如上述本发明的第二方面的技术方案提出的任一项的基于分布式的网络资产扫描探测方法的步骤,因此具有上述本发明的第二方面的技术方案提出的任一项的基于分布式的网络资产扫描探测方法的全部有益效果,在此不再赘述。
本发明的第四方面的技术方案提出了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现本发明的第二方面的技术方案提出的任一项的基于分布式的网络资产扫描探测方法的步骤。
在该技术方案中,计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现本发明的第二方面的技术方案提出的任一项的基于分布式的网络资产扫描探测方法的步骤,因此具有上述本发明的第二方面的技术方案提出的任一项的基于分布式的网络资产扫描探测方法的全部有益效果,在此不再赘述。
本发明提出的一种基于分布式的网络资产扫描探测平台及扫描探测方法具有以下有益技术效果:
(1)本发明提出的一种基于分布式的网络资产扫描探测平台及扫描探测方法,实现了对网络资产扫描与探测,而且并行化程度高、处理大规模扫描探测任务效率高,不但能够为梳理实体的软硬件版本、决策实体软件和设备的更新升级等工作提供事实依据,而且,可以发现实体中使用的旧版本或高风险版本的软件产品或应用服务时,借助最新漏洞情报检索功能,准确地采取应对措施,及时降低网络资产中隐含的风险。
(2)本发明将分布式系统架构应用到网络资产扫描探测平台中,基于Kafka分布式消息发布与订阅系统构建了分布式网络资产扫描探测子系统,能够实现大批量扫描探测任务的负载均衡执行,并行化程度高、处理大规模扫描探测任务效率高。
(3)基于ElasticSearch分布式海量数据存储与检索系统构建了分布式海量数据弹性存取子系统能够实现海量扫描结果的可靠存储与检索,更好的满足大批量扫描任务的需求。
(4)针对大批量扫描探测任务,本发明提出的基于分布式的网络资产扫描探测平台可以较为迅速地给出准确有效的扫描探测结果,具有高效的并行化能力,在网络资产扫描与探测任务执行效率上相较于传统的单点扫描探测工具有较大提升,能够帮助用户网络资产进行快速梳理,及时发现旧版软件、易受攻击的漏洞等问题,有效降低其网络资产风险。
本发明的附加方面和优点将在下面的描述部分中给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1示出了根据本发明的实施例的一种基于分布式的网络资产扫描探测平台的架构图;
图2示出了根据本发明的实施例的一种基于分布式的网络资产扫描探测平台中面向IP扫描探测任务的分布式网络资产扫描探测模块的架构图;
图3示出了根据本发明的实施例的一种基于分布式的网络资产扫描探测平台中面向域名扫描探测任务的分布式网络资产扫描探测模块的架构图;
图4示出了根据本发明的实施例的基于分布式的网络资产扫描探测方法的流程示意图;
图5示出了根据本发明的另一实施例的基于分布式的网络资产扫描探测方法的流程示意图,
其中,图1至图3中附图标记与部件之间的对应关系为:
102分布式网络资产扫描探测子系统,104分布式海量数据弹性存取子系统,106Web Server服务端,108MySQL数据库,110Web网页;
20面向IP扫描探测任务的分布式网络资产扫描探测模块,202Masscan扫描子模块,204Nmap扫描子模块,206Zgrab2扫描子模块,208网页截图获取子模块,210 网页源码获取子模块,212Whois扫描子模块;
30面向域名扫描探测任务的分布式网络资产扫描探测模块,302Nslookup扫描子模块,304Whois扫描子模块,306Whatweb扫描子模块,308WAF扫描子模块,310 Masscan扫描子模块,312Nmap扫描子模块,314Zgrab2扫描子模块,316网页截图获取子模块,318网页源码获取子模块。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
下面结合图1至图3对根据本发明的实施例的一种基于分布式的网络资产扫描探测平台进行具体说明。
如图1所示,根据本发明的实施例的一种基于分布式的网络资产扫描探测平台,包括:分布式网络资产扫描探测子系统102、分布式海量数据弹性存取子系统104、 WebServer服务端106、MySQL数据库108、Web网页110。基于分布式的网络资产扫描探测平台的具体架构过程如下:
基于Kafka分布式消息发布与订阅系统,构建分布式网络资产扫描探测子系统102,用于并行化高效执行大批量的网络资产扫描与探测任务。
基于ElasticSearch分布式海量数据存储与检索系统,构建分布式海量数据弹性存取子系统104,用于对海量的网络资产扫描探测结果进行存储和检索。
利用Python编程语言,基于Flask框架、elasticsearch6框架、kafka-python框架和 pymysql框架编写Web Server作为服务端106。
将编写完成的Web Server服务端106利用kafka-python框架与分布式网络资产扫描探测子系统102相连接。
以编写完成的Web Server服务端106中提供的elasticsearch6框架服务为桥梁,将分布式网络资产扫描探测子系统102与分布式海量数据弹性存取子系统104相连接。
将编写完成的Web Server服务端106利用pymysql框架与MySQL数据库108相连接,用于记录用户发起的IP或域名扫描探测任务。
利用Vue框架构建Web网页110与构建完成的Web Server服务端106相连接,向用户提供基于分布式的网络资产扫描与探测平台服务。
将分布式系统架构应用到网络资产扫描探测平台中,基于Kafka分布式消息发布与订阅系统构建了分布式网络资产扫描探测子系统,能够实现大批量扫描探测任务的负载均衡执行,并行化程度高、处理大规模扫描探测任务效率高。基于ElasticSearch 分布式海量数据存储与检索系统构建了分布式海量数据弹性存取子系统能够实现海量扫描结果的可靠存储与检索,更好的满足大批量扫描任务的需求。针对大批量扫描探测任务,本发明提出的基于分布式的网络资产扫描探测平台可以较为迅速地给出准确有效的扫描探测结果,具有高效的并行化能力,在网络资产扫描与探测任务执行效率上相较于传统的单点扫描探测工具有较大提升,能够帮助用户网络资产进行快速梳理,及时发现旧版软件、易受攻击的漏洞等问题,有效降低其网络资产风险。
进一步地,分布式网络资产扫描探测子系统102包括面向IP扫描探测任务的分布式网络资产扫描探测模块20、面向域名扫描探测任务的分布式网络资产扫描探测模块 30。
通过设计面向IP扫描探测任务的分布式网络资产扫描探测模块以及面向域名扫描探测任务的分布式网络资产扫描探测模块,能够实现给定的IP或域名的大批量扫描探测任务的并行化高效执行,进一步提高了扫描探测结果的得出速度,而且更加准确有效。
进一步地,如图2所示,面向IP扫描探测任务的分布式网络资产扫描探测模块20包括:Masscan扫描子模块202、Nmap扫描子模块204、Zgrab2扫描子模块206、网页截图获取子模块208、网页源码获取子模块210、Whois扫描子模块212,Nmap扫描子模块204、Zgrab2扫描子模块206、网页截图获取子模块208、网页源码获取子模块210、以及Whois扫描子模块212并行设置,且分别与所述Masscan扫描子模块202相连接。
具体地,IP扫描探测任务的分布式网络资产扫描探测模块的消费者群组TaskGroup中的Masscan Consumer/Producer Group,也即Masscan扫描子模块,在接收到 task_ip_gn(其中,n为消费者群组Task Group的群组ID)主题类型的任务信息后,首先进行Masscan扫描,获取到给定IP(段)中的活动IP信息和活动端口信息。当Masscan Consumer/Producer Group中的消费者实例完成Masscan扫描后将转为Kafka Producer,向下层任务发布subTask_ip_gn(其中,n为消费者群组Task Group的群组ID)主题类型的任务消息。
面向IP扫描探测任务的分布式网络资产扫描探测模块的消费者群组Task Group中下层的Nmap Consumer Group、Zgrab2 Consumer Group、Screenshot Consumer Group、Code Consumer Group和Whois Consumer Group,也即Nmap扫描子模块、Zgrab2扫描子模块、网页截图获取子模块、网页源码获取子模块、以及Whois扫描子模块,在接收到MasscanConsumer/Producer Group发布的subTask_ip_gn主题类型的任务消息后,并行执行Nmap扫描、Zgrab2扫描、网页截图获取、网页源码获取和Whois扫描五项扫描探测任务。
其中,Nmap Consumer Group负责Nmap扫描任务,利用Masscan扫描得到的活动IP信息和活动端口信息进行详细的端口信息探测和操作系统推断;Zgrab2 Consumer Group利用Masscan扫描得到的活动IP信息进行证书和加密算法的获取;Screenshot ConsumerGroup负责网站截图的获取,对Masscan扫描得到的活动IP和活动端口采用遍历尝试的策略,对每个活动IP的每个活动端口尝试进行截图获取;Code Consumer Group负责网站源码的获取,Code Consumer Group中的消费者实例在进行网页源码获取时同样采用遍历尝试的策略,对每个活动IP的每个活动端口尝试进行网页源码获取;Whois Consumer Group负责Whois扫描任务。
进一步地,如图3所示,面向域名扫描探测任务的分布式网络资产扫描探测模块30包括:并行设置的Nslookup扫描子模块302、Whois扫描子模块304、Whatweb扫描子模块306以及WAF扫描子模块308;与Nslookup扫描子模块302相连接的Masscan 扫描子模块310;并行设置的Nmap扫描子模块312、Zgrab2扫描子模块314、网页截图获取子模块316以及网页源码获取子模块318,Nmap扫描子模块312、Zgrab2扫描子模块314、网页截图获取子模块316以及网页源码获取子模块318分别与Masscan 扫描子模块310相连接。
具体地,面向域名扫描探测任务的分布式网络资产扫描探测模块的消费者群组Task Group中的Nslookup Consumer/Producer Group、Whois Consumer Group、WhatwebConsumer Group、WAF Consumer Group,也即Nslookup扫描子模块、Whois扫描子模块、Whatweb扫描子模块以及WAF扫描子模块,在接收到task_domain_gn(其中,n 为消费者群组Task Group的群组ID)主题类型的任务信息后,并行执行Nslookup扫描、Whois扫描、Whatweb扫描和WAF扫描四项扫描探测任务。其中,通过Nslookup 扫描可以获取到与目标域名相关的IP信息,从而可以进行接下来的五项扫描探测任务; Whatweb扫描查询可以获取到目标域名网站所使用的服务及其版本;WAF扫描可以获取到目标域名网站的防火墙信息;Whois扫描可以获取到给定域名的Whois信息。 Nslookup扫描探测任务完成后,NslookupConsumer/Producer Group中的消费者实例将转为Kafka Producer,向下层的MasscanConsumer/Producer Group,也即Masscan扫描子模块,发布task_ip_gn(其中,n为消费者群组Task Group的群组ID)主题任务信息。
当Masscan Consumer/Producer Group中的消费者实例在接收到task_ip_gn(其中, n为消费者群组Task Group的群组ID)主题类型的任务信息后,串行执行Masscan扫描,获取到给定IP(段)中的活动IP信息和活动端口信息。当Masscan Consumer/ProducerGroup中的消费者实例完成Masscan扫描后将转为Kafka Producer,向下层任务发布subTask_ip_gn(其中,n为消费者群组Task Group的群组ID)主题类型的任务消息。
面向域名扫描探测任务的分布式网络资产扫描探测模块的消费者群组TaskGroup 中的下层的Nmap Consumer Group、Zgrab2 Consumer Group、Screenshot ConsumerGroup和Code Consumer Group,也即Nmap扫描子模块、Zgrab2扫描子模块、网页截图获取子模块以及网页源码获取子模块,在接收到Masscan Consumer/Producer Group发布的subTask_ip_gn主题类型的任务消息后,并行执行Nmap扫描、Zgrab2扫描、网页截图获取和网页源码获取四项扫描探测任务。
其中,Nmap Consumer Group负责Nmap扫描任务,利用Masscan扫描得到的活动 IP和活动端口信息进行详细的端口信息探测和操作系统推断;Zgrab2 Consumer Group 利用Masscan扫描得到的活动IP信息进行证书和加密算法的获取;Screenshot Consumer Group负责网站截图的获取,对Masscan扫描得到的活动IP和活动端口采用遍历尝试的策略,对每个活动IP的每个活动端口尝试进行截图获取;Code Consumer Group负责网站源码的获取,Code Consumer Group中的消费者实例在进行网页源码获取时同样采用遍历尝试的策略,对每个活动IP的每个活动端口尝试进行网页源码获取。
进一步地,如图1所示,分布式海量数据弹性存取子系统104包括多个预设节点,多个预设节点都具有客户端节点功能,预设Node 01节点和Node 02节点具有主节点和数据节点功能,预设Node 03节点和Node 04节点具有数据节点功能,其中,客户端节点,用于充当负载均衡器的角色,包括但不限于处理路由请求、处理搜索、分发索引操作;主节点,用于处理集群操作相关的内容,包括但不限于创建或删除索引、跟踪收集集群中各个节点的状态、分片的分配;数据节点,用于存储,包括但不限于存储集群中的所有文档数据。
利用预设的配置,在四个节点(Node 01-Node 04)上构建基于ElasticSearch分布式海量数据存储与检索子系统,从而实现对海量的网络资产扫描探测结果的存储和检索。
下面结合图4和图5对根据本发明的实施例的一种基于分布式的网络资产扫描探测方法进行具体说明。
如图4所示,根据本发明的实施例的一种基于分布式的网络资产扫描探测方法,包括以下步骤:
S402,接收用户发送的网络资产扫描与探测任务;
S404,确定接收到的任务信息的主题类型;
S406,若确定接收到的任务信息主题类型为task_ip_gn时,则执行面向IP扫描探测任务的分布式网络资产扫描探测;
S408,若确定接收到的任务信息主题类型为task_domain_gn时,则执行面向域名扫描探测任务的分布式网络资产扫描探测;
S410,将对网络资产扫描探测结果存储到分布式海量数据弹性存取子系统中。
在接收到用户发送的网络资产扫描与探测任务时,确定接收到的任务信息的主题类型,并根据主题类型执行相应的分布式网络资产扫描探测,能够实现大批量扫描探测任务的负载均衡执行,并行化程度高、处理大规模扫描探测任务效率高。将对网络资产扫描探测结果存储到分布式海量数据弹性存取子系统中,不但存储效率高,存储可靠,而且便于高效检索,能够更好的满足大批量扫描任务的需求。本发明提出的基于分布式的网络资产扫描探测方法,可以较为迅速地给出准确有效的扫描探测结果,具有高效的并行化能力,在网络资产扫描与探测任务执行效率上相较于传统的单点扫描探测工具有较大提升,能够帮助用户网络资产进行快速梳理,及时发现旧版软件、易受攻击的漏洞等问题,有效降低其网络资产风险。
如图5所示,根据本发明的实施例的一种基于分布式的网络资产扫描探测方法,包括以下步骤:
S502,接收用户发送的网络资产扫描与探测任务;
S504,将接收到的用户发送的网络资产扫描与探测任务记录到MySQL数据库中;
S506,确定接收到的任务信息的主题类型;
S508,若确定接收到的任务信息主题类型为task_ip_gn时,串行执行Masscan扫描获取给定IP段中的活动IP信息和活动端口信息;
S510,当Masscan Consumer/Producer Group中的消费者实例完成Masscan扫描后将转为Kafka Producer,向下层任务发布sub Task_ip_gn主题类型的任务信息,其中, n为消费者群组Task Group的群组ID;
S512,在接收到Masscan Consumer/Producer Group发布的sub Task_ip_gn主题类型的任务消息后,并行执行Nmap扫描、Zgrab2扫描、网页截图获取、网页源码获取和Whois扫描;
S514,若确定接收到的任务信息主题类型为task_domain_gn时,并行执行Nslookup 扫描、Whois扫描、Whatweb扫描和WAF扫描;
S516,当Nslookup Consumer/Producer Group中的消费者实例扫描完成后将转为Kafka Producer,向下层的Masscan Group发布task_ip_gn主题类型的任务信息,其中, n为消费者群组Task Group的群组ID;
S518,在接收到task_ip_gn主题类型的任务信息后,串行执行Masscan扫描获取给定IP段中的活动IP信息和活动端口信息;
S520,当Masscan Consumer/Producer Group中的消费者实例完成Masscan扫描后将转为Kafka Producer,向下层任务发布sub Task_ip_gn主题类型的任务信息,其中, n为消费者群组Task Group的群组ID;
S522,在接收到Masscan Consumer/Producer Group发布的sub Task_ip_gn主题类型的任务消息后,并行执行Nmap扫描、Zgrab2扫描、网页截图获取、网页源码获取;
S524,将对网络资产扫描探测结果存储到分布式海量数据弹性存取子系统中。
进一步地,基于分布式的网络资产扫描探测方法,还包括:根据接收到的网络资产扫描与探测任务在分布式海量数据弹性存取子系统中检索网络资产扫描探测结果。检索效率高,便于用户调用查看扫描探测结果,进一步有利于规避网络资产风险。
进一步地,基于分布式的网络资产扫描探测方法,还包括:预设分布式海量数据弹性存取子系统的配置,预设Node 01节点和Node 02节点具有作为主节点和数据节点的功能,预设Node 03节点和Node 04节点仅具有作为数据节点的功能,预设Node 01 节点、Node02节点、Node 03节点、Node 04节点都具有作为客户端节点的功能。
预设分布式海量数据弹性存取子系统的配置,客户端节点,用于充当负载均衡器的角色,包括但不限于处理路由请求、处理搜索、分发索引操作;主节点,用于处理集群操作相关的内容,包括但不限于创建或删除索引、跟踪收集集群中各个节点的状态、分片的分配;数据节点,用于存储,包括但不限于存储集群中的所有文档数据。利用预设的配置,在四个节点(Node 01-Node 04)上构建分布式海量数据存储与检索子系统,从而实现对海量的网络资产扫描探测结果的存储和检索。
本发明方法中的步骤可根据实际需要进行顺序调整、合并和删减。
本发明装置中的单元可根据实际需要进行合并、划分和删减。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质包括只读存储器(Read-Only Memory,ROM)、随机存储器(Random Access Memory,RAM)、可编程只读存储器(Programmable Read-only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、一次可编程只读存储器(One-time Programmable Read-Only Memory,OTPROM)、电子抹除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory, EEPROM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
在本说明书的描述中,术语“一个实施例”、“一些实施例”、“具体实施例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或实例。而且,描述的具体特征、结构、材料或特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种基于分布式的网络资产扫描探测平台,其特征在于,包括:
基于Kafka分布式消息发布与订阅系统构建的分布式网络资产扫描探测子系统,用于并行化高效执行大批量的网络资产扫描与探测任务;
基于ElasticSearch分布式海量数据存储与检索系统构建的分布式海量数据弹性存取子系统,用于对海量的网络资产扫描探测结果进行存储和检索;
利用Python编程语言,基于Flask框架、elasticsearch6框架、kafka-python框架和pymysql框架编写的Web Server服务端,所述Web Server服务端利用kafka-python框架与所述分布式网络资产扫描探测子系统相连接,所述分布式网络资产扫描探测子系统与所述分布式海量数据弹性存取子系统以所述Web Server服务端中提供的elasticsearch6框架服务为桥梁相连接,以将分布式网络资产扫描探测子系统的扫描探测结果存储并根据用户需求进行高效检索;
MySQL数据库,所述Web Server服务端利用pymysql框架与所述MySQL数据库相连接,用于记录用户发起的网络资产扫描与探测任务;
利用Vue框架构建的Web网页,所述Web网页与所述Web Server服务端相连接,以向用户提供基于分布式的网络资产扫描探测平台服务,
所述分布式海量数据弹性存取子系统包括多个预设节点,所述多个预设节点都具有客户端节点功能,
预设Node 01节点和Node 02节点具有主节点和数据节点功能,预设Node 03节点和Node 04节点具有数据节点功能,
其中,客户端节点,用于充当负载均衡器的角色,包括处理路由请求、处理搜索、分发索引操作;
主节点,用于处理集群操作相关的内容,包括创建或删除索引、跟踪收集集群中各个节点的状态、分片的分配;
数据节点 ,用于存储,包括存储集群中的所有文档数据。
2.根据权利要求1所述的基于分布式的网络资产扫描探测平台,其特征在于,
所述分布式网络资产扫描探测子系统包括面向IP扫描探测任务的分布式网络资产扫描探测模块、面向域名扫描探测任务的分布式网络资产扫描探测模块。
3.根据权利要求2所述的基于分布式的网络资产扫描探测平台,其特征在于,所述面向IP扫描探测任务的分布式网络资产扫描探测模块包括:
Masscan扫描子模块、Nmap扫描子模块、Zgrab2扫描子模块、网页截图获取子模块、网页源码获取子模块、Whois扫描子模块,其中,Nmap扫描子模块、Zgrab2扫描子模块、网页截图获取子模块、网页源码获取子模块、以及Whois扫描子模块并行设置,且分别与所述Masscan扫描子模块相连接,
所述Masscan扫描子模块,用于在接收到task_ip_gn主题类型的任务信息后,串行执行Masscan扫描获取给定IP段中的活动IP信息和活动端口信息,并转为Kafka Producer,向下层发布sub Task_ip_gn主题类型的任务信息;
所述Nmap扫描子模块,用于根据所述Masscan扫描子模块扫描得到的活动IP信息和活动端口信息进行端口信息探测和操作系统推断;
所述Zgrab2扫描子模块,用于根据所述Masscan扫描子模块扫描得到的活动IP信息进行证书和加密算法的获取;
网页截图获取子模块,用于网页截图的获取,采用遍历尝试的策略,对Masscan扫描子模块扫描得到的每个活动IP的每个活动端口尝试进行网页截图获取;
网页源码获取子模块,用于网页源码的获取,采用遍历尝试的策略,对Masscan扫描子模块扫描得到的每个活动IP的每个活动端口尝试进行网页源码获取;
Whois扫描子模块,用于域名whois信息的扫描。
4.根据权利要求2所述的基于分布式的网络资产扫描探测平台,其特征在于,所述面向域名扫描探测任务的分布式网络资产扫描探测模块包括:
并行设置的Nslookup扫描子模块、Whois扫描子模块、Whatweb扫描子模块以及WAF扫描子模块;
与所述Nslookup扫描子模块相连接的Masscan扫描子模块;
并行设置的Nmap扫描子模块、Zgrab2扫描子模块、网页截图获取子模块以及网页源码获取子模块,所述Nmap扫描子模块、Zgrab2扫描子模块、网页截图获取子模块以及网页源码获取子模块分别与所述Masscan扫描子模块相连接,
所述Nslookup扫描子模块,用于在接收到task_domain_gn主题类型的任务信息后,获取与目标域名相关的IP信息,并转为Kafka Producer,向下层Masscan扫描子模块发布task_ip_gn主题类型的任务信息;
所述Whois扫描子模块,用于在接收到task_domain_gn主题类型的任务信息后获取目标域名的Whois信息;
所述Whatweb扫描子模块,用于在接收到task_domain_gn主题类型的任务信息后扫描查询获取目标域名网站所使用的服务及其版本;
所述WAF扫描子模块,用于在接收到task_domain_gn主题类型的任务信息后获取目标域名网站的防火墙信息;
所述Masscan扫描子模块,用于在接收到task_ip_g n主题类型的任务信息后,串行执行Masscan扫描获取给定IP段中的活动IP信息和活动端口信息,并转为Kafka Producer,向下层发布subTask_ip_gn主题类型的任务信息;
所述Nmap扫描子模块,用于根据所述Masscan扫描子模块扫描得到的活动IP信息和活动端口信息进行端口信息探测和操作系统推断;
所述Zgrab2扫描子模块,用于根据所述Masscan扫描子模块扫描得到的活动IP信息进行证书和加密算法的获取;
网页截图获取子模块,用于网页截图的获取,采用遍历尝试的策略,对Masscan扫描子模块扫描得到的每个活动IP的每个活动端口尝试进行网页截图获取;
网页源码获取子模块,用于网页源码的获取,采用遍历尝试的策略,对Masscan扫描子模块扫描得到的每个活动IP的每个活动端口尝试进行网页源码获取。
5.一种基于分布式的网络资产扫描探测方法,其特征在于,包括:
接收用户发送的网络资产扫描与探测任务;
确定接收到的任务信息的主题类型;
若确定接收到的任务信息主题类型为task_ip_gn时,则执行面向IP扫描探测任务的分布式网络资产扫描探测;
若确定接收到的任务信息主题类型为task_domain_gn时,则执行面向域名扫描探测任务的分布式网络资产扫描探测;
将对网络资产扫描探测结果存储到分布式海量数据弹性存取子系统中,
还包括:
预设分布式海量数据弹性存取子系统的配置,预设Node 01节点和Node 02节点具有作为主节点和数据节点的功能,预设Node 03节点和Node 04节点仅具有作为数据节点的功能;客户端节点用于充当负载均衡器的角色,包括处理路由器请求、处理搜索、分发索引操作;主节点用于处理集群操作相关的内容,包括创建或删除索引、跟踪收集集群中各个节点的状态、分片的分配;数据节点用于存储,包括存储集群中的所有文档数据;预设Node 01节点、Node 02节点、Node 03节点、Node 04节点都具有作为客户端节点的功能。
6.根据权利要求5所述的基于分布式的网络资产扫描探测方法,其特征在于,所述执行面向IP扫描探测任务的分布式网络资产扫描探测具体包括以下步骤:
串行执行Masscan扫描获取给定IP段中的活动IP信息和活动端口信息;
当Masscan Consumer/Producer Group中的消费者实例完成Masscan扫描后将转为Kafka Producer ,向下层任务发布sub Task_ip_gn 主题类型的任务信息,其中,n为消费者群组Task Group的群组ID;
在接收到Masscan Consumer/Producer Group发布的sub Task_ip_gn主题类型的任务消息后,并行执行Nmap扫描、Zgrab2扫描、网页截图获取、网页源码获取和Whois扫描,其中,
Nmap扫描具体为根据Masscan扫描获取到的活动IP信息和活动端口信息进行端口信息探测和操作系统推断;
Zgrab2扫描具体为根据Masscan扫描获取到的活动IP信息进行证书和加密算法的获取;
网页截图获取具体为采用遍历尝试的策略对Masscan扫描获取到的每个活动IP的每个活动端口尝试进行网页截图获取;
网页源码获取具体为采用遍历尝试的策略对Masscan扫描获取到的每个活动IP的每个活动端口尝试进行网页源码获取;
Whois扫描具体为扫描域名whois信息。
7.根据权利要求5所述的基于分布式的网络资产扫描探测方法,其特征在于,所述执行面向域名扫描探测任务的分布式网络资产扫描探测具体包括以下步骤:
并行执行Nslookup扫描、Whois扫描、Whatweb扫描和WAF扫描,其中,
Nslookup扫描具体为:在接收到task_domain_gn主题类型的任务信息后,获取与目标域名相关的IP信息;当Nslookup Consumer/Producer Group中的消费者实例扫描完成后将转为Kafka Producer,向下层的Masscan Group发布task_ip_gn主题类型的任务信息,其中,n为消费者群组Task Group的群组ID,
Whois扫描具体为:获取目标域名的Whois信息,
Whatweb扫描具体为:扫描查询获取目标域名网站所使用的服务及其版本,
WAF扫描具体为:获取目标域名网站的防火墙信息,
在接收到task_ip_gn主题类型的任务信息后,串行执行Masscan扫描获取给定IP段中的活动IP信息和活动端口信息;
当Masscan Consumer/Producer Group中的消费者实例完成Masscan扫描后将转为Kafka Producer ,向下层任务发布sub Task_ip_gn 主题类型的任务信息,其中,n为消费者群组Task Group的群组ID;
在接收到Masscan Consumer/Producer Group发布的sub Task_ip_gn主题类型的任务消息后,并行执行Nmap扫描、Zgrab2扫描、网页截图获取、网页源码获取,其中,
Nmap扫描具体为根据Masscan扫描获取到的活动IP信息和活动端口信息进行端口信息探测和操作系统推断,
Zgrab2扫描具体为根据Masscan扫描获取到的活动IP信息进行证书和加密算法的获取,
网页截图获取具体为采用遍历尝试的策略对Masscan扫描获取到的每个活动IP的每个活动端口尝试进行网页截图获取,
网页源码获取具体为采用遍历尝试的策略对Masscan扫描获取到的每个活动IP的每个活动端口尝试进行网页源码获取。
8.根据权利要求5至7中任一项所述的基于分布式的网络资产扫描探测方法,其特征在于,还包括:
根据接收到的网络资产扫描与探测任务在分布式海量数据弹性存取子系统中检索网络资产扫描探测结果;
将接收到的用户发送的网络资产扫描与探测任务记录到MySQL数据库中。
CN202210165952.3A 2022-02-23 2022-02-23 一种基于分布式的网络资产扫描探测平台及扫描探测方法 Active CN114584486B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210165952.3A CN114584486B (zh) 2022-02-23 2022-02-23 一种基于分布式的网络资产扫描探测平台及扫描探测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210165952.3A CN114584486B (zh) 2022-02-23 2022-02-23 一种基于分布式的网络资产扫描探测平台及扫描探测方法

Publications (2)

Publication Number Publication Date
CN114584486A CN114584486A (zh) 2022-06-03
CN114584486B true CN114584486B (zh) 2023-09-29

Family

ID=81770981

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210165952.3A Active CN114584486B (zh) 2022-02-23 2022-02-23 一种基于分布式的网络资产扫描探测平台及扫描探测方法

Country Status (1)

Country Link
CN (1) CN114584486B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115567425A (zh) * 2022-08-22 2023-01-03 清华大学 一种互联网分布式主动探测方法及系统
CN116823162B (zh) * 2023-06-27 2024-04-09 上海螣龙科技有限公司 一种网络资产扫描任务管理方法、系统及计算机设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106888194A (zh) * 2015-12-16 2017-06-23 国家电网公司 基于分布式调度的智能电网it资产安全监测系统
CN107294975A (zh) * 2017-06-27 2017-10-24 四维创智(北京)科技发展有限公司 一种基于信息收集的Web安全漏洞检测系统及检测方法
CN109525427A (zh) * 2018-11-12 2019-03-26 广东省信息安全测评中心 分布式资产信息探测方法与系统
CN109951359A (zh) * 2019-03-21 2019-06-28 北京国舜科技股份有限公司 分布式网络资产异步扫描方法及设备
CN112003884A (zh) * 2019-05-27 2020-11-27 北京白帽汇科技有限公司 一种网络资产的采集和自然语言检索方法
CN112637159A (zh) * 2020-12-14 2021-04-09 杭州安恒信息技术股份有限公司 一种基于主动探测技术的网络资产扫描方法、装置及设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106888194A (zh) * 2015-12-16 2017-06-23 国家电网公司 基于分布式调度的智能电网it资产安全监测系统
CN107294975A (zh) * 2017-06-27 2017-10-24 四维创智(北京)科技发展有限公司 一种基于信息收集的Web安全漏洞检测系统及检测方法
CN109525427A (zh) * 2018-11-12 2019-03-26 广东省信息安全测评中心 分布式资产信息探测方法与系统
CN109951359A (zh) * 2019-03-21 2019-06-28 北京国舜科技股份有限公司 分布式网络资产异步扫描方法及设备
CN112003884A (zh) * 2019-05-27 2020-11-27 北京白帽汇科技有限公司 一种网络资产的采集和自然语言检索方法
CN112637159A (zh) * 2020-12-14 2021-04-09 杭州安恒信息技术股份有限公司 一种基于主动探测技术的网络资产扫描方法、装置及设备

Also Published As

Publication number Publication date
CN114584486A (zh) 2022-06-03

Similar Documents

Publication Publication Date Title
US11449562B2 (en) Enterprise data processing
US11005779B2 (en) Method of and server for detecting associated web resources
US10795643B2 (en) System and method for resource reconciliation in an enterprise management system
CN114584486B (zh) 一种基于分布式的网络资产扫描探测平台及扫描探测方法
KR100619178B1 (ko) 인터넷 검색 엔진에 있어서의 무효 클릭 검출 방법 및 장치
JP6490059B2 (ja) データを処理するための方法、有形機械可読記録可能記憶媒体および装置、ならびにデータ・レコードから抽出された特徴をクエリするための方法、有形機械可読記録可能記憶媒体および装置
RU2722693C1 (ru) Способ и система выявления инфраструктуры вредоносной программы или киберзлоумышленника
CN110430188B (zh) 一种快速url过滤方法及装置
US11790016B2 (en) Method, device and computer program for collecting data from multi-domain
US20160034505A1 (en) Systems and methods for large-scale link analysis
CN111104579A (zh) 一种公网资产的识别方法、装置及存储介质
WO2010043257A1 (en) Retrieving configuration records from a configuration management database
US11797617B2 (en) Method and apparatus for collecting information regarding dark web
CN110825950B (zh) 一种基于元搜索的隐藏服务发现方法
US10897483B2 (en) Intrusion detection system for automated determination of IP addresses
JP2002222111A (ja) データ通信装置及びデータ通信方法
US11847121B2 (en) Compound predicate query statement transformation
US11528294B2 (en) Systems and methods for automated threat detection
CN114765599A (zh) 子域名采集方法、装置
KR100619179B1 (ko) 인터넷 검색 엔진에 있어서의 무효 클릭 검출 방법 및 장치
CN111814171B (zh) 一种基于属性和图的云资源访问控制方法
CN117290552A (zh) 一种互联网暴露面的管理方法、管理系统及可读存储介质
CN114356292A (zh) 交互信息处理方法、装置及计算机设备
CN116304209A (zh) 资产运营处置方法、装置、电子设备及存储介质
CN117974322A (zh) 资产的扫描方法、装置、计算机设备及存储介质

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