[发明专利]一种自动渗透项目调度任务方法及系统有效
| 申请号: | 202210139076.7 | 申请日: | 2022-02-15 |
| 公开(公告)号: | CN114510352B | 公开(公告)日: | 2022-09-02 |
| 发明(设计)人: | 蔡晶晶;陈俊;郑皓;孙义;尤腾达;李博伟 | 申请(专利权)人: | 北京永信至诚科技股份有限公司 |
| 主分类号: | G06F9/50 | 分类号: | G06F9/50 |
| 代理公司: | 北京知呱呱知识产权代理有限公司 11577 | 代理人: | 陈晨 |
| 地址: | 100094 北*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 自动 渗透 项目 调度 任务 方法 系统 | ||
一种自动渗透项目调度任务方法及系统,获取用户输入的目标对象,配置扫描范围、扫描工作者和是否结果复用后下发扫描项目;调度器收到下发的扫描项目并转发至核心主控项目初始化器;核心主控项目初始化器根据目标对象的类型分解扫描项目的扫描任务;核心主控项目初始化器将分解的扫描任务发送到核心任务生成器;核心任务生成器对收到的扫描任务判断是否进行结果复用;若扫描项目配置为结果复用,则根据扫描项目的扫描工作者下发扫描任务到调度器;调度器收到扫描任务后,根据用户配置分配扫描任务的扫描工作者。本发明可支持大量任务的安全保存;每个工作者只消耗授权任务类型,可对队列中的任务进行控制;保证分布式系统负载均衡,响应速度快。
技术领域
本发明涉及一种自动渗透项目调度任务方法及系统,属于自动渗透项目处理技术领域。
背景技术
目前,Celery是一个专注于实时处理和任务调度的分布式任务队列,本身不是任务队列,是管理分布式任务队列的工具;Celery是语言无关的,提供了python接口支持,且封装了操作常见任务队列的各种操作,使用Celery可以快速进行任务队列的使用与管理。RabbitMQ是一个由Erlang语言开发的AMQP的开源实现。最初起源于金融系统,用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现较佳,具有可靠性、消息集群、高可用、多种协议、多语言客户端、消息跟踪机制、插件机制。
现有技术中,Celery实现负载需要安装大量依赖包才能使用,且平台只支持Linux,目前稳定的客户度仅支持Python。而RabbitMQ不支持大量堆积消息,持久化特性可能导致任务丢失,网络不稳定会导致消息重复,无法保证消息顺序,节点权限管理通过正则编写复杂有安全风险,无法限制工作者消耗消息类型,无法以消息为粒度控制队列中的数据,其通过amqp协议通信,客户端较重,无法针对任务目标与节点做距离优先级分发。
发明内容
为此,本发明提供一种自动渗透项目调度任务方法及系统,无需安装大量依赖包,实现高效的多维空间点索引,为每个任务分配距离任务地理位置最近的节点,可支持大量任务的安全保存。
为了实现上述目的,本发明提供如下技术方案:一种自动渗透项目调度任务方法,包括以下步骤:
(1)获取用户输入的目标对象,配置扫描范围、扫描工作者和是否结果复用后下发扫描项目;
(2)调度器收到下发的所述扫描项目并转发至核心主控项目初始化器;
(3)所述核心主控项目初始化器根据目标对象的类型分解所述扫描项目的扫描任务;
(4)所述核心主控项目初始化器将分解的扫描任务发送到核心任务生成器;
(5)所述核心任务生成器对收到的所述扫描任务判断是否进行结果复用;
(6)若所述扫描项目配置为结果复用,则根据所述扫描项目的扫描工作者下发所述扫描任务到所述调度器;
(7)所述调度器收到所述扫描任务后,根据用户配置分配所述扫描任务的扫描工作者。
作为自动渗透项目调度任务方法的优选方案,步骤(3)中:
若用户输入的目标对象为IP,则将IP分解为主IP扫描与IP的C段扫描;
若用户输入的目标对象为域名,则分解为域名解析主IP,域名本身的域名扫描任务和域名主IP的C段扫描;
步骤(5)中:
若所述扫描项目启动结果复用,则在结果缓存库中根据任务类型及任务元信息提取任务缓存结果;
若结果缓存库中存在历史缓存结果,则直接提取缓存结果发送到用户代理存储任务,并发送原始结果到核心主控任务分解器。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京永信至诚科技股份有限公司,未经北京永信至诚科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210139076.7/2.html,转载请声明来源钻瓜专利网。





