CN114091037A - 一种控制系统中的系统数据的防护方法及相关装置 - Google Patents
一种控制系统中的系统数据的防护方法及相关装置 Download PDFInfo
- Publication number
- CN114091037A CN114091037A CN202111404899.XA CN202111404899A CN114091037A CN 114091037 A CN114091037 A CN 114091037A CN 202111404899 A CN202111404899 A CN 202111404899A CN 114091037 A CN114091037 A CN 114091037A
- Authority
- CN
- China
- Prior art keywords
- data
- data area
- user
- interface
- area
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1004—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1469—Backup restoration techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种控制系统中系统数据的防护方法及装置,设置系统数据区的访问权限为第一访问权限和用户数据区的访问权限为第二访问权限,第一访问权限包括:访问系统数据区、用户数据区、接口数据区和公共数据区,第二访问权限包括:访问用户数据区、接口数据区和公共数据区;在用户模式下,执行用户程序之前,将公共数据备份和将目标系统数据刷新到接口数据区,基于接口数据区、目标系统数据和用户数据执行用户程序;执行完毕后,切换到系统模式,将当前接口数据刷新到系统数据区同时恢复公共数据。在用户程序对系统数据访问过程中通过数据接口区依据访问权限进行访问,实现了对系统数据的防护,避免了运行过程中恶意破坏系统数据。
Description
技术领域
本发明涉及工业控制技术领域,尤其涉及一种控制系统中系统数据的防护方法及相关装置。
背景技术
在工业控制系统中,用户工艺逻辑一般通过FBD、梯形图等语言进行编写,通过组态软件进行编译后生成用户程序并下载到控制系统中进行运行。
由于该过程需要通过软件编译以及通信下载过程,此过程均可能被恶意病毒或者异常操作导致用户程序在运行过程中恶意破坏控制系统中关键的系统数据。
发明内容
有鉴于此,本发明提供了一种控制系统中系统数据的防护方法及相关装置,用以解决通过组态软件进行编译后生成用户程序并下载到控制系统中进行运行过程需要通过软件编译以及通信下载过程,此过程均可能被恶意病毒或者异常操作导致用户程序在运行过程中恶意破坏系统数据的问题。具体方案如下:
一种控制系统中系统数据的防护方法,应用于控制系统,其中,所述控制系统包括:用户数据区、系统数据区、接口数据区和公共数据区,其中,所述用户数据区包括:用户程序和用户数据,系统数据区包括:系统代码和系统数据,所述方法包括:
设置所述系统数据区的访问权限为第一访问权限和所述用户数据区的访问权限为第二访问权限,其中,所述第一访问权限包括:访问所述系统数据区、所述用户数据区、所述接口数据区和所述公共数据区,所述第二访问权限包括:访问所述用户数据区、所述接口数据区和所述公共数据区;
令所述控制系处于用户模式下,在执行所述用户程序之前,将所述公共数据区的公共数据备份和将目标系统数据刷新到所述接口数据区,基于所述接口数据区、所述目标系统数据和所述用户数据执行所述用户程序;
执行完毕后,将所述控制系统由所述用户模式切换到系统模式,将当前接口数据刷新到所述系统数据区同时恢复所述公共数据。
上述的方法,可选的,所述接口数据区包括:数据接口和程序接口,基于所述接口数据区和所述目标系统数据执行所述用户程序,包括:
在所述系统数据区选取与所述用户程序匹配的目标系统数据;
将所述目标系统数据基于所述数据接口刷新到所述接口数据区;
基于所述程序接口获取所述目标系统数据,基于所述目标系统数据和所述用户数据执行所述用户程序。
上述的方法,可选的,将当前接口数据刷新到所述系统数据区同时恢复所述公共数据,包括:
对所述当前接口数据添加CRC校验码,得到目标当前接口数据;
对所述目标当前接口数据进行合法性校验;
在校验通过的前提下,将所述当前接口数据刷新到所述系统数据区,同时恢复所述公共数据。
上述的方法,可选的,还包括
在所述系统代码执行之前,选取与所述系统代码匹配的目标用户数据,将所述目标用户数据基于所述数据接口传递给所述接口数据区;
基于所述程序接口获取所述目标用户数据,基于所述目标用户数据和所述系统数据运行所述系统代码。
上述的方法,可选的,还包括:
在所述用户程序执行过程中,若检测到所述用户程序访问所述系统数据区,则终止所述用户程序执行。
一种控制系统中系统数据的防护装置,应用于控制系统,其中,所述控制系统包括:用户数据区、系统数据区、接口数据区和公共数据区,其中,所述用户数据区包括:用户程序和用户数据,系统数据区包括:系统代码和系统数据,所述装置包括:
设置模块,用于设置所述系统数据区的访问权限为第一访问权限和所述用户数据区的访问权限为第二访问权限,其中,所述第一访问权限包括:访问所述系统数据区、所述用户数据区、所述接口数据区和所述公共数据区,所述第二访问权限包括:访问所述用户数据区、所述接口数据区和所述公共数据区;
执行模块,用于令所述控制系处于用户模式下,在执行所述用户程序之前,将所述公共数据区的公共数据备份和将目标系统数据刷新到所述接口数据区,基于所述接口数据区、所述目标系统数据和所述用户数据执行所述用户程序;
刷新和恢复模块,用于执行完毕后,将所述控制系统由所述用户模式切换到系统模式,将当前接口数据刷新到所述系统数据区同时恢复所述公共数据。
上述的装置,可选的,所述接口数据区包括:数据接口和程序接口,所述执行模块包括:
选取单元,用于在所述系统数据区选取与所述用户程序匹配的目标系统数据;
刷新单元,用于将所述目标系统数据基于所述数据接口刷新到所述接口数据区;
执行单元,用于基于所述程序接口获取所述目标系统数据,基于所述目标系统数据和所述用户数据执行所述用户程序。
上述的装置,可选的,所述刷新和恢复模块包括:
添加单元,用于对所述当前接口数据添加CRC校验码,得到目标当前接口数据;
校验单元,用于对所述目标当前接口数据进行合法性校验;
刷新和恢复单元,用于在校验通过的前提下,将所述当前接口数据刷新到所述系统数据区,同时恢复所述公共数据。
一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在的设备执行上述的控制系统中系统数据的防护方法。
一种电子设备,包括存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行上述的控制系统中系统数据的防护方法。
与现有技术相比,本发明包括以下优点:
本发明公开了一种控制系统中系统数据的防护方法及装置,包括:设置系统数据区的访问权限为第一访问权限和用户数据区的访问权限为第二访问权限,第一访问权限包括:访问系统数据区、用户数据区、接口数据区和公共数据区,第二访问权限包括:访问用户数据区、接口数据区和公共数据区;令控制系处于用户模式下,在执行用户程序之前,将公共数据备份和将目标系统数据刷新到接口数据区,基于接口数据区、目标系统数据和用户数据执行用户程序;执行完毕后,由用户模式切换到系统模式,将当前接口数据刷新到系统数据区同时恢复公共数据。在用户程序对系统数据访问过程中通过数据接口区依据访问权限进行访问,实现了对系统数据的防护,避免了运行过程中恶意破坏系统数据。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例公开的一种控制系统中系统数据的防护方法流程图;
图2为本申请实施例公开的一种系统数据区和用户数据区示意图;
图3为本申请实施例公开的一种接口数据访问示意图;
图4为本申请实施例公开的一种控制系统中系统数据的防护装置结构框图;
图5为本发明提供的电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
本发明公开了一种控制系统中系统数据的防护方法及装置,应用于对控制系统中系统数据的防护过程中,在工业控制系统中,用户工艺逻辑一般通过FBD、梯形图等语言进行编写,通过组态软件进行编译后生成用户程序并下载到控制系统中进行运行。由于该过程需要通过软件编译以及通信下载过程,此过程均可能被恶意病毒或者异常操作导致用户程序在运行过程中恶意破坏控制系统中关键的系统数据。因此,为了解决上述问题,本发明提供了一种控制系统中系统数据的防护方法,所述方法应用于控制系统,其中,所述控制系统包括:用户数据区、系统数据区、接口数据区和公共数据区,其中,系统数据区:一般为控制系统代码访问的数据区,跟用户程序无关,包括外设寄存器、系统数据、堆栈等;接口数据区:用户程序通过接口数据区访问系统数据区;公共数据区:包括程序执行需要使用到数据,主要包括R0~R13寄存器等。所述用户数据区包括:用户程序和用户数据,系统数据区包括:系统代码和系统数据,所述方法的执行流程如图1所示,包括步骤:
S101、设置所述系统数据区的访问权限为第一访问权限和所述用户数据区的访问权限为第二访问权限,其中,所述第一访问权限包括:访问所述系统数据区、所述用户数据区、所述接口数据区和所述公共数据区,所述第二访问权限包括:访问所述用户数据区、所述接口数据区和所述公共数据区;
本发明实施例中,在所述控制系统开发阶段对用户程序和系统代码进行配置,令所述用户程序和所述系统代码在存储空间上进行划分,两者不能有交集,对系统数据和用户数据也采用同样的配置,以系统代码和用户程序的配置过程为例进行说明,其中,一般通过编译器的链接文件进行配置,例如在系统代码实现规程中,将不同的空间配置成不同的访问权限,例如:
sysfunc_ram :ORIGIN=0x8D001000,LENGTH=0x0000F000/*系统代码*/
usrfunc_ram:ORIGIN=0x8E000000,LENGTH=0x00800000/*用户程序空间*/
进一步的,基于上述的方法,设置所述系统数据区的访问权限为第一访问权限MMU权限1+MMU权限2和所述用户数据区的访问权限为第二访问权限MMU权限2,其中,所述第一访问权限MMU权限1+MMU权限2包括:访问所述系统数据区、所述用户数据区、所述接口数据区和所述公共数据区,所述第二访问权限MMU权限2包括:访问所述用户数据区、所述接口数据区和所述公共数据区。
在系统初始化时,根据ARM架构下对系统模式和用户模式的数据区访问权限进行设置。系统模式下,系统数据区中的系统代码拥有对于所有数据的访问权限(MMU权限1+MMU权限2),用户模式下,用户数据区的用户代码对于系统数据无访问权限。
基于上述的配置,所述用户数据区和所述系统数据区的结构示意图如图2所示,组态软件编译后通过以太网下载到用户程序,用户程序和用户数据可以组成用户数据区,所述用户数据区的访问权限为MMU权限2,其中,用户数据时用户程序所使用的数据,如控制工艺参数等,用户程序可以实现对用户数据、接口数据和公共数据的访问和下发,其中,接口数据属于接口数据区,公共数据属于公共数据区。系统代码和系统数据组成系统数据区,所述系统数据区的访问权限为MMU权限1+MMU权限2,其中,系统数据为系统代码所使用的数据,所述系统代码可以实现对系统数据、公共数据和接口数据的访问和下发。
进一步的,系统代码可读写所有程序的权限;用户程序只能读写用户程序,通过接口数据实现对用户所需指定受限系统数据的访问。该受限在系统设计时已定,其他阶段无法改变,通过公共数据实现对ARM平台执行环境资源的隔离使用,防止异常破坏。
S102、令所述控制系处于用户模式下,在执行所述用户程序之前,将所述公共数据区的公共数据备份和将目标系统数据刷新到所述接口数据区,基于所述接口数据区、所述目标系统数据和所述用户数据执行所述用户程序;
本发明实施例中,所述接口数据区包括:数据接口和程序接口,为了运行所述用户程序,需要预先令所述控制系统处于用户模式下,在执行所述用户程序之前,将所述公共数据区的公共数据进行备份,之所以进行备份是因为公共数据在用户模式和在系统模式对应的数据不同,为了保证切换为用户模式时所述控制系统可以正常运行,需要对所述公共数据进行备份。
在所述系统数据区选取与所述用户程序匹配的目标系统数据,选取规则可以为预先为每一个用户程序和其对应的目标系统数据分配相同标识,基于标识选取,也可以为预先将每个用户程序对应的目标系统代码存储到指定位置,在制定位置获取目标系统数据或者其它优选的选取方法,本发明实施例中对具体的选取方法不进行限定。其中,所述目标系统数据为所述用户程序在执行过程中需要用到的系统数据,将所述目标系统数据基于所述数据接口刷新到所述接口数据区,基于所述程序接口获取所述目标系统数据,基于所述目标系统数据和所述用户数据执行所述用户程序。上述所述用户程序的运行过程中,目标系统数据基于所述接口数据区的程序接口依据对应访问权限进行访问,没有直接访问系统数据区,避免了对系统数据的恶意破坏。
进一步的,若执行过程中,检测到用户程序恶意访问系统数据区,则程序进入异常中断处理,终止用户程序执行,报警并退出恢复系统代码执行,其中,恶意访问系统数据区可能是由于用户程序编写过程中的错误或者其它异常情况导致的。
S103、执行完毕后,将所述控制系统由所述用户模式切换到系统模式,将当前接口数据刷新到所述系统数据区同时恢复所述公共数据。
本发明实施例中,在监测到所述用户程序执行完毕后,将所述控制系统由所述用户模式切换到系统模式,由于在所述用户程序执行过程中,所述接口数据区的接口数据会发生变化,获取所述接收数据区的当前接口数据,对所述当前接口数据添加CRC校验码,得到目标当前接口数据,对所述目标当前接口数据进行合法性校验,在校验通过的前提下,将所述当前接口数据刷新到所述系统数据区,同时恢复所述公共数据,若校验不通过,对所述当前接口数据进行标记,放弃刷新到所述接口数据区。
进一步的,针对接口数据的访问示意图如图3所示,控制器系统代码每周期执行,执行用户程序前,需将相应的系统数据刷新到接口数据区的接口数据中,供用户程序进行访问,执行用户程序后,将接口数据刷新到系统数据中,具体过程如下:将用户程序运算完成的写到接口数据区的接口数据,经过合法性判断后,重新刷新到系统数据区中的系统数据中,实现对受限系统数据的读写访问。
本发明公开了一种控制系统中系统数据的防护方法,包括:设置系统数据区的访问权限为第一访问权限和用户数据区的访问权限为第二访问权限,第一访问权限包括:访问系统数据区、用户数据区、接口数据区和公共数据区,第二访问权限包括:访问用户数据区、接口数据区和公共数据区;令控制系处于用户模式下,在执行用户程序之前,将公共数据备份和将目标系统数据刷新到接口数据区,基于接口数据区、目标系统数据和用户数据执行用户程序;执行完毕后,由用户模式切换到系统模式,将当前接口数据刷新到系统数据区同时恢复公共数据。在用户程序对系统数据访问过程中通过数据接口区依据访问权限进行访问,实现了对系统数据的防护,避免了运行过程中恶意破坏系统数据。
本发明实施例中,在所述系统代码执行之前,选取与所述系统代码匹配的目标用户数据,其中,选取原则可以为预先指定或者其它优选的选取方式,本发明实施例中,对具体的选取原则不进行限定,所述目标用户数据为所述系统代码运行过程中需要的用户数据,将所述目标用户数据基于所述数据接口传递给所述接口数据区;基于所述程序接口获取所述目标用户数据,基于所述目标用户数据和所述系统数据运行所述系统代码。
基于上述的一种控制系统中系统数据的防护方法,本发明实施例中,提供了一种控制系统中系统数据的防护装置,所述防护装置应用于控制系统,其中,所述控制系统包括:用户数据区、系统数据区、接口数据区和公共数据区,其中,所述用户数据区包括:用户程序和用户数据,系统数据区包括:系统代码和系统数据,所述装置的结构框图如图4所示,包括:
设置模块201、执行模块202和刷新和恢复模块203。
其中,
所述设置模块201,用于设置所述系统数据区的访问权限为第一访问权限和所述用户数据区的访问权限为第二访问权限,其中,所述第一访问权限包括:访问所述系统数据区、所述用户数据区、所述接口数据区和所述公共数据区,所述第二访问权限包括:访问所述用户数据区、所述接口数据区和所述公共数据区;
所述执行模块202,用于令所述控制系处于用户模式下,在执行所述用户程序之前,将所述公共数据区的公共数据备份和将目标系统数据刷新到所述接口数据区,基于所述接口数据区、所述目标系统数据和所述用户数据执行所述用户程序;
所述刷新和恢复模块203,用于执行完毕后,将所述控制系统由所述用户模式切换到系统模式,将当前接口数据刷新到所述系统数据区同时恢复所述公共数据。
本发明公开了一种控制系统中系统数据的防护装置,设置系统数据区的访问权限为第一访问权限和用户数据区的访问权限为第二访问权限,第一访问权限包括:访问系统数据区、用户数据区、接口数据区和公共数据区,第二访问权限包括:访问用户数据区、接口数据区和公共数据区;在用户模式下,执行用户程序之前,将公共数据备份和将目标系统数据刷新到接口数据区,基于接口数据区、目标系统数据和用户数据执行用户程序;执行完毕后,切换到系统模式,将当前接口数据刷新到系统数据区同时恢复公共数据。在用户程序对系统数据访问过程中通过数据接口区依据访问权限进行访问,实现了对系统数据的防护,避免了运行过程中恶意破坏系统数据。
本发明实施例中,所述接口数据区包括:数据接口和程序接口,所述执行模块202包括:
选取单元204、刷新单元205和执行单元206。
其中,
所述选取单元204,用于在所述系统数据区选取与所述用户程序匹配的目标系统数据;
所述刷新单元205,用于将所述目标系统数据基于所述数据接口刷新到所述接口数据区;
所述执行单元206,用于基于所述程序接口获取所述目标系统数据,基于所述目标系统数据和所述用户数据执行所述用户程序。
本方法名实施例中,所述刷新和恢复模块203包括:
添加单元207、校验单元208和刷新和恢复单元209。
其中,
所述添加单元207,用于对所述当前接口数据添加CRC校验码,得到目标当前接口数据;
所述校验单元208,用于对所述目标当前接口数据进行合法性校验;
所述刷新和恢复单元209,用于在校验通过的前提下,将所述当前接口数据刷新到所述系统数据区,同时恢复所述公共数据。
本发明实施例还提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在的设备执行上述一种控制系统中系统数据的防护方法。应用于控制系统,其中,所述控制系统包括:用户数据区、系统数据区、接口数据区和公共数据区,其中,所述用户数据区包括:用户程序和用户数据,系统数据区包括:系统代码和系统数据,所述方法包括:
设置所述系统数据区的访问权限为第一访问权限和所述用户数据区的访问权限为第二访问权限,其中,所述第一访问权限包括:访问所述系统数据区、所述用户数据区、所述接口数据区和所述公共数据区,所述第二访问权限包括:访问所述用户数据区、所述接口数据区和所述公共数据区;
令所述控制系处于用户模式下,在执行所述用户程序之前,将所述公共数据区的公共数据备份和将目标系统数据刷新到所述接口数据区,基于所述接口数据区、所述目标系统数据和所述用户数据执行所述用户程序;
执行完毕后,将所述控制系统由所述用户模式切换到系统模式,将当前接口数据刷新到所述系统数据区同时恢复所述公共数据。
上述的方法,可选的,所述接口数据区包括:数据接口和程序接口,基于所述接口数据区和所述目标系统数据执行所述用户程序,包括:
在所述系统数据区选取与所述用户程序匹配的目标系统数据;
将所述目标系统数据基于所述数据接口刷新到所述接口数据区;
基于所述程序接口获取所述目标系统数据,基于所述目标系统数据和所述用户数据执行所述用户程序。
上述的方法,可选的,将当前接口数据刷新到所述系统数据区同时恢复所述公共数据,包括:
对所述当前接口数据添加CRC校验码,得到目标当前接口数据;
对所述目标当前接口数据进行合法性校验;
在校验通过的前提下,将所述当前接口数据刷新到所述系统数据区,同时恢复所述公共数据。
上述的方法,可选的,还包括
在所述系统代码执行之前,选取与所述系统代码匹配的目标用户数据,
将所述目标用户数据基于所述数据接口传递给所述接口数据区;
基于所述程序接口获取所述目标用户数据,基于所述目标用户数据和所述系统数据运行所述系统代码。
上述的方法,可选的,还包括:
在所述用户程序执行过程中,若检测到所述用户程序访问所述系统数据区,则终止所述用户程序执行。
本发明实施例还提供了一种电子设备,其结构示意图如图5所示,具体包括存储器301,以及一个或者一个以上的程序302,其中一个或者一个以上程序302存储于存储器301中,且经配置以由一个或者一个以上处理器303执行所述一个或者一个以上程序302包含用于进行以下操作的指令:
设置所述系统数据区的访问权限为第一访问权限和所述用户数据区的访问权限为第二访问权限,其中,所述第一访问权限包括:访问所述系统数据区、所述用户数据区、所述接口数据区和所述公共数据区,所述第二访问权限包括:访问所述用户数据区、所述接口数据区和所述公共数据区;
令所述控制系处于用户模式下,在执行所述用户程序之前,将所述公共数据区的公共数据备份和将目标系统数据刷新到所述接口数据区,基于所述接口数据区、所述目标系统数据和所述用户数据执行所述用户程序;
执行完毕后,将所述控制系统由所述用户模式切换到系统模式,将当前接口数据刷新到所述系统数据区同时恢复所述公共数据。
上述的方法,可选的,所述接口数据区包括:数据接口和程序接口,基于所述接口数据区和所述目标系统数据执行所述用户程序,包括:
在所述系统数据区选取与所述用户程序匹配的目标系统数据;
将所述目标系统数据基于所述数据接口刷新到所述接口数据区;
基于所述程序接口获取所述目标系统数据,基于所述目标系统数据和所述用户数据执行所述用户程序。
上述的方法,可选的,将当前接口数据刷新到所述系统数据区同时恢复所述公共数据,包括:
对所述当前接口数据添加CRC校验码,得到目标当前接口数据;
对所述目标当前接口数据进行合法性校验;
在校验通过的前提下,将所述当前接口数据刷新到所述系统数据区,同时恢复所述公共数据。
上述的方法,可选的,还包括
在所述系统代码执行之前,选取与所述系统代码匹配的目标用户数据,将所述目标用户数据基于所述数据接口传递给所述接口数据区;
基于所述程序接口获取所述目标用户数据,基于所述目标用户数据和所述系统数据运行所述系统代码。
上述的方法,可选的,还包括:
在所述用户程序执行过程中,若检测到所述用户程序访问所述系统数据区,则终止所述用户程序执行。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本发明时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上对本发明所提供的一种控制系统中系统数据的防护方法及装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种控制系统中系统数据的防护方法,其特征在于,应用于控制系统,其中,所述控制系统包括:用户数据区、系统数据区、接口数据区和公共数据区,其中,所述用户数据区包括:用户程序和用户数据,系统数据区包括:系统代码和系统数据,所述方法包括:
设置所述系统数据区的访问权限为第一访问权限和所述用户数据区的访问权限为第二访问权限,其中,所述第一访问权限包括:访问所述系统数据区、所述用户数据区、所述接口数据区和所述公共数据区,所述第二访问权限包括:访问所述用户数据区、所述接口数据区和所述公共数据区;
令所述控制系处于用户模式下,在执行所述用户程序之前,将所述公共数据区的公共数据备份和将目标系统数据刷新到所述接口数据区,基于所述接口数据区、所述目标系统数据和所述用户数据执行所述用户程序;
执行完毕后,将所述控制系统由所述用户模式切换到系统模式,将当前接口数据刷新到所述系统数据区同时恢复所述公共数据。
2.根据权利要求1所述的方法,其特征在于,所述接口数据区包括:数据接口和程序接口,基于所述接口数据区和所述目标系统数据执行所述用户程序,包括:
在所述系统数据区选取与所述用户程序匹配的目标系统数据;
将所述目标系统数据基于所述数据接口刷新到所述接口数据区;
基于所述程序接口获取所述目标系统数据,基于所述目标系统数据和所述用户数据执行所述用户程序。
3.根据权利要求2所述的方法,其特征在于,将当前接口数据刷新到所述系统数据区同时恢复所述公共数据,包括:
对所述当前接口数据添加CRC校验码,得到目标当前接口数据;
对所述目标当前接口数据进行合法性校验;
在校验通过的前提下,将所述当前接口数据刷新到所述系统数据区,同时恢复所述公共数据。
4.根据权利要求2所述的方法,其特征在于,还包括
在所述系统代码执行之前,选取与所述系统代码匹配的目标用户数据,
将所述目标用户数据基于所述数据接口传递给所述接口数据区;
基于所述程序接口获取所述目标用户数据,基于所述目标用户数据和所述系统数据运行所述系统代码。
5.根据权利要求1所述的方法,其特征在于,还包括:
在所述用户程序执行过程中,若检测到所述用户程序访问所述系统数据区,则终止所述用户程序执行。
6.一种控制系统中系统数据的防护装置,其特征在于,应用于控制系统,其中,所述控制系统包括:用户数据区、系统数据区、接口数据区和公共数据区,其中,所述用户数据区包括:用户程序和用户数据,系统数据区包括:系统代码和系统数据,所述装置包括:
设置模块,用于设置所述系统数据区的访问权限为第一访问权限和所述用户数据区的访问权限为第二访问权限,其中,所述第一访问权限包括:访问所述系统数据区、所述用户数据区、所述接口数据区和所述公共数据区,所述第二访问权限包括:访问所述用户数据区、所述接口数据区和所述公共数据区;
执行模块,用于令所述控制系处于用户模式下,在执行所述用户程序之前,将所述公共数据区的公共数据备份和将目标系统数据刷新到所述接口数据区,基于所述接口数据区、所述目标系统数据和所述用户数据执行所述用户程序;
刷新和恢复模块,用于执行完毕后,将所述控制系统由所述用户模式切换到系统模式,将当前接口数据刷新到所述系统数据区同时恢复所述公共数据。
7.根据权利要求6所述的装置,其特征在于,所述接口数据区包括:数据接口和程序接口,所述执行模块包括:
选取单元,用于在所述系统数据区选取与所述用户程序匹配的目标系统数据;
刷新单元,用于将所述目标系统数据基于所述数据接口刷新到所述接口数据区;
执行单元,用于基于所述程序接口获取所述目标系统数据,基于所述目标系统数据和所述用户数据执行所述用户程序。
8.根据权利要求7所述的装置,其特征在于,所述刷新和恢复模块包括:
添加单元,用于对所述当前接口数据添加CRC校验码,得到目标当前接口数据;
校验单元,用于对所述目标当前接口数据进行合法性校验;
刷新和恢复单元,用于在校验通过的前提下,将所述当前接口数据刷新到所述系统数据区,同时恢复所述公共数据。
9.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在的设备执行如权利要求1~5任意一项所述的控制系统中系统数据的防护方法。
10.一种电子设备,其特征在于,包括存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行如权利要求1~5任意一项所述的控制系统中系统数据的防护方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111404899.XA CN114091037A (zh) | 2021-11-24 | 2021-11-24 | 一种控制系统中的系统数据的防护方法及相关装置 |
PCT/CN2022/133699 WO2023093757A1 (zh) | 2021-11-24 | 2022-11-23 | 一种控制系统中的系统数据的防护方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111404899.XA CN114091037A (zh) | 2021-11-24 | 2021-11-24 | 一种控制系统中的系统数据的防护方法及相关装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114091037A true CN114091037A (zh) | 2022-02-25 |
Family
ID=80304047
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111404899.XA Pending CN114091037A (zh) | 2021-11-24 | 2021-11-24 | 一种控制系统中的系统数据的防护方法及相关装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114091037A (zh) |
WO (1) | WO2023093757A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023093757A1 (zh) * | 2021-11-24 | 2023-06-01 | 浙江中控技术股份有限公司 | 一种控制系统中的系统数据的防护方法及相关装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101315674B (zh) * | 2007-05-31 | 2010-11-03 | 深圳市江波龙电子有限公司 | 保护及访问存储卡发行数据的方法 |
CN102761538B (zh) * | 2012-04-27 | 2014-10-22 | 南大傲拓科技江苏有限公司 | 应用于多种通讯接口网关的通信共享数据区设计管理方法 |
US20140282912A1 (en) * | 2013-03-14 | 2014-09-18 | Public Insight Corporation | Methods and Systems for Analyzing Public Data |
CN104267665B (zh) * | 2014-08-29 | 2017-07-04 | 暨南大学 | 一种视觉智能数控系统的数据交换方法 |
CN112783117B (zh) * | 2020-12-29 | 2022-05-10 | 浙江中控技术股份有限公司 | 一种安全控制应用与常规控制应用间数据隔离的方法及装置 |
CN114091037A (zh) * | 2021-11-24 | 2022-02-25 | 浙江中控技术股份有限公司 | 一种控制系统中的系统数据的防护方法及相关装置 |
-
2021
- 2021-11-24 CN CN202111404899.XA patent/CN114091037A/zh active Pending
-
2022
- 2022-11-23 WO PCT/CN2022/133699 patent/WO2023093757A1/zh unknown
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023093757A1 (zh) * | 2021-11-24 | 2023-06-01 | 浙江中控技术股份有限公司 | 一种控制系统中的系统数据的防护方法及相关装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2023093757A1 (zh) | 2023-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100489805C (zh) | 运行时间安全保证的自动存储器检测器及其方法 | |
CN109840410A (zh) | 一种进程内数据隔离与保护的方法和系统 | |
CN105164657A (zh) | 程序数据至非易失性存储器的选择性备份 | |
JP6984710B2 (ja) | コンピュータ装置およびメモリ管理方法 | |
CN104115125A (zh) | 安全的错误处理 | |
CN109558372B (zh) | 用于安全处理器的设备和方法 | |
CN102194078A (zh) | 用于应用程式档案输入及输出的安全性的方法及系统 | |
CN104769598A (zh) | 用于检测非法应用程序的系统和方法 | |
CN114528603B (zh) | 嵌入式系统的隔离动态保护方法、装置、设备和存储介质 | |
CN113467981A (zh) | 异常处理的方法和装置 | |
CN114091037A (zh) | 一种控制系统中的系统数据的防护方法及相关装置 | |
JP2005316599A (ja) | 割込制御装置 | |
CN115422554B (zh) | 请求处理方法、编译方法和可信计算系统 | |
CN101770396B (zh) | 实现Linux系统下擦写DMI数据的方法及装置 | |
CN105138378A (zh) | 一种bios刷写方法及电子设备 | |
CN108874579B (zh) | 用于监管和初始化端口的方法 | |
CN112989343A (zh) | 一种检测超融合平台网络安全性的方法、电子设备及介质 | |
CN112486496A (zh) | 一种用于生成和运行so文件的方法与设备 | |
CN102541673A (zh) | 一种cpu取指令异常的安全处理方法和电路 | |
CN112685802B (zh) | Flash芯片读取控制方法、装置、存储介质 | |
CN116431189B (zh) | 基于pcie链路的板卡升级方法、装置、设备及存储介质 | |
CN112948241B (zh) | 应用程序的反调试方法、装置、电子设备及存储介质 | |
CN111124462B (zh) | 一种嵌入式多媒体卡更新方法、装置、服务器和存储介质 | |
CN117729193A (zh) | 一种文件传输方法、装置、电子设备及存储介质 | |
CN116956302A (zh) | 一种基于嵌入式存储系统的内核模块完整性保护系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |