掌桥专利:专业的专利平台
掌桥专利
首页

一种监控服务器

文献发布时间:2023-06-19 18:37:28


一种监控服务器

技术领域

本发明涉及信息安全技术领域,特别是涉及一种监控服务器。

背景技术

当前,工业控制系统会在工控网络环境下实现互联互通。工控网络环境下,多个被监测设备会跟网络监控平台的总控设备通信连接,总控设备通过安装在各个设备上的代理包对各被监测设备进行监测,以确保工控网络环境中的网络数据安全稳定并且不发生泄露。网络监控平台会工况环境下的每个被监测设备都扮演着对应的角色。为确保角色功能安全实现,每个被监测设备会对角色执行程序即进程的身份进行设置,只有值得信任的白名单进程才被允许执行。目前的白名单进程设置方式是通过一个预设的白名单进程表手动进行选择设置。这种设置方式由于每个设备都是按照既定的白名单进程表进行选择生成对应的白名单进程,这种白名单进程表并没有经过时间验证,会导致一些白名单进程对某些设备不适用,会存在安全隐患。此外,现有的工控网络环境下,对于需要更新代理包时,会随机选择一个时间进行更新,由于网络带宽有限,数据流量大,会导致网络堵塞而使得数据传输异常的问题。

发明内容

针对上述技术问题,本发明实施例提供一种监控服务器,用于至少解决上述技术问题之一。

本发明采用的技术方案为:

本发明实施例提供一种监控服务器,所述监控服务器与m个初始设备通信连接,其中,在检测到需要升级的代理包时,所述监控服务器用于执行计算机程序以实现如下步骤:

S200,获取发送数据包大小列表A=(A1,A2,…,Ai,…,Am)和版本列表V=(V1,V2,…,Vi,…,Vm),Ai为初始设备i发送的单个数据包大小,Vi为初始设备i对应的当前版本,i的取值为1到m;

S210,基于A、B、当前网络带宽K以及每个初始设备升级所需要的代理包的大小获取设定时间段对应的升级信息表;

S210具体包括:

S212,获取设定时间段T0内,当前工况环境下需要发送的数据包总量R,以及初始设备i升级所需要的代理包大小C

S214,如果

S216,获取设定时间段T0内的任一设定时间区间T0

S218,获取T0

S220,基于当前的升级指令标识,按照所述升级信息表执行对应的升级操作。

本发明至少具有以下有益效果:

本发明实施例提供的监控服务器,在检测到需要对初始设备进行升级时,基于网络带宽、代理包大小、初始设备发送的单个数据包大小和版本获取到设定时间段内的每个时间区间的每个子时间区间所能升级的设备数量,然后基于对应的升级指令标识执行相应的升级操作,由于在对设备进行升级时,由于考虑了网络带宽,能够避免由于升级而影响到网络带宽,即能够避免影响数据包的发送。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明一实施例提供的监控服务器执行计算机程序实现的方法流程图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例提供一种监控服务器,所述监控服务器与m个初始设备通信连接。在本发明实施例中,初始设备可为工况网络环境与监控服务器连接的被监测设备。

其中,在检测到需要升级的代理包时,所述监控服务器用于执行计算机程序以实现如图1所示的步骤:

S200,获取发送数据包大小列表A=(A1,A2,…,Ai,…,Am)和版本列表V=(V1,V2,…,Vi,…,Vm),Ai为初始设备i发送的单个数据包大小,Vi为初始设备i对应的当前版本,i的取值为1到m。

初始设备发送的单个数据包大小可事先存在存储器中。一般,每个初始设备会按照设定周期发送相同大小的数据包。

S210,基于A、B、当前网络带宽K以及每个初始设备升级所需要的代理包的大小获取设定时间段对应的升级信息表。K的单位为bit/s。

进一步地,S210可具体包括:

S212,获取设定时间段T0内,当前工况环境下需要发送的数据包总量R,以及初始设备i升级所需要的代理包大小C

在本发明实施例中,设定时间段可基于实际需要进行设置,例如,可为1小时或者1天。

