一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种自动化运维脚本安全保障方法与流程

2022-11-16 12:54:47 来源:中国专利 TAG:


1.本发明涉及自动化运维领域,主要是一种自动化运维脚本安全保障方法。


背景技术:

2.it系统通常可以根据参数配置和敏感命令来审核实际执行脚本,从而确保脚本在资源设备上安全执行。目前大多数方法的判定步骤如下:(1)预置规则:当系统安装后,自动调用初始化脚本对预置规则进行初始化,包括预置脚本敏感命令和参数值匹配规则,并允许根据需要再进行调整及指定脚本审核人员;(2)脚本解析:逐行读取脚本文件并根据脚本解析器进行命令行解析,输出解析后的命令行,并触发规则扫描;(3)规则扫描:根据匹配规则对解析后命令行进行正则运算,输出敏感命令行并记录;(4)动态审核:动态审核通知审核人员并对敏感命令行进行审核处理。
3.实际上,相较于人工操作的脚本,自动化运行的脚本更容易产生系统攻击行为。在脚本实际运行的过程中,时常会对系统资源进行自动化配置,进而引发通信量、运行脚本种类等多方面的变化。而现有的方法通常依赖解析脚本和规则匹配对脚本进行审核,而不考虑因业务变化而引起的系统配置通信量等方面变化。然而,通常攻击过程都是发生在特别有规律的运维系统中,现有技术的缺点在于仅基于解析脚本和规则匹配的方法审核脚本数据,未考虑对运维系统进行定时定量的人工干预。因此,对由于业务变化而引起的系统配置、通信量等方面改变的情况容易误判。


技术实现要素:

