cription-url="https://mmbiz.qpic.cn/mmbiz_png/TPQsMW6ic4LEBy2FcPofR16ZzeDalNDg81sxxRY3pmJ5JdVyWYvgbZUCESoQicJJwI0rvGy5EaZgKIxhBuu7kImg/640?wx_fmt=png" data-backw="543" data-ratio="0.2531041069723018" data-cropselx2="615" data-cropsely1="0" data-cropsely2="135">针对新能源集控系统面临的安全威胁,研究拟态防御理论以及新能源集控系统的网络结构、业务结构、应用结构与关键数据,构建一个使用商用密码技术对新能源集控系统的关键数据进行保护的商用密码拟态防御异构冗余架构,以提升新能源集控系统的内生安全防护能力。通过介绍拟态防御异构冗余架构与商用密码技术融合的新能源工程应用案例,展示了商用密码技术对新能源集控系统关键数据的机密性及完整性保护效果,验证了拟态防御理论的有效性和优越性。
图 1 应用规约数据单元 TCP 传输格式IEC 104 规约及 Modbus 规约在设计之初,未考虑任何对规约数据的机密性、完整性、不可否认性等方面的保护措施,因此这两个规约均不具有防窃取和防篡改的能力。新能源集控系统正面临着控制指令、监控数据容易被窃取和篡改的严重隐患。
图 2 DHR 结构拟态防御允许由功能等价的软硬件变结构协同处理机制,可以采用组合或混合的环境构成方式,包括但不限于不同的软件、硬件、操作系统、编程语言等实现各种功能等价的异构执行体 。这些功能等价的异构执行体组成了一个异构执行体池。DHR 结构的原理为:从异构执行体池中动态地、随机地选择部分执行体构成执行体集,然后输入代理将输入数据分发给各个执行体进行执行、处理。表决器对每个执行体所执行的结果进行判定,裁决出近似正确的结果并输出,识别出异常的执行体并标记不再信任 。当少数异构执行体被攻击后,通过 DHR总能够得到正确的运算结果。只有在全部异构体被攻击,且每个异常异构体运算的结果一样时,DHR 才可能无法发现系统被攻击了。对于未知威胁的防范问题,也被 DHR 的物理机制转换为对未知威胁的控制问题,转换为对所有异构执行体同时出现运算错误的判定问题。系统抗攻击能力提升,攻击者也被迫从对单一目标的攻击转变为对全部异构体的攻击。系统通过 DHR 识别出异常的执行体并标记为不可再信任。
图 3 新能源集控密码服务拟态防御框架(1)密码服务异构冗余执行体池。密码服务异构执行体包括:国产化服务器密码机、非国产化服务器密码机、加密卡、密码软模块等具有密钥存储、密钥扩散、密码运算、哈希运算及随机数生成能力的硬件装置或密码模块,多个密码服务异构执行体一起组成一个密码服务异构冗余执行体池。密码服务异构冗余执行体池中的每个独立个体有着相同的密钥。(2)密码运算调度模块。密码运算调度模块部署于新能源集控系统服务器及接口机上,具备加密、解密、哈希运算接口,可产生随机数作为密码运算的因子。密码运算调度模块负责在异构冗余执行体池中随机选择至少 3 个处于可用状态的异构执行体进行密码运算。(3)密码运算裁决模块。密码运算裁决模块负责进行多模裁决,对异构执行体的密码运算结果进行表决,输出运算结果的大多数值,并将运算结果为异常或错误的执行体信息反馈至负反馈控制器模块。(4)负反馈控制器模块。负反馈控制器模块根据密码运算裁决模块的结果,对异构冗余执行体池中的执行体标记是否可用,并将执行体状态同步到密码运算调度模块。(5)密钥管理系统。密钥管理系统部署于管理信息大区,负责对称密钥的产生、更新、销毁等全生命周期管理,密钥管理系统定时向各可用状态的密码服务异构冗余执行体分发相同的对称密钥。3.2 工作机制3.2.1 密钥分发将密钥管理系统生成异构执行体所需的对称密钥,称作主密钥。由于新能源集控系统具有横向隔离的网络特性,密码管理系统无法直接访问密码服务异构执行体,所以密码服务异构执行体在上线前,由密钥管理系统离线将前述主密钥分发至各个异构执行体。使得所有密码服务异构执行体使用相同的主密钥。当负反馈控制器发现大多数密码服务异构执行体的密码运算结果不一致时,会由密钥管理系统离线更新各个异构执行体的主密钥。3.2.2 异构体调度当需要进行密码运算时,密码运算调度模块首先从密码服务异构执行体池中随机选择 3个或 3 个以上处于可用状态的异构执行体组成异构执行体集,由异构执行体集进行本次的密码运算。若无法选择至少 3 个异构执行体,则认为系统遭到严重破坏,处于不可用状态,并反馈管理员进行问题排查。在每次密码运算之前,均需进行此操作,以实现异构执行体的动态、冗余选择,可有效减少异构执行体被破坏后对整个系统稳定性的影响,保证系统的拟态防御能力及鲁棒性。3.2.3 加密过程当密码运算调度模块收到输入的明文数据时,会产生一组随机数。密码运算调度模块将这组随机数与明文数据一起交由密码服务异构执行体集进行加密运算。每个异构执行体使用相同的随机数与主密钥进行密钥分散,计算得到本次会话加密所需的工作密钥和初始化向量(Initialization Vector,IV),这组随机数被称为“密钥分散因子”。各异构执行体使用工作密钥、IV 采用 SM4 算法的密码分组链接工作模式(Cipher Block Chaining,CBC)计算加密结果。密码运算裁决模块使用 SM3 算法计算各密码服务异构执行体加密结果的哈希值,并通过比较哈希值的一致性进行多模裁决。若哈希值存在不一致的情况,说明有异构执行体存在异常,密码运算裁决模块则抛出异常执行体,交由负反馈处理器进行处置。若各异构执行体加密结果的哈希值一致,密码运算裁决模块则输出密文数据及密钥分散因子。3.2.4 解密过程密码运算调度模块将收到的密钥分散因子与密文数据一起交由密码服务异构执行体集进行解密运算。同样地,各异构执行体使用密钥分散因子与主密钥进行分散,计算得到本次解密所需的工作密钥和向量 IV。异构执行体使用工作密钥、向量 IV 采用 SM4 算法 CBC 模式计算解密结果。密码运算裁决模块使用 SM3 算法计算各密码服务异构执行体的解密结果的哈希值,并比较一致性进行多模裁决。若哈希值存在不一致的情况,说明有异构执行体存在异常,密码运算裁决模块则抛出异常执行体,交由负反馈处理器进行处置。若各异构执行体解密结果的哈希值一致,密码运算裁决模块则输出明文数据。3.2.5 哈希过程密码运算调度模块将收到的输入数据交由异构执行体集进行哈希运算。各异构执行体使用 SM3 算法计算输入数据的哈希值。密码运算裁决模块使用 SM3 算法计算上述加密结果的哈希值,并通过比较哈希值的一致性进行多模裁决。若哈希值存在不一致的情况,说明有异构执行体存在异常,密码运算裁决模块则抛出异常执行体,交由负反馈处理器进行处置。若各异构执行体加密结果的哈希值一致,密码运算裁决模块则输出相同的哈希值。3.2.6 动态调整过程负反馈控制器模块收到执行体异常的信息后,根据配置的容忍度参数决定是否在异构执行体池中继续保留该执行体。如配置容忍度参数为 2,即允许异构执行体执行失败两次,超过两次则认为异构执行体被破坏或者不稳定、不可信任。负反馈控制器将调整后的处置结果通知密码运算调度模块。密码运算调度模块根据负反馈控制器的反馈信息,在收到输入数据后,动态地选择多个异构执行体进行密码运算。4.1 部署环境总体技术架构以商用密码为核心,以拟态防御理论为指导,遵循国家相关法律法规,参照密码应用标准规范 和电力行业相关规范进行设计。对新能源集控系统集控侧与场站侧之间的指令管控、数据采集等业务流程进行全方位的安全防护。对集控生产控制大区的业务服务器及场站安全生产控制大区的业务接口机进行改造,安装和部署加密卡、软件密码模块及密码应用中间件;在集控及场站的生产控制大区均部署国产化密码机及非国产化密码机;在集控管理信息大区和场站管理信息大区分别部署一台密钥管理系统,上下级密钥管理系统之间通过网络同步密钥。具体部署拓扑如图 4 所示。
图 4 风电场拟态防御系统部署由国产化服务器密码机、非国产化服务器密码机、加密卡、密码软模块共同组成了一个冗余的异构密码服务执行体池,为上层应用提供了密码支撑能力。各密码服务执行体具有主密钥存储、主密钥扩散、SM4 加解密运算及 SM3哈希运算等密码服务能力,为集控系统的关键数据提供机密性及完整性保护。密码应用中间件提供了以密码运算调度、密码运算裁决、执行体的负反馈控制为核心的拟态防御服务功能。同时,密码应用中间件为业务系统提供一套简单且统一的密码服务接口,并对业务系统隐藏密码服务执行体的实现细节及逻辑,可有效降低密钥应用的改造难度。密码应用中间件还负责生成主密钥,扩散所需的随机数作为分散因子,以及对关键数据进行安全封装。IEC 104 规约及 Modbus 规约服务调用密码应用中间件的接口,可以实现安全规约封装及数据机密性和防篡改保护。各个异构密码服务执行体的主密钥来源于密码管理系统。密钥管理系统负责主密钥的生成、分发及更新。由于集控系统网络分区的限制,密码服务执行体在初始化或主密钥需要更新的时候,离线接入密钥管理系统进行主密钥灌入。4.2 关键数据保护业务服务器在下发控制指令时,密码应用中间件生成密钥分散因子,由其密码应用调度模块检查密码服务异构执行体池中各执行体的状态,并随机选择至少 3 个执行体。密码应用中间件将密钥分散因子及应用规约数据传递给密码服务异构执行体进行哈希与加密运算。密码运算裁决模块对哈希与加密结果进行多模裁决,并将运算结果的大多数值连同安全控制单元、密钥分散因子封装成安全应用规约数据单元(Security Application Protocol Data Unit,SAPDU)。TCP 承载的 SAPDU 规约数据,在经过集控中心与场站边界处的纵向加密认证装置后,通过安全传输通道最终到达接口机。接口机的密码应用中间件收到 SAPDU 后,由其密码应用调度模块检查密码服务异构执行体池中各执行体的状态,并随机选择至少 3 个密码服务执行体。密码应用中间件将密钥分散因子及 SAPDU 传递给各个选中的密码服务执行体进行解密与哈希验证。密码运算裁决模块对各个密码服务执行体的解密与哈希运算结果进行多模裁决,解密结果的大多数值即原始 APDU。上行监视数据的保护过程与下行控制指令的保护过程类似。4.3 应用效果从安全性、鲁棒性、实时性 3 个方面对试验风电公司集控系统改造前后的效果进行对比评价。(1)安全性。在集控与场站之间的交换机上进行镜像,捕获集控发往场站的控制指令规约数据包,对比集控系统改造前后规约数据的变化。系统改造前的数据包可以使用规约协议分析工具进行解析,查看控制指令的内容。对比发现系统改造后,无法使用规约协议分析工具正常捕获的数据包的规约内容。随机修改捕获的规约数据包的 TCP 载荷内容,并将该数据包在交换机上按原路径重放。系统改造前,数据包可以到达场站接口机的业务服务系统;系统改造后,场站接口机的密码应用中间件在收到该规约数据包后,对数据包进行验证,并提示数据包被篡改,不会将非法数据包提交给业务服务系统。说明该体系结构具有对规约数据进行机密性及完整性保护的能力。(2)鲁棒性。鲁棒性是指系统在不确定性条件下具有保持稳定性、渐进性和动态特性不受不确定性因素影响的能力。测试时,将集控业务服务器中密码软模块的主密钥进行更换,使之与其他密码服务执行体中的密钥不一致。密码运算后,密码应用中间件进行多模裁决时发现该密码软模块处于险状态,但本次计算结果不受影响,仍旧可以使用大多数一致原则选出。但后期密码应用中间件在调度时,集控业务服务器没有继续使用密码软模块进行密码运算。说明该体系架构具有广义鲁棒性 ,基于该体系的系统具备一定的内生安全能力,对系统的抗攻击能力具有增益效果。(3)实时性。对比系统改造前后所捕获的数据包长度,发现数据包长度变化不大。将集控服务器收到工作站请求后下发控制指令的时刻记为
将集控服务器发生控制指令发送的时刻记为
则
的差值
为指令生成的耗时。通过统计,业务系统应用拟态防御前后生成控制指令的耗时对比情况如表 1 所示,结果显示该体系架构平均增加了 2.25 ms 的时长对业务系统进行安全防护,对控制指令生成的实时性影响较小。表 1 拟态防御应用前后控制指令耗时对比
免责声明:本文转自信息安全与通信保密杂志社,原作者宗琪 , 蒋啸 , 周俊,周强,陈蕾。文章内容系原作者个人观点,本公众号编译/转载仅为分享、传达不同观点,如有任何异议,欢迎联系我们/转载公众号!

国际技术经济研究所(IITE)成立于1985年11月,是隶属于国务院发展研究中心的非营利性研究机构,主要职能是研究我国经济、科技社会发展中的重大政策性、战略性、前瞻性问题,跟踪和分析世界科技、经济发展态势,为中央和有关部委提供决策咨询服务。“全球技术地图”为国际技术经济研究所官方微信账号,致力于向公众传递前沿技术资讯和科技创新洞见。
地址:北京市海淀区小南庄20号楼A座电话:010-82635522微信:iite_er


119705/01