在本发明实施例中,

在本发明实施例中,A0为升级为代理包对应的版本所需要发送给每个初始设备的代理包的大小。在本实施例中,如果每个初始设备的当前版本均相同,则A0等于任一设备升级所需要的代理包的大小,如果初始设备的当前版本存在不同,则A0=max(C

S214,如果

S216,获取设定时间段T0内的任一设定时间区间T0

其中,T0

在本发明实施例中,△t1和△t2可基于实际需要进行设置。在一个示例中,△t1可等于0.5小时,或者等于1小时等,△t2=△t1/J,J为大于1的整数。优选,△t2=△T

本领域技术人员知晓,当n(sc,H)=0时,退出当前升级控制程序。

S218,获取T0

S220,基于当前的升级指令标识,按照所述升级信息表执行对应的升级操作。

在本发明实施例中,升级指令可包括第一升级指令和第二升级指令,可使用不同的标识标识,第一升级指令用于表示执行自动升级操作,第二升级指令用于表示执行手动升级操作。第一升级指令标识例如可使用AT表示,第二升级指令标识例如可使用H0表示。

进一步地,S220可具体包括:

S2201,如果当前的升级指令标识为第一升级指令标识,则按照所述升级信息表依次在设定时间段的每个时间区间的每个时间片内对对应数量的设备进行升级操作。

在本发明实施例中,可在每个时间片中的固定时刻执行相应的升级操作,例如,可在每个时间片的起始时刻或者结束时刻或者中间时刻执行对应的升级操作。

在本发明实施例中,可按照初始设备的设备编号由小到大依次进行升级操作。每个初始设备会设置有对应的设备编号。

S2202,如果当前的升级指令标识为第二升级指令标识,则按照所述升级信息表依次在设定时间段的每个时间区间的每个时间片内生成用于提示在该子时间片内升级对应数量的设备的提示信息,例如,可生成类似“在XXX-YYY期间,您可对X个设备进行升级”的提示信息。优选,可生成类似“在XXX-YYY期间,您可对X个设备进行升级,设备编号包括…”。

在本发明实施例中,可在每个子时间片中的固定时刻生成对应的提示信息,例如,可在每个时间片的起始时刻或者结束时刻或者中间时刻执行对应的升级操作。

本实施例中,在检测到需要对初始设备进行升级时,基于网络带宽、代理包大小、初始设备发送的单个数据包大小和版本获取到设定时间段内的每个时间区间的每个子时间区间所能升级的设备数量,然后基于对应的升级指令标识执行相应的升级操作,由于在对设备进行升级时,由于考虑了网络带宽,能够避免由于升级而影响到网络带宽,即能够避免影响数据包的发送。

在本发明另一实施例中,提供一种监控服务器,在检测到需要升级的代理包时,所述监控服务器用于执行计算机程序以实现以下步骤:

S300,获取发送数据包大小列表A=(A1,A2,…,Ai,…,Am),Ai为初始设备i发送的单个数据包大小。

初始设备发送的单个数据包大小可事先存在存储器中。一般,每个初始设备会按照设定周期发送相同大小的数据包。

S310,基于A、当前网络带宽K以及每个初始设备升级所需要的代理包的大小获取设定时间段对应的升级信息表。

进一步地,S310可具体包括:

S312,获取设定时间段T0内,当前工况环境下需要发送的数据包总量R。

在本发明实施例中,设定时间段可基于实际需要进行设置,例如,可为1小时或者1天。

在本发明实施例中,

S314,如果(TS0*K-R)≥m*A0,输出第六标识,第六标识用于表征T0内的除发送数据包的流量之外的流量够升级m个初始设备,执行S216。第六标识例如可用000或者0001表示。

在本实施例中,A0为升级为代理包对应的版本所需要发送给每个初始设备的代理包的大小。在本实施例中,每个初始设备的当前版本均相同,即发送给每个设备的代理包的大小均为A0。

S316,获取设定时间段T0内的任一设定时间区间T0

其中,T0

在本发明实施例中,△t1和△t2可基于实际需要进行设置。在一个示例中,△t1可等于0.5小时,或者等于1小时等,△t2=△t1/J,J为大于1的整数。优选,△t2=△T

S318,获取设定时间段T0对应的升级信息表,所述升级信息表的第hc行包括(T0

S320,基于当前的升级指令标识,按照所述升级信息表执行对应的升级操作。

在本发明实施例中,升级指令可包括第一升级指令和第二升级指令,可使用不同的标识标识,第一升级指令用于表示执行自动升级操作,第二升级指令用于表示执行手动升级操作。第一升级指令标识例如可使用AT表示,第二升级指令标识例如可使用H0表示。

进一步地,S320可具体包括:

S3201,如果当前的升级指令标识为第一升级指令标识,则按照所述升级信息表依次在设定时间段的每个时间区间内对对应数量的设备进行升级操作。

在本发明实施例中,可在每个时间区间中的固定时刻执行相应的升级操作,例如,可在每个时间区间的起始时刻或者结束时刻或者中间时刻执行对应的升级操作。

在本发明实施例中,可按照初始设备的设备编号由小到大依次进行升级操作。每个初始设备会设置有对应的设备编号。

S3202,如果当前的升级指令标识为第二升级指令标识,则按照所述升级信息表依次在设定时间段的每个时间区间内生成用于提示在该时间区间内升级对应数量的设备的提示信息,例如,可生成类似“在XXX-YYY期间,您可对X个设备进行升级”的提示信息。优选,可生成类似“在XXX-YYY期间,您可对X个设备进行升级,设备编号包括…”。

在本发明实施例中,可在每个时间区间中的固定时刻生成对应的提示信息,例如,可在每个时间区间的起始时刻或者结束时刻或者中间时刻执行对应的升级操作。

进一步地,在本发明实施例中,S314之后还包括如下步骤:

S315,如果(TS0*K-R)<m*A0,输出第七标识,并获取需要升级的设定时间段的数量

S317,获取S个设定时间段中的任一设定时间段T0内的任一设定时间区间T0

S319,获取每个设定时间段T0对应的升级信息表,所述升级信息表的第hc行包括(T0

本实施例中,在检测到需要对初始设备进行升级时,基于网络带宽、代理包大小和初始设备发送的单个数据包大小获取到设定时间段内的每个时间区间所能升级的最多的设备数量,然后基于对应的升级指令标识执行相应的升级操作,由于在对设备进行升级时,由于考虑了网络带宽,能够避免由于升级而影响到网络带宽,即能够避免影响数据包的发送。由于将时间区间作为升级基准时间,与前述实施例将子时间区间作为升级基准时间相比,能够减少升级操作。

进一步地,在本发明实施例中,所述监控服务器还用于在第一预设时间段内获取每个初始设备的白名单进程,具体可包括以下步骤:

S1,获取工况环境下的初始设备对应的初始进程列表组P=(P1,P2,…,Pi,…,Pm),其中,任一初始设备i的初始进程列表Pi=(P

初始进程为初始设备中自带的所有进程,包括值得信任的正常进程和不值得信任的异常进程。

S2,对于Pi,获取P

在本发明实施例中,初始进程状态可包括正常状态和异常状态,某个进程处于正常状态是指该进程的执行不会对工况网络环境的安全造成威胁,某个进程处于异常状态是指该进程的执行会对工况网络环境的安全造成威胁或者造成潜在威胁。

在本发明实施例中,每个进程的状态可基于现有方式获取。第一预设时间段为获取白名单进程而设置的时间段,可基于实际需要进行设置。在一个非限制示意性实施例中,第一预设时间段可为7天至30天,优选,可为30天,以使得进程运行时间尽量长,从而使得获取的白名单进程更准确。时间区间也可基于实际需要进行设置,在一个示意性实施例中,时间区间的单位可为1天。

S3,遍历PS

在本发明一示意性实施例中,时间区间可为1天,这样,C

S4,如果C

S5,如果第一预设时间段内PS

S6,将PS

S7,将PS

本实施例中,由于在设定时间段内获取初始设备中的某个进程出现异常状态的次数大于设定次数阈值将该进程设置为黑名单,否则,设置为白名单,即所有的白名单进程均是通过实际运行才得到的,即经过时间验证获取的,使得白名单进程更加准确,能够减少安全隐患。

在本发明另一实施例中,S4被替换为:

S42,如果满足C

与前述实施例相比,本实施例中,如果进程出现该同一异常状态的天数大于设定天数阈值的设备为多个时,将该进程设置为黑名单,否则,设置为白名单,同样能够使得白名单进程更加准确,能够减少安全隐患。

在本发明另一实施例中,还包括:

S8,基于S6,得到初始设备的白名单进程列表PW=(PW1,PW2,…,PWi,…,PWm),其中,PWi=(PWi

S9,在检测到当前工况环境下加入新的目标设备时,基于PW,向目标设备推荐对应的白名单进程。

进一步地,S9具体包括:

S91,获取目标设备对应的目标进程列表PB=(PB1,PB2,…,PBv,…,PBx),PBv为目标设备对应的第v个目标进程,v的取值为1到x,x为目标设备对应的目标进程的数量。

S92,基于PW,获取PB对应的相似度列表F=(F1,F2,…,Fi,…,Fm),Fi为目标设备与第i个初始设备之间的相似度。

S92可具体包括:

S921,获取PBv的进程特征向量CPBv=(CPBv

在本发明实施例中,所述进程特征可包括进程的MD5值、数字签名和地址中的至少一个。优选,可包括进程的MD5值、数字签名和地址。

S922,基于CPB和CP

在本发明实施例中,两个进程特征之间的相似度可采用现有的相似度算法获取,例如,现有的字符串相似度计算方法等。

在本发明实施例中,进程特征的权重可基于实际情况进行设置。在一个示例中,进程的MD5值的权重可大于进程的数字签名的权重,进程的数字签名的权重可大于进程的地址的权重。

S923,如果max(F

S924,设置v=v+1,如果v≤x,执行S922;否则,执行S925。

S925,获取Fi=C/f(i)。

S93,如果maxF≥S1,将maxF对应的白名单进程推荐给目标设备并基于推荐的白名单进程对PB中对应的进程进行标记,S1为第一预设相似度阈值,可基于实际情况进行设置,S1可大于S2。

S91至S93的技术效果在于,由于基于目标设备和初始设备之间的相似度来推荐对应的白名单进程,推荐的白名单进程时经过时间验证的,因此,使得推荐的白名单进程更加适合目标设备,能够减少安全隐患。

进一步地,本发明另一实施例中,所述监控服务器还用于执行计算机程序以实如下步骤:

S94,获取PB中除标记为白名单进程之外的进程作为候选进程。

S95,将任一候选进程分别与每个初始设备的白名单进程表做交集,如果交集不为Null的数量大于C2,输出第五标识,第五标识用于表征该候选进程在较多设备中存在,值得信任,则将该候选进程作为白名单进程推荐给目标设备;C2为第二设定阈值,可基于实际需要设置。第五标识可为01或者10。

S94至S95的技术效果在于,相比于S91至S93,能够使得推荐的白名单进程更加准确。

在本发明实施例中,任一设备的任一进程的MD5值通过如下步骤获取:

S9220,对于任一初始设备的任一进程P,如果P的大小G<G0,则获取A的MD5值;如果G≥G0,则将A存入待处理进程列表L中;G0为预设字节阈值,可基于实际需要进行设置,例如,可为1KB~2KB。

S9221,基于L,获取N个区间中的每个区间内的进程数量,其中,N个区间为将L中的最小进程大小和最大进程大小之间的进程大小N等分得到的区间,即第1区间的范围为[G

S9222,对于任一区间c,分别从区间c中的所有进程中获取大小为q的数据并对获取的数据进行MD5化处理,得到对应的MD5值;c的取值为1到N,q的初始值为R1,R1为预设初始进程大小,可基于实际需要设置,在一个示例中,R1可等于G0。

S9223,获取区间c中大小为q的数据对应MD5值中的任意两个MD5值的相似度,如果任意两个MD5值的相似度小于第三预设相似度阈值,则将q作为获取区间c中的进程数据的基准大小,执行S9225;否则,执行S9225。第三预设相似度阈值可基于实际需要进行设置,例如大于95%。

S9224,设置q=q+△G2,如果q<Rg,执行S9222;否则,执行S9225;△G2为第二设定步长大小,可基于实际需要进行设置,在一个示例中,G2=G0;Rg为设定进程大小阈值,Rg=R1+E*△G2,E为≥2的整数。

S9225,获取max(Q1,Q2,…,Qf,…,Q

S9226,设置c=c+1,如果c≤N,执行S9222;否则,退出控制程序。

S9220至S9226的技术效果在于,对于进程大小较大的进程,可以选择合适大小的进程数据进行MD5化处理,而不是将整个进程数据进行MD5化处理,能够减少计算时间,节约计算资源。

进一步地,在本发明另一实施例中,所述监控服务器还用于执行计算机程序以实如下步骤

S10,在检测到当前工况环境下加入新的目标设备时,如果目标设备对应的目标进程中存在父子进程时,并且在父进程属于PW时,对目标设备的子进程是否为白名单进程进行判断。

进一步地,S10具体包括:将目标设备在第二预设时间段仅执行所有为白名单进程的父进程对应的子进程,并在执行期间获取每个子进程发生异常状态的异常次数;如果某个子进程对应的异常次数小于D2,则将该子进程作为白名单进程,D2为预设的第二异常次数阈值,可基于实际需要进行设置,在一个示意性实施例中,D2=D1。第二预设时间段的时长小于第一预设时间段的时长,例如,可为7天。

进一步地,S10还包括:

当父进程不属于PW时,判断该父进程对应的子进程为除白名单进程之外的进程。

S10的技术效果在于,当某个设备存在父子进程时,当父进程是白名单中进程时,对子进程是否为白名单中进程需要进行确定,从而能够确保白名单进程更加准确。

进一步地,在本发明另一实施例中,所述监控服务器还用于执行计算机程序以实如下步骤

S11,如果初始设备中具有相同设定功能标签的指定设备的白名单进程表存在不同,则将指定设备的每个白名单进程表均设置为基准白名单进程表。

在本发明实施例中,相同设定功能标签是指表示执行相同功能的标签。每个功能可设置对应的标签。

进一步地,S11具体包括:

S111,获取指定设备的白名单进程表白名单进程列表H=(H1,H2,…,He,…,Hg),其中,第e个设备的白名单进程表He=(He

S112,如果

S113,如果包括He

S114,从白名单进程并集HC中删除He

S115,将删除了孤立进程的HC作为基准白名单进程表。

S111至S115的技术效果在于,确保扮演相同角色(即执行相同功能)的设备中进程白名单相同,这样,在加入扮演相同角色的设备时,能够推荐更加适合且准确的白名单进程。

本发明的实施例还提供了一种非瞬时性计算机可读存储介质,该存储介质可设置于电子设备之中以保存用于实现方法实施例中一种方法相关的至少一条指令或至少一段程序,该至少一条指令或该至少一段程序由该监控服务器加载并执行以实现上述实施例提供的方法。

本发明的实施例还提供了一种电子设备,包括监控服务器和前述的非瞬时性计算机可读存储介质。

本发明的实施例还提供一种计算机程序产品,其包括程序代码,当所述程序产品在电子设备上运行时,所述程序代码用于使该电子设备执行本说明书上述描述的根据本发明各种示例性实施方式的方法中的步骤。

虽然已经通过示例对本发明的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本发明的范围。本领域的技术人员还应理解,可以对实施例进行多种修改而不脱离本发明的范围和精神。本发明公开的范围由所附权利要求来限定。

技术分类

06120115631813