[发明专利]一种基于原子化功能的安全扫描系统及扫描方法有效
申请号: | 202010780393.8 | 申请日: | 2020-08-06 |
公开(公告)号: | CN111737697B | 公开(公告)日: | 2020-12-25 |
发明(设计)人: | 王永杰;钟晓峰;刘京菊;陆余良;杨国正;梁用语;黄晖;戚兰兰;卢灿举 | 申请(专利权)人: | 中国人民解放军国防科技大学 |
主分类号: | G06F21/56 | 分类号: | G06F21/56 |
代理公司: | 中国和平利用军工技术协会专利中心 11215 | 代理人: | 刘光德 |
地址: | 410073 湖*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 原子 功能 安全 扫描 系统 方法 | ||
1.一种基于原子化功能的安全扫描系统,其特征在于,所述安全扫描系统包括:原子库、脚本库和安全扫描引擎,所述安全扫描引擎包括脚本解释器、安全扫描调度执行器和原子接口;
所述原子库存储原子能力并保存原子能力的相关信息;所述原子能力是指从安全扫描功能中按安全扫描功能执行流程、依据剥离原则剥离出的独立的、功能相互区分的、不能再分的完成安全扫描功能的执行体;将原子能力对应的代码进行封装,并对外提供一个独立调用接口;所述原子能力还包括所述独立调用接口;
所述脚本库中具有多个安全扫描脚本,所述安全扫描脚本用于完成安全扫描任务;通过原子接口调用所需的原子能力,对所需的原子能力进行组装,生成安全扫描脚本;
所述安全扫描引擎通过脚本解释接口与脚本库进行交互,通过加载若干个安全扫描脚本,调用脚本解释器,根据脚本解释器解析结果获取加载的安全扫描脚本的执行流程语义,对各安全扫描脚本规划调度策略,确定各安全扫描脚本的调度顺序、执行时间、优先级,并执行解析出各安全扫描脚本中的原子能力,通过执行安全扫描脚本中的各个原子能力,得到安全扫描脚本的扫描结果;
其中,所述原子接口是针对每个原子能力的功能实现,并对外提供调用接口;脚本解释器对通过原子接口组装的安全扫描脚本进行语法、语义解析,完成执行流程解析;安全扫描调度执行器完成安全扫描脚本的加载、调度、执行和销毁;
所述安全扫描系统通过操作系统运行平台对底层设备进行扫描;
所述安全扫描引擎使用优化的索取等待算法利用安全扫描脚本之间的依赖关系对安全扫描脚本进行调度,所述优化的索取等待算法,包括:
步骤S8001:对需执行的全部安全扫描脚本中的每一个安全扫描脚本,通过直接取余法,计算每一个脚本ID的hash值,得到安全扫描脚本的hash散列表;新建脚本依赖关系单链表,根据每个脚本中定义的依赖关系,根据是前置还是后置,及每个脚本执行的先后顺序,将hash值保存在脚本依赖关系单链表内;
步骤S8002:按照脆弱性危险级别对所述安全扫描脚本排序;
步骤S8003:根据排序后的脆弱性危险级别从低到高选择一个安全扫描脚本;
步骤S8004:判断非空闲线程数是否达到最大线程数;若是,进入步骤S8005;若否,进入步骤S8006;
步骤S8005:等待一预设时长,进入步骤S8004;
步骤S8006:启动一空闲线程;
步骤S8007:根据hash值在脚本依赖关系单链表中查找是否存在被依赖的安全扫描脚本;若是,进入步骤S8008;若否,进入步骤S8009;
步骤S8008:转到被依赖的安全扫描脚本,进入步骤S8007;
步骤S8009:执行该被依赖的安全扫描脚本;
步骤S8010:递归该被依赖的安全扫描脚本的上一层脚本;
步骤S8011:判断是否所有安全扫描脚本均已执行完,若是,方法结束;若否,进入步骤S8007。
2.如权利要求1所述的基于原子化功能的安全扫描系统,其特征在于,原子库中能够新增原子能力,通过图形化管理工具将新增的原子能力注入到安全扫描引擎,并对安全扫描引擎进行重新编译以得到具有新增的原子能力的安全扫描引擎,具体包括:
步骤S401:用户发出创建新的原子能力的消息,图形化管理工具的原子能力扩充主界面显示创建新的原子能力窗口;
步骤S402:用户输入新的原子能力的原子类名称,并创建原子类对象,用以增加所述新的原子能力;更新原子能力列表配置文件,再更新原子库;
步骤S403:根据所述新的原子能力,创建该新的原子能力的原子类代码基本结构,将所述新的原子能力的原子类代码基本结构输入原子接口,实现该新的原子能力的代码并保存,保存该原子类对象;
步骤S404:启动安全扫描引擎,由安全扫描引擎读取该原子类对象,将所述原子类对象注入所述安全扫描引擎,编译所述安全扫描引擎,生成新的安全扫描引擎。
3.如权利要求1所述的基于原子化功能的安全扫描系统,其特征在于,安全扫描脚本的组装包括:
S1:从原子库选取原子能力子集;
S2:填写安全扫描脚本插件描述信息;
S3:确定原子能力子集中各原子能力的执行序列,配置原子能力子集中各原子能力的执行流程。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科技大学,未经中国人民解放军国防科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010780393.8/1.html,转载请声明来源钻瓜专利网。