logo好方法网

端口扫描方法、装置、设备及存储介质


技术摘要:
本公开关于一种端口扫描方法、装置、设备及存储介质,属于计算机技术领域。本实施例提供了一种基于优先级队列的端口扫描方法,将粗粒度的端口扫描任务拆分为多个细粒度的子任务,根据多个子任务的优先级,将多个子任务存入优先级队列,按照优先级队列的队列顺序,对多  全部
背景技术:
端口可以理解为服务器与外界通信交流的出口。一个服务器会具有一个或多个端 口,服务器开放端口后,客户端可以访问服务器的端口,从而使用服务器提供的服务。为了 避免端口被入侵后造成的安全隐患,需要对服务器的端口进行扫描,从而保障服务器存储 的信息安全。因此,端口扫描技术已经广泛应用在资产发现以及漏洞扫描等场景中。 相关技术中,会预先确定待扫描的服务器,根据该服务器上需要被扫描的端口的 端口号,设置待扫描的端口号列表,从端口号列表中第一个端口号开始,按照端口号从小到 大的顺序,依次对每个端口号对应的端口进行扫描,直至端口号列表对应的所有端口均已 扫描完成。 端口号列表对应的所有端口中经常存在部分端口是需要优先扫描的,而采用上述 方法时,会导致这些需要优先扫描的端口无法被及时扫描,影响了需要优先扫描的端口的 扫描速度。
技术实现要素:
本公开提供一种端口扫描方法、装置、设备及存储介质,以至少解决相关技术中需 要优先扫描的端口无法得到及时扫描的问题。本公开的技术方案如下: 根据本公开实施例的第一方面,提供一种端口扫描方法,包括: 获取端口扫描任务,所述端口扫描任务用于指示对多个服务器包括的端口进行扫 描; 将所述端口扫描任务拆分为多个子任务,每个子任务用于指示对所述多个服务器 中的部分服务器包括的端口进行扫描; 根据所述多个子任务的优先级,将所述多个子任务存入优先级队列,所述优先级 队列用于按照优先级从高到低的顺序保存所述多个子任务; 按照所述优先级队列的队列顺序,对所述多个服务器包括的端口依次进行扫描。 可选地,所述根据所述多个子任务的优先级,将所述多个子任务存入优先级队列, 包括: 对于所述多个子任务中的每个子任务,若所述子任务为自定义扫描任务,根据所 述自定义扫描任务对应的第一优先级,将所述子任务存入所述优先级队列,所述自定义扫 描任务用于对终端发送的IP地址对应的端口、终端发送的网段对应的端口或终端发送的端 口号对应的端口进行扫描。 可选地,所述根据所述多个子任务的优先级,将所述多个子任务存入优先级队列, 包括: 4 CN 111580946 A 说 明 书 2/17 页 对于所述多个子任务中的每个子任务,若所述子任务为周期性扫描任务,根据所 述周期性扫描任务对应的第二优先级,将所述子任务存入所述优先级队列,所述周期性扫 描任务用于指示每隔预设时间周期扫描一次所述多个服务器包括的端口。 可选地,所述根据所述多个子任务的优先级,将所述多个子任务存入优先级队列, 包括: 对于所述多个子任务中的每个子任务,若所述子任务为全端口扫描任务,根据所 述全端口扫描任务对应的第三优先级,将所述子任务存入所述优先级队列,所述全端口扫 描任务用于指示对所述多个服务器中至少一个服务器开放的所有端口进行扫描。 可选地,所述根据所述多个子任务的优先级,将所述多个子任务存入优先级队列, 包括: 对于所述多个子任务中的每个子任务,若所述子任务为高危端口扫描任务,根据 所述高危端口扫描任务对应的第四优先级,将所述子任务存入所述优先级队列,所述高危 端口扫描任务用于指示对所述对多个服务器包括的端口中的高危端口进行扫描。 可选地,所述按照所述优先级队列的队列顺序,对所述多个服务器包括的端口依 次进行扫描,包括: 根据分布式系统中执行设备的带宽占用情况,为所述端口扫描任务分配目标执行 设备,所述目标执行设备的带宽占用情况满足条件; 调度所述目标执行设备按照所述优先级队列的队列顺序,对所述多个服务器包括 的端口依次进行扫描。 可选地,所述端口扫描任务包括端口开放性扫描任务或服务识别扫描任务中的至 少一项,所述端口开放性扫描任务用于扫描端口是否为开放的端口,所述服务识别扫描任 务用于扫描所述开放的端口提供的服务。 可选地,所述按照所述优先级队列的队列顺序,对所述多个服务器包括的端口依 次进行扫描之后,所述方法还包括: 根据所述多个服务器包括的端口中开放的端口,查询所述开放的端口提供的默认 服务; 建立所述开放的端口的扫描结果与所述默认服务之间的关联关系。 根据本公开实施例的第二方面,提供一种端口扫描装置,包括: 获取单元,被配置为执行获取端口扫描任务,所述端口扫描任务用于指示对多个 服务器包括的端口进行扫描; 拆分单元,被配置为执行将所述端口扫描任务拆分为多个子任务,每个子任务用 于指示对所述多个服务器中的部分服务器包括的端口进行扫描; 存入单元,被配置为执行根据所述多个子任务的优先级,将所述多个子任务存入 优先级队列,所述优先级队列用于按照优先级从高到低的顺序保存所述多个子任务; 扫描单元,被配置为执行按照所述优先级队列的队列顺序,对所述多个服务器包 括的端口依次进行扫描。 可选地,所述存入单元,被配置为执行对于所述多个子任务中的每个子任务,若所 述子任务为自定义扫描任务,根据所述自定义扫描任务对应的第一优先级,将所述子任务 存入所述优先级队列,所述自定义扫描任务用于对终端发送的IP地址对应的端口、终端发 5 CN 111580946 A 说 明 书 3/17 页 送的网段对应的端口或终端发送的端口号对应的端口进行扫描。 可选地,所述存入单元,被配置为执行对于所述多个子任务中的每个子任务,若所 述子任务为周期性扫描任务,根据所述周期性扫描任务对应的第二优先级,将所述子任务 存入所述优先级队列,所述周期性扫描任务用于指示每隔预设时间周期扫描一次所述多个 服务器包括的端口。 可选地,所述存入单元,被配置为执行对于所述多个子任务中的每个子任务,若所 述子任务为全端口扫描任务,根据所述全端口扫描任务对应的第三优先级,将所述子任务 存入所述优先级队列,所述全端口扫描任务用于指示对所述多个服务器中至少一个服务器 开放的所有端口进行扫描。 可选地,所述存入单元,被配置为执行对于所述多个子任务中的每个子任务,若所 述子任务为高危端口扫描任务,根据所述高危端口扫描任务对应的第四优先级,将所述子 任务存入所述优先级队列,所述高危端口扫描任务用于指示对所述对多个服务器包括的端 口中的高危端口进行扫描。 可选地,所述扫描单元,被配置为执行根据分布式系统中执行设备的带宽占用情 况,为所述端口扫描任务分配目标执行设备,所述目标执行设备的带宽占用情况满足条件; 调度所述目标执行设备按照所述优先级队列的队列顺序,对所述多个服务器包括的端口依 次进行扫描。 可选地,所述端口扫描任务包括端口开放性扫描任务或服务识别扫描任务中的至 少一项,所述端口开放性扫描任务用于扫描端口是否为开放的端口,所述服务识别扫描任 务用于扫描所述开放的端口提供的服务。 可选地,所述端口扫描装置还包括: 查询单元,被配置为执行根据所述多个服务器包括的端口中开放的端口,查询所 述开放的端口提供的默认服务; 建立单元,被配置为执行建立所述开放的端口的扫描结果与所述默认服务之间的 关联关系。 根据本公开实施例的第三方面,提供一种电子设备,包括: 一个或多个处理器; 用于存储所述处理器可执行指令的一个或多个存储器; 其中,所述一个或多个处理器被配置为执行所述指令,以实现上述端口扫描方法。 根据本公开实施例的第四方面,提供一种存储介质,当所述存储介质中的指令由 电子设备的处理器执行时,使得所述电子设备能够执行上述端口扫描方法。 根据本公开实施例的第五方面,提供一种计算机程序产品,包括一条或多条指令, 所述一条或多条指令由电子设备的处理器执行时,使得所述电子设备能够执行上述端口扫 描方法。 本公开的实施例提供的技术方案至少带来以下有益效果: 本实施例提供了一种基于优先级队列的端口扫描方法,将粗粒度的端口扫描任务 拆分为多个细粒度的子任务,根据多个子任务的优先级,将多个子任务存入优先级队列,按 照优先级队列的队列顺序,对多个服务器包括的端口依次进行扫描。由于优先级队列按照 优先级从高到低的顺序保存多个子任务,使得优先级高的子任务被先从优先级队列取出, 6 CN 111580946 A 说 明 书 4/17 页 因而优先级高的子任务对应的端口会被优先扫描,从而保证了需要优先扫描的端口能够被 及时扫描,因而提高了需要优先扫描的端口的扫描速度。 应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不 能限制本公开。 附图说明 此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施 例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。 图1是根据一示例性实施例示出的一种端口扫描系统的结构框图; 图2是根据一示例性实施例示出的一种端口扫描方法的流程图; 图3是根据一示例性实施例示出的一种端口扫描方法的流程图; 图4是根据一示例性实施例示出的一种端口扫描方法的流程图; 图5是根据一示例性实施例示出的一种端口扫描装置的框图; 图6是根据一示例性实施例示出的一种终端的框图; 图7是根据一示例性实施例示出的一种服务器的框图。
下载此资料需消耗2积分,
分享到:
收藏