4.针对现有运维系统脚本安全保障方法中仅解析脚本数据本身数据、很大程度上依赖于规则匹配方法的问题,本发明提供一种自动化运维脚本安全保障方法,在预置规则的基础上引入了一种人工定义的脚本风险评估方法。
5.本发明的目的是通过如下技术方案来完成的。一种自动化运维脚本安全保障方法,该方法包括以下步骤:
6.(1)、预置规则:当系统安装后,自动调用初始化脚本对预置规则进行初始化,包括预置脚本敏感命令和参数值匹配规则,并允许根据需要再进行调整及指定脚本审核人员;
7.(2)、指定脚本审核人员进行人工干预,统计系统从当前时刻开始向前t时间内的运行情况,计算每一个业务的脚本占比,计算因每一个业务引起的系统资源的变化,计算t时间内每一个业务的上行和下行流量的比例,得到每一个业务的业务风险值,从而确定疑似危险脚本,并通知脚本审核人员进行审核处理;
8.(3)、脚本解析:对没有被认定为疑似危险脚本的脚本,形成脚本文件;从上至下逐行读取脚本文件,根据脚本解析器进行解析,输出解析后的命令行,并触发规则扫描;
9.(4)、规则扫描:对解析后的命令行进行逐行扫描处理,根据匹配规则表达式对解析后的命令行进行正则匹配运算,输出敏感命令行并记录;
10.(5)、动态审核:检查扫描结果是否存在敏感命令行,如存在敏感命令行,则通知脚
本审核人员进行审核处理。
11.具体方法如下:
12.(2.1)、观察当前时刻开始,向前的t时间内的运行情况;
13.(2.2)、计算业务ai的脚本占比pi,其中n表示业务数量,ai表示标号为i的业务,count(ai)表示业务ai在t时间内所调用的脚本数量;
14.(2.3)、计算因业务ai引起的系统资源的变化系统资源的指标数据包括磁盘空间占用率、cpu利用率、内存利用率、端口使用个数、启动项个数和数据库使用个数;
15.(2.4)、计算t时间内业务ai的上行流量和下行流量的比例ratioi,
16.(2.5)、计算业务风险值
17.其中,β1 β2 β3=1,β1,β2,β3为风险系数;
18.(2.6)、系统运行时,将业务风险值大于阈值的业务设为疑似危险业务,并将疑似危险业务中所调用的脚本设置为疑似危险脚本。
19.更进一步的,步骤(2.3)中,具体方法如下:具体地,统计业务ai在t时间内的系统资源的指标数据,计算其与正常情况下无任何应用运行时的指标数据的差异值并进行归一化处理,最终得到因业务ai引起的系统资源的变化
[0020][0021]
其中,k1 k2 k3 k4 k5 k6=1,k1,k2,k3,k4,k5,k6为比例系数,表示业务ai在正常情况下无任何应用运行时的磁盘空间占用率,diski表示业务ai的磁盘占用率,表示业务ai所被允许的最大的磁盘占用率;表示业务ai在正常情况下无任何应用运行时的cpu利用率,cpui表示业务ai的cpu利用率,表示业务ai所被允许的最大的cpu利用率;表示业务ai在正常情况下无任何应用运行时的内存利用率,memi表示业务ai的内存利用率,表示业务ai所被允许的最大的内存利用率;表示业务ai在正常情况下无任何应用运行时的端口使用个数,porti表示业务ai的端口使用个数,表示业务ai所被允许的最大的端口使用个数;表示业务ai在正常情况下无任何应用运行时的启动项个数,starti表示业务ai的启动项个数,表示业务ai所被允许的最大的启动项个数;表示业务ai在正常情况下无任何应用运行时的数据库使用个数,dbi表示业务ai的数据库使用个数,表示业务ai所被允许的最大的数据库使用个数。
[0022]
更进一步的,步骤(2.4)中,具体方法如下:
[0023]
outi表示上行流量,ini表示下行流量;
[0024]
outj表示业务ai所对应的第j条上行流量的长度,inj表示业务ai所对应的第j条下行流量的长度,m和n分别表示业务ai在t时间内上行流量和下行流量的流量个数。
[0025]
本发明的有益效果为:本发明根据当前系统运行情况对系统进行定时定量的人工干预,可以保障运维系统安全运行,避免了由于业务变化而引起的误判。由于本发明无需大量人为操作,计算量小,且分析准确,因此可大量减少误判,提高监测覆盖面与准确率。
附图说明
[0026]
图1为本发明的自动化运维脚本执行的安全保障方法的流程示意图;
[0027]
图2为人工干预选取疑似危险脚本文件的流程示意图;
[0028]
图3为脚本解析流程示意图;
[0029]
图4为规则扫描流程示意图。
具体实施方式
[0030]
下面将结合附图和实施例对本发明做详细的介绍:
[0031]
如图1所示,一种自动化运维脚本安全保障方法,在系统初始化时先进行规则预置,然后通过4个模块的运行来实现:预置规则和人工干预模块、脚本解析模块、规则扫描模块、动态审核模块。其中:1.预置规则和人工干预模块,通过计算业务风险值得到疑似危险脚本文件。2.脚本解析模块,通过脚本解析器对脚本从上至下逐行读取解析并输出解析后的脚本,再触发调用规则扫描对解析后的脚本进行规则匹配运算;3.规则扫描模块,获取解析后输出的脚本行,根据扫描规则进行正则匹配运算,输出敏感命令行并保存;4.动态审核模块,检查扫描结果是否存在敏感命令行,存在则自动通知审核人员进行审核处理,否则不处理。通常,脚本文件被执行的方式有三种:手工执行、定时执行和第三方调用执行。具体方法包括以下步骤:
[0032]
(1)、预置规则:当系统安装后,自动调用初始化脚本对预置规则进行初始化,包括预置脚本敏感命令和参数值匹配规则,并允许根据需要再进行调整及指定脚本审核人员;
[0033]
(2)、指定脚本审核人员进行人工干预,如图2所示,本发明从系统所运行业务的三个维度来确定疑似危险脚本,分别是每一个业务的运行脚本占比、因业务变化引起的系统资源的变化以及上下行流量的比例,最终为每一个业务计算业务风险值,并将该值大于0.7时所对应的脚本文件设置为疑似危险脚本文件,具体步骤如下:
[0034]
(2.1)、观察当前时刻开始,向前的t时间内的运行情况;
[0035]
(2.2)、计算业务ai的脚本占比pi,具体地,统计每一个业务ai在t时间内其所使用的脚本序列,其中n表示业务数量,ai表示标号为i
的业务,count(ai)表示业务ai在t时间内所调用的脚本数量;
[0036]
(2.3)、计算因业务ai引起的系统资源的变化系统资源的指标数据包括磁盘空间占用率、cpu利用率、内存利用率、端口使用个数、启动项个数和数据库使用个数;
[0037]
具体地,统计业务ai在t时间内的系统资源的指标数据,计算其与正常情况下无任何应用运行时的指标数据的差异值并进行归一化处理,最终得到因业务ai引起的系统资源的变化
[0038][0039]
其中,k1 k2 k3 k4 k5 k6=1,k1,k2,k3,k4,k5,k6为比例系数,可预设为1/6,表示业务ai在正常情况下无任何应用运行时的磁盘空间占用率,diski表示业务ai的磁盘占用率,表示业务ai所被允许的最大的磁盘占用率;表示业务ai在正常情况下无任何应用运行时的cpu利用率,cpui表示业务ai的cpu利用率,表示业务ai所被允许的最大的cpu利用率;表示业务ai在正常情况下无任何应用运行时的内存利用率,memi表示业务ai的内存利用率,表示业务ai所被允许的最大的内存利用率;表示业务ai在正常情况下无任何应用运行时的端口使用个数,porti表示业务ai的端口使用个数,表示业务ai所被允许的最大的端口使用个数;表示业务ai在正常情况下无任何应用运行时的启动项个数,starti表示业务ai的启动项个数,表示业务ai所被允许的最大的启动项个数;表示业务ai在正常情况下无任何应用运行时的数据库使用个数,dbi表示业务ai的数据库使用个数,表示业务ai所被允许的最大的数据库使用个数。
[0040]
(2.4)、计算t时间内业务ai的上行流量和下行流量的比例ratioi,
[0041]
outi表示上行流量,ini表示下行流量;
[0042]
outj表示业务ai所对应的第j条上行流量的长度,inj表示业务ai所对应的第j条下行流量的长度,m和n分别表示业务ai在t时间内上行流量和下行流量的流量个数。
[0043]
(2.5)、计算业务风险值
[0044]
其中,β1 β2 β3=1,β1,β2,β3为风险系数,可预设为1/3;
[0045]
(2.6)、系统运行时,将业务风险值大于阈值(可预设为0.7)的业务设为疑似危险业务,并将疑似危险业务中所调用的脚本设置为疑似危险脚本。
[0046]
(3)、脚本解析:对没有被认定为疑似危险脚本的脚本,形成脚本文件(即把收集的脚本存在一个文件里);从上至下逐行读取脚本文件,根据脚本解析器进行解析,输出解析后的命令行,并触发规则扫描;
[0047]
图3详细描述了本发明中的脚本解析过程:当执行脚本时,首先逐行读取脚本内容;其次读取每一行脚本内容通过脚本解析器进行解析,并输出cmdline,如“脚本文件行内容:rm

rf${path},path参数值:/,输出cmdline:{“linenum”:1,”parsedcmdline”:”rm

rf/”}”;最后触发调用规则扫描对cmdline进行扫描。
[0048]
(4)、规则扫描:如图4所示,对解析后的命令行进行逐行扫描处理,根据匹配规则表达式对解析后的命令行进行正则匹配运算,输出敏感命令行并记录;
[0049]
图4详细描述了本发明中的规则扫描过程:当被触发调用时,首先读取解析后的命令行cmdline;其次读取命令行匹配规则对解析后的命令行cmdline进行正则运算,并输出敏感命令行,如“cmdline:{“linenum”:1,”parsedcmdline”:”rm

rf/”},cmdregex:rm

rf/,输出resultline:{“linenum”:1,”parsedcmdline”:”rm

rf/”}“;最后将所有敏感命令行保存并和脚本文件建立关系,作为动态审核自动通知及审核人员审核脚本依据。
[0050]
(5)、动态审核:检查扫描结果是否存在敏感命令行,如存在敏感命令行,则通知脚本审核人员进行审核处理,否则不处理。
[0051]
可以理解的是,对本领域技术人员来说,对本发明的技术方案及发明构思加以等同替换或改变都应属于本发明所附的权利要求的保护范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献