一种控制代码异常检测方法及装置的制造方法_2

文档序号:9686866阅读:来源:国知局
,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下, 还可W根据运些附图获得其它的附图。
[0037]图1为本发明提供的一种控制代码异常检测方法实施例的流程图;
[0038]图2为本发明提供的一种控制代码异常检测装置实施例的结构框图。
【具体实施方式】
[0039]为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的 附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本 发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在 没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0040]方法实施例:
[0041]参见图1,该图为本发明提供的一种控制代码异常检测方法实施例的流程图。
[0042]本实施例提供的控制代码异常检测方法包括如下步骤:
[0043]步骤S101:向工业控制计算机发送实时控制代码提取请求。
[0044]在工业控制计算机运行过程中,控制代码中的一些参数可能会发生变化,因此我 们称工业控制计算机运行过程中的控制代码为实时控制代码。由于所述实时控制代码有可 能被篡改,因此在本实施例中,向工业控制计算机发送实时控制代码提取请求,其目的是为 了将所述实时控制代码与预存的控制代码做比对,若匹配,则认为所述实时控制代码没有 被篡改;若不匹配,则认为所述实时控制代码被篡改。
[0045]在实际应用中,执行所述控制代码异常检测方法的主体可W是服务器,也可W是 终端设备等,本发明不做具体限定,在本实施例中,该执行主体称为安全盾服务器。所述安 全盾服务器可w与所述工业控制计算机通过特定的工控系统网络接口连接。
[0046] 步骤S102:接收工业控制计算机发送的实时控制代码,并将所述实时控制代码与 预存控制代码进行比对,若不匹配,则执行步骤S103。
[0047] 工业控制计算机在接收到安全盾服务器发送的所述实时控制代码提取请求后,将 所述实时控制代码发送给所述安全盾服务器。所述安全盾服务器在接收到所述实时控制代 码后,将所述实时控制代码与预存控制代码进行比对。所述预存控制代码为最近更新的控 制代码或原始的控制代码。具体的,在实际应用中,若所述工业控制计算机中运行的实时控 制代码是原始的控制代码,那么所述预存控制代码为原始的控制代码;若所述工业控制计 算机中运行的实时控制代码是在原始控制代码的基础上进行升级的控制代码,那么所述预 存控制代码就为最新一次升级的控制代码。
[0048] 在本实施例中,可W将所述实时控制代码和所述预存控制代码分成Ξ个种类分别 进行比对,它们分别是:逻辑执行代码、运行数据W及数据符号和地址的对应关系。其中,所 述逻辑执行代码是实时控制代码或所述预存控制代码的主体,表达了执行对象的执行逻辑 和步骤。在实际应用中,所述逻辑执行代码一般W16进制来表示,在比对所述实时控制代码 的逻辑执行代码和所述预存控制代码的逻辑执行代码时,要逐字节进行比对,只有完全相 同才认为所述逻辑执行代码没有被篡改。
[0049] 由于工业控制计算机面对的是工业设备,在工业设备运行过程中,所述工业控制 计算机会实时检测到工业设备的运行数据,由于运些数据是实时检测的,因此具有实时变 化的特性,例如发动机的转速。因而,在比对所述实时控制代码的运行数据和所述预存控制 代码中的运行数据时,比对的实际上是运行数据的格式,只要运行数据的格式相同,那么就 认为所述运行数据没有被篡改。
[0050] 另外,由于数据符号在逻辑执行代码执行的过程中被引用,而数据符号一般存储 在对应的地址中,因此需要将数据符号与地址的对应起来,W便根据地址找到对应的数据 符号,见表1。若实时控制代码的每个数据符号对应的地址和所述预存控制代码中同样的数 据符号对应的地址是相同的,那么就认为所述实时控制代码的数据符号和地址的对应关系 和所述预存控制代码中的数据符号和地址的对应关系一致,没有被篡改。
[0化1] 表1
[0化2]
[0053] 步骤S103:向所述工业控制计算机发送所述预存控制代码,W使所述工业控制计 算机将所述实时控制代码替换为所述预存控制代码。
[0054]在本实施例中,若所述实时控制代码与所述预存控制代码不匹配,则认为所述实 时控制代码被篡改,在运种情况下,安全盾服务器向工业控制计算机发送所述预存控制代 码,W使所述工业控制计算机将所述实时控制代码替换为所述预存控制代码。
[0055]本实施例提供的控制代码异常检测方法,不管是来自网络的攻击,还是来自非网 络的攻击,也不管攻击方式可W识别出来的,还是识别不出来的,只要发生了攻击,所述实 时控制代码就一定会发生变化,只要实时控制代码被检测出来发生了变化,就用事先预存 的控制代码去替换实时控制代码,W使攻击失效,保证工业控制计算机的安全。
[0056] 基于W上实施例提供的一种控制代码异常检测方法,本发明实施例还提供了一种 控制代码异常检测装置,下面结合附图来详细说明其工作原理。
[0057] 装置实施例:
[005引参见图2,该图为本发明提供的一种控制代码异常检测装置实施例的结构框图。
[0059] 本实施例提供的控制代码异常检测装置包括:请求发送单元101、接收单元102、比 对单元103和代码发送单元104;
[0060] 其中,所述请求发送单元101与所述接收单元102连接,所述接收单元102与所述比 对单元103连接,所述比对单元103与所述代码发送单元104连接;
[0061] 所述请求发送单元101,用于向工业控制计算机发送实时控制代码提取请求;
[0062] 所述接收单元102,用于接收工业控制计算机发送的实时控制代码;
[0063] 所述比对单元103,用于将所述实时控制代码与预存控制代码进行比对,若不匹 配,则激活所述代码发送单元104;
[0064] 所述代码发送单元104,用于向所述工业控制计算机发送所述预存控制代码,W使 所述工业控制计算机将所述实时控制代码替换为所述预存控制代码。
[0065]本实施例提供的控制代码异常检测方法,不管是来自网络的攻击,还是来自非网 络的攻击,也不管攻击方式可w识别出来的,还是识别不出来的,只要发生了攻击,所述实 时控制代码就一定会发生变化,只要实时控制代码被检测出来发生了变化,就用事先预存 的控制代码去替换实时控制代码,W使攻击失效,保证工业控制计算机的安全。
[0066]进一步,可W将所述实时控制代码和所述预存控制代码分成Ξ个种类分别进行比 对,它们分别是:逻辑执行代码、运行数据W及数据符号和地址的对应关系。
[0067]关于第一个种类:逻辑指定代码,所述比对单元103具体用于:
[0068]将所述实时控制代码中的逻辑执行代码和所述预存控制代码中的逻辑执行代码 进行比对,若不一致,则激活所述代码发送单元104;
[0069] 所述代码发送单元104,具体用于:
[0070] 向所述工业控制计算机发送所述预存控制代码,W使所述工业控制计算机将所述 实时控制代码中的逻辑执行代码替换为所述预存控制代码中的逻辑执行代码。
[0071]关于第二个种类:运行数据,所述比对单元103具体用于:
[0072]将所述实时控制代码中运行数据的格式与所述预存控制代码中运行数据的格式 进行比对,若不一致,则激活所述代码发送单元104;
[0
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1