CN110463154A - 分布式扫描 - Google Patents
分布式扫描 Download PDFInfo
- Publication number
- CN110463154A CN110463154A CN201780088880.4A CN201780088880A CN110463154A CN 110463154 A CN110463154 A CN 110463154A CN 201780088880 A CN201780088880 A CN 201780088880A CN 110463154 A CN110463154 A CN 110463154A
- Authority
- CN
- China
- Prior art keywords
- network
- scan
- scan node
- scanning
- production plan
- 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.)
- Pending
Links
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
-
- 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/10—Protocols in which an application is distributed across nodes in the network
-
- 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/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
用于扫描网络的系统包括接口和处理器。接口被配置为接收扫描网络地址集合的标示。处理器被配置为确定可用扫描节点集合,并确定使用该可用扫描节点集合扫描该网络地址集合的作业计划。作业计划包括一个或多个作业部分。该处理器被配置为,对于一个或多个作业部分的一个作业部分,选择该可用扫描节点集合中的一个扫描节点,并将该作业部分提供给该扫描节点。
Description
背景技术
与因特网连接的资产(例如,计算机,移动设备,服务器系统,客户端系统,物联网设备等)包括与因特网通信的计算系统。与因特网连接的资产通常包括一个或多个可公开寻址的通信端口,允许任何与因特网连接的设备查询该资产。一些设备允许一系列连接类型(例如,HTTP连接HTTPS连接,FTP连接,FTPS连接,telnet连接,SSH连接等)通过一个或多个可公开访问的端口。与因特网连接的资产可以是多种不同类型的硬件设备,这些设备运行多种软件,包括多种配置选项,为安全漏洞创造了无数的可能性。典型系统管理员可能不知道他或她监视下的每个系统的每个细节,从而产生系统漏洞可能无法被检测到且未被修复的问题。扫描多种网络地址可以提供其他任何方式无法获得的解读;但是,它会需要大量的计算能力和通信带宽来执行该扫描。单台计算机可能无法充分执行该扫描。
附图说明
在以下具体实施例和附图中公开了本发明的多种示例。
图1是示出网络系统的示例的框图。
图2是示出网络扫描系统的示例的框图。
图3是示出网络扫描系统的示例的框图。
图4是示出网络系统的示例的框图。
图5是示出网络扫描控制器的示例的框图。
图6是示出扫描节点的示例的框图。
图7是示出用于扫描网络的过程的示例的流程图。
图8是示出用于确定作业计划的过程的示例的流程图。
图9是示出在必要时用于基于作业部分结果修改作业计划的过程的示例的流程图。
具体实施例
本发明可以以多种方式实现,包括作为过程;装置;系统;物质组成;实现在计算机可读存储介质上的计算机程序产品;和/或处理器,例如被配置为执行由耦合到处理器的存储器存储和/或提供的指令的处理器。在本说明书中,这些实现方式,或本发明可采用的任何其他方式,可以称为技术。通常,可以在本发明的范围内改变所公开的流程的步骤顺序。除非另有说明,否则,被描述为被配置为执行任务的组件,例如处理器或存储器,可以被实现为临时配置地在给定时间执行任务的通用组件或者被制造为执行任务的特定组件。如这里所使用的,术语“处理器”指的是一个或多个设备,电路,和/或处理核,其被配置为处理数据,例如计算机程序指令。
下面提供本发明的一个或多个示例的详细描述以及说明本发明原理的附图。结合这些示例描述了本发明,但是本发明不限于任何示例。本发明的范围仅由权利要求限制,并且本发明包括多种替换,修改和等同物。在以下描述中阐述了许多具体细节,以便提供对本发明的透彻理解。提供这些细节是出于示例的目的,并且可以在没有这些具体细节的一些或全部的情况下根据权利要求来实践本发明。为了清楚起见,没有详细描述与本发明相关的技术领域中已知的技术材料,因此不会不必要地模糊本发明。
用于扫描网络的系统包括:接口,该接口用于接收要扫描网络地址集合的标示;以及处理器,该处理器用于:确定可用扫描节点集合,确定用于使用该扫描节点集合扫描该网络地址集合的作业计划,其中该作业计划包括一个或多个作业部分,并且对于一个或多个作业部分的每一个作业部分:选择该扫描节点集合中的一个扫描节点,将作业部分提供给该扫描节点,并接收该扫描节点的扫描结果。在一些示例中,该系统还包括耦合到处理器并且被配置为向处理器提供指令的存储器。
在一些示例中,用于网络扫描的系统包括用于通过扫描网络上的一些或所有计算机来确定关于该网络的信息的系统。在一些示例中,用于网络扫描的系统包括用于通过确定网络的完整外形图来改善网络安全性的系统。在多种示例中,用于网络扫描的系统针对与组织相关联的设备,针对设备上的开放端口,针对在设备上运行的服务,针对标示出多个设备相关联的信息,针对设备配置信息,针对设备加密信息,针对设备网络设置,或针对任何其他合适的信息进行扫描。在一些示例中,用于网络扫描的系统扫描因特网的一部分。在一些示例中,用于网络扫描的系统扫描整个因特网。在一些示例中,当用于网络扫描的系统接收要扫描大型网络(例如,整个因特网)的请求时,使用分布式系统执行扫描。在一些示例中,分布式系统包括主系统(例如,网络扫描控制器)和一个或多个从系统(例如,扫描节点)。在一些示例中,主系统基于所请求的扫描和可用扫描节点集合确定作业计划,向可用扫描节点提供作业计划的多个部分以便完成所请求的扫描,并且结合从扫描节点所接收的结果以创建完整的扫描结果。
图1是示出网络系统的示例的框图。在一些示例中,图1的网络系统包括用于网络扫描的系统。在所示例子中,图1包括网络100。在多种示例中,网络100包括以下中的一个或多个:局域网,广域网,有线网络,无线网络,因特网,内联网,存储区域网络,或任何其他合适的通信网络。管理员系统102和网络扫描系统104通过网络100进行通信。管理员系统102包括供管理员使用的系统。在多种示例中,管理员系统102包括供管理员访问应用系统上的应用,访问数据库系统上的数据,标示网络扫描系统104执行网络扫描过程,从网络扫描系统104接收数据,配置网络系统(例如,网络系统106),从网络系统接收数据,或用于任何其他合适的目的的系统。在一些示例中,管理员系统102包括处理器和存储器。网络扫描系统104包括用于扫描网络的系统。在一些示例中,扫描系统104包括响应于来自管理员系统102的命令扫描与网络系统相关联的数据的系统。在一些示例中,网络扫描系统104包括扫描与网络系统集合(例如,网络系统106,网络系统108,网络系统110,网络系统112,网络系统114,网络系统116,网络系统118,和网络系统120)相关联的数据的系统。在一些示例中,扫描与网络系统集合相关联的数据包括分析之前存储的与该网络系统集合相关联的数据。在一些示例中,扫描与网络系统集合相关联的数据包括向该网络系统集合的一个或多个网络系统提供有效负载并在接收到响应时分析接收到的响应。在一些示例中,网络扫描系统104包括处理器和存储器。图1的每个网络系统(例如,网络系统106)包括与因特网连接的系统(例如,台式计算机,笔记本电脑,智能电话,平板电脑,服务器系统,物联网设备等)。在多种示例中,图1的系统包括8,13,197,2222,1百万,1亿,或任何其他合适数量的网络系统。在一些示例中,图1的每个网络系统与一个因特网地址相关联。在一些示例中,一个因特网地址包括一个IP(例如,因特网协议)地址。在所示的例子中,网络扫描系统104包括集中式网络扫描系统(例如,网络扫描的元素包括确定要扫描的地址,扫描,和分析扫描的结果,其全部由网络扫描系统104执行)。
图2是示出网络扫描系统的示例的框图。在一些示例中,图2的网络扫描系统包括图1的用于网络扫描的系统104。在所示的例子中,网络扫描系统200包括网络扫描控制器202,网络扫描数据库203,网络204,和多个扫描节点(例如,扫描节点206,扫描节点208,扫描节点210,扫描节点212,扫描节点214,扫描节点216,和扫描节点218)。网络扫描控制器202包括用于接收要扫描网络地址集合(例如,来自用户或管理员系统)的标示的系统。网络扫描控制器202确定要由多个扫描节点执行的多个扫描部分,将扫描节点导向以每一个执行所请求的扫描的一部分,从每个扫描节点接收返回结果,将结果提供给网络扫描数据库(例如,网络扫描数据库203),确定当前结果与先前结果(例如,先前结果也存储在网络扫描数据库203中)之间的差异,并将结果的标示,结果,或结果的总结提供给请求者。在一些示例中,网络扫描控制器202包括使用云计算硬件实现的系统。在一些示例中,网络扫描控制器202包括用于接收扫描节点集合(例如,扫描节点208和扫描节点216)的标示的系统。在一些示例中,扫描节点包括要扫描的网络系统。网络扫描控制器202与网络扫描数据库203通信以存储网络扫描结果。网络扫描控制器202使用网络204与多个扫描节点通信。在多种示例中,网络204包括以下中的一个或多个:局域网,广域网,有线网络,无线网络,因特网,内联网,存储区域网络,或任何其他合适的通信网络。在多种示例中,有1,2,4,7,11,25,92,297,1001,或任何其他合适的数量的扫描节点与网络扫描控制器202通信。在一些示例中,扫描节点的物理位置相对于彼此和相对于网络扫描控制器202具有一定距离。在一些示例中,使用云计算硬件实现扫描节点。在一些示例中,扫描节点使用与网络扫描控制器202不同的系统来实现(例如,不同的云计算硬件)。在一些示例中,扫描节点不包括公开可见信息以识别它们与网络扫描控制器202的关联。
图3是示出网络扫描系统的示例的框图。在一些示例中,图3的网络扫描系统包括图1的用于网络扫描的系统104。在所示的例子中,网络扫描系统300包括网络扫描控制器302,网络扫描数据库303,网络304,匿名系统305,和多个扫描节点(例如,扫描节点306,扫描节点308,扫描节点310,扫描节点312,扫描节点314,扫描节点316,和扫描节点318)。网络扫描控制器302包括用于接收要扫描网络地址集合(例如,来自用户或管理员系统)的标示的系统。网络扫描控制器302确定要由多个扫描节点执行的多个扫描部分,将扫描节点导向以每一个执行所请求的扫描的一部分,从每个扫描节点接收返回结果,将结果提供给网络扫描数据库(例如,网络扫描数据库303),确定当前结果与先前结果(例如,先前结果也存储在网络扫描数据库303中)之间的差异,并将结果的标示,结果,或结果的总结提供给请求者。在一些示例中,网络扫描控制器302包括使用云计算硬件实现的系统。在一些示例中,网络扫描控制器302包括用于接收扫描节点集合(例如,扫描节点308和扫描节点316)的标示的系统。在一些示例中,扫描节点包括要扫描的网络系统。网络扫描控制器302与网络扫描数据库303通信以存储网络扫描结果。网络扫描控制器302通过匿名系统306与多个扫描节点通信。在多种示例中,匿名系统306包括匿名虚拟专用网络,隧道系统,或任何其它合适的匿名系统。匿名系统305使得扫描目标系统难以识别多个扫描系统后面的扫描控制器。匿名系统305使用网络304与多个扫描节点通信。在多种示例中,网络304包括以下中的一个或多个:局域网,广域网,有线网络,无线网络,因特网,内联网,存储区域网络,或任何其他合适的通信网络。在多种示例中,有1,2,4,7,11,25,92,297,1001,或任何其他合适的数量的扫描节点与网络扫描控制器302通信。在一些示例中,扫描节点的物理位置相对于彼此和相对于网络扫描控制器302具有一定距离。在一些示例中,使用云计算硬件实现扫描节点。在一些示例中,扫描节点使用与网络扫描控制器302不同的系统来实现(例如,不同的云计算硬件)。在一些示例中,扫描节点不包括公开可见信息以识别它们与网络扫描控制器302的关联。
图4是示出网络系统的示例的框图。在一些示例中,网络系统400包括图1的网络系统(例如,网络系统106)。在所示的例子中,网络系统400包括处理器402,数据存储器404,和网络接口406。在一些示例中,网络系统400包括与因特网连接的资产(例如,台式计算机,笔记本电脑,智能电话,平板电脑,服务器系统,物联网设备,或任何其他合适的与因特网连接的资产)。在多种示例中,处理器402包括用于执行指令,处理数据,响应命令等的处理器。在多种示例中,处理器402包括通用处理器,微控制器,并行处理系统,处理器集群,或任何其他合适的处理器。在多种示例中,数据存储器404包括用于存储数据,用于存储处理器402的指令,用于存储配置信息,或用于存储任何其他合适的信息的数据存储器。在多种示例中,数据存储器404包括以下中的一个或多个:易失性存储器,非易失性存储器,磁性存储器,光学存储器,相变存储器,半导体存储器,盘式存储器,磁带存储器,或任何其他合适的存储器。网络接口406包括使用网络进行通信的网络接口。在所示的例子中,网络接口406包括网络通信信息408和多个端口(例如,端口410)。在多种示例中,网络通信信息包括网络通信软件,网络通信设置,网络通信数据,或任何其他合适的网络通信信息。多个端口包括物理端口(例如,用于将电缆连接到网络系统400的插口)或虚拟端口(例如,由虚拟端口号标识的虚拟通信通道)。在一些示例中,网络接口406包括网络地址(例如,由外部网络寻址机构分配的网络地址)。在一些示例中,通过标示网络400的网络地址以及端口号来指定与网络系统400的通信。在一些示例中,网络接口406的一些端口被配置为用于通信(例如,包括开放端口),而一些端口被配置为不响应于通信。在一些示例中,开放端口配置信息存储在网络通信信息408中。在一些示例中,一些端口与一个或多个特定通信服务(例如,超文本传输协议(HTTP),文件传输协议(FTP),安全shell(SSH)等)相关联。在一些示例中,与端口服务相关联的配置信息存储在网络通信信息408中。在一些示例中,网络通信信息408包括加密信息(例如,公共SSH密钥,证书等)。在一些示例中,网络通信信息408包括网络系统名称(例如,主机名,域名,主机名集合,主机名模式等)。在一些示例中,网络通信信息包括与服务或服务集合相关联的文本信息(例如,欢迎文本(a welcome text),连接被拒绝的文本(aconnection refused text),不支持服务的文本(a service not supported text),未找到文件的文本(a file not found text),或任何其他合适的文本信息)。在一些示例中,网络接口406包括运行根据通信规范集合进行配置的通信软件集合的网络硬件集合(例如,调制解调器)。
图5是示出网络扫描控制器的示例的框图。在一些示例中,网络扫描控制器500包括图2中的网络扫描控制器202。在一些示例中,网络扫描控制器500包括服务器系统。在所示的例子中,网络扫描控制器500包括处理器502,数据存储器504,和网络接口506。在多种示例中,处理器502包括用于执行指令,处理数据,响应命令等的处理器。在多种示例中,处理器502包括通用处理器,微控制器,并行处理系统,处理器集群,或任何其他合适的处理器。在一些示例中,处理器502包括网络扫描器508。在多种示例中,网络扫描器508包括实现分层扫描系统功能的软件和/或硬件。在一些示例中,网络扫描器508包括用于确定作业计划的网络扫描器。在一些示例中,作业计划包括扫描指令集合。在一些示例中,作业计划包括使用可用扫描节点集合扫描网络地址集合的作业计划。在一些示例中,作业计划包括要扫描的网络地址和端口的集合。在一些示例中,作业计划包括一个或多个有效负载和后续探针,用于与网络设备交互。在一些示例中,作业计划包括一个或多个作业部分。在一些示例中,多个作业部分包括可分开的且可独立执行的多个作业部分(例如,可以并行运行并且不依赖于彼此的多个作业部分)。在多种示例中,数据存储器504包括用于存储数据,用于存储处理器502的指令,用于存储配置信息,或用于存储任何其他合适信息的数据存储器。在多种示例中,数据存储器504包括以下中的一个或多个:易失性存储器,非易失性存储器,磁性存储器,光学存储器,相变存储器,半导体存储器,盘式存储器,磁带存储器,或任何其他合适的存储器。在所示的例子中,数据存储器504包括用于存储提供给网络设备的有效负载的有效负载数据库510。在一些示例中,有效负载包括用于探测网络设备以引起响应的小数据包。数据存储器504还包括用于存储与网络设备交互的后续探针的后续探针数据库512。在一些示例中,后续探针包括用于与网络设备交互的软件,以确定有关网络设备的信息。在一些示例中,后续探针数据库512包含后续探针集合,每个后续探针都被设计为以特定的方式与网络设备交互,以获得关于网络设备的数据(例如,建立安全HTTP(HTTPS)连接并下载加密的web页面)。在一些示例中,一旦确定后续探针可能成功接收来自网络设备的数据,则该后续探针被用于与该网络设备进行交互。数据存储器504还包括网络信息数据库514,用于存储由于与网络设备交互(例如,使用有效负载或后续探针)而接收到的网络信息。在一些示例中,网络信息是远程存储的(例如,在存储服务器上,在不同的分层扫描系统上,在云存储上,等等)。在所示的例子中,网络接口506包括用于通过网络与远程系统交互的网络接口。在多种示例中,网络接口506包括用于提供有效负载,用于执行后续探针的通信,用于接收网络信息,或用于任何其他合适目的的网络接口。在一些示例中,网络接口506包括为高带宽通信配置的网络接口。在一些示例中,网络接口506包括向一个扫描节点提供作业计划的一个作业部分的网络接口。在一些示例中,网络接口506包括从一个扫描节点接收作业部分结果的网络接口。
图6是示出扫描节点的示例的框图。在一些示例中,扫描节点600包括图2的扫描节点(例如,扫描节点208)。在一些示例中,扫描节点600包括客户端系统。在所示的例子中,扫描节点600包括处理器602,数据存储器604,和网络接口606。在多种示例中,处理器602包括用于执行指令,处理数据,响应命令等的处理器。在多种示例中,处理器602包括通用处理器,微控制器,并行处理系统,处理器集群,或任何其他合适的处理器。在一些示例中,处理器602包括网络扫描器608。在多种示例中,网络扫描器608包括实现分层扫描系统功能的软件和/或硬件。在多种示例中,数据存储器604包括用于存储数据,用于存储处理器602的指令,用于存储配置信息,或用于存储任何其他合适信息的数据存储器。在多种示例中,数据存储器604包括以下中的一个或多个:易失性存储器,非易失性存储器,磁性存储器,光学存储器,相变存储器,半导体存储器,盘式存储器,磁带存储器,或任何其他合适的存储器。在所示的例子中,数据存储器604包括用于存储提供给网络设备的有效负载的有效负载数据库610。在一些示例中,有效负载包括用于探测网络设备以引起响应的小数据包。数据存储器604还包括用于存储与网络设备交互的后续探针的后续探针数据库612。在一些示例中,后续探针包括用于与网络设备交互的软件,以确定有关网络设备的信息。在一些示例中,后续探针数据库612包含后续探针集合,每个后续探针都被设计为以特定的方式与网络设备交互,以获得关于网络设备的数据(例如,建立安全HTTP(HTTPS)连接并下载加密的web页面)。在一些示例中,一旦确定后续探针可能成功接收来自网络设备的数据,则该后续探针被用于与该网络设备进行交互。数据存储器604还包括网络信息数据库614,用于存储由于与网络设备交互(例如,使用有效负载或后续探针)而接收到的网络信息。在一些示例中,网络信息是远程存储的(例如,在存储服务器上,在不同的分层扫描系统上,在云存储上,等等)。在所示的例子中,网络接口606包括用于通过网络与远程系统交互的网络接口。在多种示例中,网络接口606包括用于提供有效负载,用于执行后续探针的通信,用于接收网络信息,或用于任何其他合适目的的网络接口。在一些示例中,网络接口606包括为高带宽通信配置的网络接口。
在一些示例中,网络扫描器608根据由网络扫描控制器(例如,图2的网络扫描控制器204或图3的网络扫描控制器302)提供给它的指令来执行网络扫描。在一些示例中,指令包括一个作业部分(例如,一个扫描作业的一个作业部分)。在多种示例中,指令包括一个或多个因特网地址,一个或多个端口,一个或多个有效负载,一个或多个后续探针,或任何其他合适的扫描指令。
图7是示出用于扫描网络的过程的示例的流程图。在一些示例中,图7的过程由图2的网络扫描控制器204执行。在所示的例子中,在700中,接收要扫描网络地址集合的标示。在702中,确定可用扫描节点集合。在704中,确定使用该可用扫描节点集合扫描该网络地址集合的作业计划,其中该作业计划包括一个或多个作业部分。在706中,选择一个作业部分。在708中,选择一个扫描节点。在一些示例中,至少部分地基于作业部分来选择扫描节点。在多种示例中,扫描节点包括随机选择的扫描节点,伪随机选择的扫描节点,扫描节点列表中的下一扫描节点,具有最小处理器负载的扫描节点,近期未被选择的扫描节点,具有作业部分的最早的(least recently)扫描地址的扫描节点,根据预定列表要扫描作业部分的地址的下一个扫描节点,至少部分地基于其物理位置选择的一个扫描节点,或者以任何其他合适的方式选择的一个扫描节点。在710中,将该作业部分提供给该扫描节点。在712中,从该扫描节点接收作业部分结果。在714中,扫描作业部分结果。在一些示例中,作业部分结果由网络扫描控制器存储。在一些示例中,将作业部分结果提供给网络扫描数据库以进行存储。在716中,在必要时基于作业部分结果修改作业计划。在多种示例中,修改作业计划以扫描额外的地址,以扫描额外的端口,以执行额外的扫描类型,以执行额外的后续探测,或任何其他合适的行为。在718中,确定(例如,在作业计划中)是否存在更多作业部分。在确定存在更多作业部分的情况下,流程转到706。如果确定没有更多作业部分,则过程结束。
图8是示出用于确定作业计划的过程的示例的流程图。在一些示例中,图8的过程实现图7的704。在所示的例子中,在800中,确定用于扫描的扫描命令集合。在多种示例中,扫描命令包括shell命令,有效负载,后续探针,或任何其他合适的扫描命令。在一些示例中,扫描命令包括所接收的要扫描的标示的一部分(例如,要扫描的标示标示出用于扫描的扫描命令)。在一些示例中,至少部分地基于已标示出的要扫描的命令来确定扫描命令(例如,标示的要扫描的命令之外确定额外的扫描命令,修改要扫描的命令等)。在802中,确定用于扫描的端口集合。在一些示例中,要扫描的端口包括所接收的要扫描的标示的一部分(例如,要扫描的标示标示出用于扫描的端口)。在一些示例中,至少部分地基于所标示出的要扫描的命令来确定端口(例如,标示的要扫描的命令之外确定额外的端口,修改端口等)。在804中,确定作业部分规模。在多种示例中,至少部分地基于以下中的一个或多个来确定作业部分规模:预定的作业部分规模,可用扫描节点的数量,要扫描的地址的数量,要扫描的地址的分布,与要扫描的地址相关联的物理地址,历史扫描数据,当前和历史有组织的网络足迹,或任何其他合适的因素。在806中,选择网络地址集合的一部分去进行该作业部分规模的扫描。在多种示例中,选择连续的网络地址集合,选择不连续的网络地址集合,选择随机的网络地址集合,选择伪随机的网络地址集合,选择具有共同组织所有权或公共网络管理的网络地址集合,选择具有多个不同网关设备和/或流量集中器的网络地址集合,或者以任何其他合适方式选择网络地址集合。在808中,创建作业计划的一个作业部分包括使用该网络命令集合去扫描该端口集合的一部分的指令。在810中,确定是否存在更多地址(例如,要扫描的该网络地址集合的尚未分配给一个作业部分的更多地址)。在确定存在更多地址的情况下,流程转到806。如果确定没有更多地址,则过程结束。
图9是示出了在必要时用于基于作业部分结果修改作业计划的过程的示例的流程图。在一些示例中,图9的过程实现图7的716。在所示的示例中,在900中,确定作业部分是否包括所有先前看到的结果。在一些示例中,先前看到的结果包括先前看到的设备或服务,或先前看到的不产生响应的地址或端口。如果确定作业部分结果包括所有先前看到的结果,则过程结束(例如,不进行作业计划的修改)。如果确定作业部分结果不包括所有先前看到的结果,则流程转到902。在902,确定作业部分结果是否标示出先前在线设备或服务是离线的。如果确定先前没有在线设备或服务没有离线,则控制转到908。如果确定先前看到的设备或服务是离线的,则流程转到904。在904,使用一个或多个不同的扫描节点的扫描重试被添加到作业中。例如,扫描被添加到与该扫描先前已经被分配给的作业部分不同的作业部分,该不同的作业部分被分配至不同的所选扫描节点,使得由此而进行的扫描看起来不是源自同一个源。在多种示例中,使用随机选择的扫描节点,最早的(least recently)扫描了先前在线设备或服务的一个扫描节点,仅在确定是否先前在线设备已离线的情况下使用的备用扫描节点,或任何其他合适的扫描节点来进行重试。在906中,将一个或多个附近的扫描位置添加到作业中。在一些示例中,扫描一个或多个附近的扫描位置可以找到已被移动的设备或服务。在一些示例中,附近的扫描位置包括附近的地址。在一些示例中,附近的扫描位置包括附近的端口。在908中,确定作业部分结果是否标示出新设备或服务。如果确定作业部分结果未标示出新设备或服务,则过程结束。如果确定作业部分结果标示出新设备或服务,则流程转到910。在910中,将一个或多个后续扫描添加到作业中。在一些示例中,后续扫描包括收集新发现的设备或服务的进一步信息的扫描。在一些示例中,后续扫描包括后续探针。
尽管为了清楚理解的目的已经在一些细节上描述了前述示例,但是本发明不限于所提供的细节。存在许多实现本发明的替代方式。所公开的示例是说明性的而非限制性的。
Claims (20)
1.一种用于扫描网络的系统,包括:
接口,该接口被配置为:
接收要扫描网络地址集合的标示;以及
处理器,该处理器被配置为:
确定可用扫描节点集合;
确定使用该可用扫描节点集合扫描该网络地址集合的作业计划,其中该作业计划包括一个或多个作业部分;以及
对于一个或多个作业部分的一个作业部分:
选择该可用扫描节点集合中的一个扫描节点;并将该作业部分提供给该扫描节点。
2.根据权利要求1所述的系统,其中所述处理器通过匿名系统与所述扫描节点通信。
3.根据权利要求1所述的系统,其中所述一个或多个作业部分的一个作业部分包括要扫描所述网络地址集合的一部分的指令。
4.根据权利要求1所述的系统,其中所述一个或多个作业部分的一个作业部分包括端口集合。
5.根据权利要求1所述的系统,其中所述一个或多个作业部分的一个作业部分包括扫描命令集合。
6.根据权利要求1所述的系统,其中至少部分地基于所述一个或多个作业部分的一个作业部分来选择所述扫描节点。
7.根据权利要求1所述的系统,其中至少部分地基于所述扫描节点的物理位置来选择所述扫描节点。
8.根据权利要求1所述的系统,其中至少部分地基于近期未被选择的所述扫描节点来选择所述扫描节点。
9.根据权利要求1所述的系统,其中随机地或伪随机地选择所述扫描节点。
10.根据权利要求1所述的系统,其中所述处理器还被配置为将作业计划结果提供给数据库以进行存储。
11.根据权利要求1所述的系统,其中所述处理器还被配置为从所述扫描节点接收扫描结果。
12.根据权利要求11所述的系统,其中所述处理器还被配置为至少部分地基于扫描结果来修改所述作业计划。
13.根据权利要求12所述的系统,其中修改所述作业计划包括添加一个或多个作业部分的一个作业部分的扫描的重试,该一个或多个作业部分的一个作业部分的扫描的重试使用一个或多个不同的扫描节点。
14.根据权利要求12所述的系统,其中修改所述作业计划包括将一个或多个附近的扫描位置添加到所述作业部分。
15.根据权利要求12所述的系统,其中修改所述作业计划包括将一个或多个后续扫描添加到所述作业部分。
16.根据权利要求1所述的系统,其中该可用扫描节点集合是使用云计算硬件实现的。
17.根据权利要求1所述的系统,其中该可用扫描节点集合使用与用于扫描所述网络的所述系统不同的系统来实现。
18.根据权利要求1所述的系统,其中该可用扫描节点集合不包括公开可见信息以识别它们与网络扫描系统的关联。
19.一种用于扫描网络的方法,包括:
接收要扫描网络地址集合的标示;
使用处理器确定可用扫描节点集合;
确定使用该可用扫描节点集合扫描该网络地址集合的作业计划,其中该作业计划包括一个或多个作业部分;以及
对于一个或多个作业部分的一个作业部分:
选择该可用扫描节点集合中的一个扫描节点;以及将该作业部分提供给该扫描节点。
20.一种用于扫描网络的计算机程序产品,该计算机程序产品在非暂时性计算机可读存储介质中实现并且包括计算机指令用于:
接收要扫描网络地址集合的标示;
确定可用扫描节点集合;
确定使用该可用扫描节点集合扫描该网络地址集合的作业计划,其中该作业计划包括一个或多个作业部分;以及
对于一个或多个作业部分的一个作业部分:
选择该可用扫描节点集合中的一个扫描节点;
将该作业部分提供给该扫描节点。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/466,735 US11102231B2 (en) | 2017-03-22 | 2017-03-22 | Distributed scanning |
US15/466,735 | 2017-03-22 | ||
PCT/US2017/065430 WO2018174974A1 (en) | 2017-03-22 | 2017-12-08 | Distributed scanning |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110463154A true CN110463154A (zh) | 2019-11-15 |
Family
ID=63583770
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780088880.4A Pending CN110463154A (zh) | 2017-03-22 | 2017-12-08 | 分布式扫描 |
Country Status (8)
Country | Link |
---|---|
US (2) | US11102231B2 (zh) |
EP (2) | EP4213445A1 (zh) |
JP (1) | JP2020510368A (zh) |
KR (1) | KR20200006521A (zh) |
CN (1) | CN110463154A (zh) |
AU (1) | AU2017404749A1 (zh) |
CA (1) | CA3053260A1 (zh) |
WO (1) | WO2018174974A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IL263958B (en) * | 2018-12-25 | 2020-05-31 | Hayman Meir | Method and system for identifying vulnerability levels in devices operated on a given network |
CN114050940A (zh) * | 2022-01-10 | 2022-02-15 | 北京华云安信息技术有限公司 | 一种资产漏洞探测方法、装置和电子设备 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030212779A1 (en) * | 2002-04-30 | 2003-11-13 | Boyter Brian A. | System and Method for Network Security Scanning |
US7761918B2 (en) | 2004-04-13 | 2010-07-20 | Tenable Network Security, Inc. | System and method for scanning a network |
US20070005738A1 (en) | 2005-06-29 | 2007-01-04 | Microsoft Corporation | Automated remote scanning of a network for managed and unmanaged devices |
US8595839B2 (en) | 2011-01-21 | 2013-11-26 | International Business Machines Corporation | Selecting one of a plurality of scanner nodes to perform scan operations for an interface node receiving a file request |
US9043920B2 (en) * | 2012-06-27 | 2015-05-26 | Tenable Network Security, Inc. | System and method for identifying exploitable weak points in a network |
US9088606B2 (en) * | 2012-07-05 | 2015-07-21 | Tenable Network Security, Inc. | System and method for strategic anti-malware monitoring |
US9319424B2 (en) | 2013-06-18 | 2016-04-19 | Ccs-Inc. | Methods and systems for complying with network security requirements |
US9191409B2 (en) * | 2013-11-25 | 2015-11-17 | Level 3 Communications, Llc | System and method for a security asset manager |
US9729390B2 (en) | 2015-04-22 | 2017-08-08 | LARC Networks, Inc. | Dead drop network architecture |
US10129239B2 (en) * | 2015-05-08 | 2018-11-13 | Citrix Systems, Inc. | Systems and methods for performing targeted scanning of a target range of IP addresses to verify security certificates |
US9544327B1 (en) | 2015-11-20 | 2017-01-10 | International Business Machines Corporation | Prioritizing security findings in a SAST tool based on historical security analysis |
CN106161450B (zh) | 2016-07-20 | 2019-12-20 | 上海携程商务有限公司 | 分布式https监控方法 |
US20180270109A1 (en) * | 2017-03-15 | 2018-09-20 | Microsoft Technology Licensing, Llc | Management of network device configuration settings |
-
2017
- 2017-03-22 US US15/466,735 patent/US11102231B2/en active Active
- 2017-12-08 KR KR1020197027384A patent/KR20200006521A/ko unknown
- 2017-12-08 WO PCT/US2017/065430 patent/WO2018174974A1/en unknown
- 2017-12-08 EP EP23161139.3A patent/EP4213445A1/en active Pending
- 2017-12-08 CN CN201780088880.4A patent/CN110463154A/zh active Pending
- 2017-12-08 CA CA3053260A patent/CA3053260A1/en not_active Abandoned
- 2017-12-08 EP EP17902104.3A patent/EP3602993B1/en active Active
- 2017-12-08 JP JP2019552036A patent/JP2020510368A/ja active Pending
- 2017-12-08 AU AU2017404749A patent/AU2017404749A1/en not_active Abandoned
-
2021
- 2021-08-03 US US17/444,287 patent/US20210367965A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
KR20200006521A (ko) | 2020-01-20 |
US20210367965A1 (en) | 2021-11-25 |
CA3053260A1 (en) | 2018-09-27 |
EP3602993A4 (en) | 2020-10-14 |
US20180278626A1 (en) | 2018-09-27 |
EP3602993A1 (en) | 2020-02-05 |
EP3602993B1 (en) | 2023-04-19 |
JP2020510368A (ja) | 2020-04-02 |
US11102231B2 (en) | 2021-08-24 |
EP4213445A1 (en) | 2023-07-19 |
WO2018174974A1 (en) | 2018-09-27 |
AU2017404749A1 (en) | 2019-09-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104506510B (zh) | 用于设备认证的方法、装置及认证服务系统 | |
CN105210327B (zh) | 提供设备即服务 | |
CN110462589A (zh) | 本地装置协调器中的按需代码执行 | |
CN104935625B (zh) | 在面向服务的架构(soa)网络中发现服务的方法及系统 | |
CN103795768B (zh) | 远程访问的方法及设备 | |
CN108370379A (zh) | 带有隧道的设备管理 | |
CN108965036B (zh) | 配置跨公网设备互访方法、系统、服务器及存储介质 | |
CN112367684B (zh) | 流量控制方法、装置、存储介质及计算机设备 | |
CN110352401A (zh) | 具有按需代码执行能力的本地装置协调器 | |
CN109561060A (zh) | 一种分布式扫描方法、装置及系统 | |
JP2017118489A (ja) | 通信ネットワークを試験するための、マシン可読コードを利用するシステム及び方法 | |
CN109981745A (zh) | 一种日志文件处理方法及服务器 | |
CN105071965B (zh) | 一种网络设备的管理系统 | |
US20210367965A1 (en) | Distributed scanning | |
US7711780B1 (en) | Method for distributed end-to-end dynamic horizontal scalability | |
CN106469091B (zh) | 用于分配可用区的方法和装置 | |
CN110447031A (zh) | 使用提供的配置信息进行触发扫描 | |
US20180091496A1 (en) | Network mapping using a fingerprint | |
CN111181903B (zh) | 信息获取方法和装置、存储介质及电子装置 | |
US10958580B2 (en) | System and method of performing load balancing over an overlay network | |
CN106559271B (zh) | 一种资源接入方法及系统 | |
CN107124411B (zh) | 经典网络环境下的虚拟私有云实现方法、装置、以及系统 | |
CN105354148B (zh) | 一种数据处理方法及相关装置 | |
CN108055305A (zh) | 一种存储扩展方法及存储扩展装置 | |
CN108055329A (zh) | 内容分发方法、内容分发系统及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20191115 |