首页> 中文学位 >工业控制系统组态软件安全防护关键技术研究
【6h】

工业控制系统组态软件安全防护关键技术研究

代理获取

目录

封面

中文摘要

英文摘要

目录

第1章 绪 论

1.1 课题背景及研究的目的和意义

1.2 国内外相关研究与发展现状

1.3 工控系统组态软件安全防护相关技术

1.3.1 工控系统组态软件概论

1.3.2 动态二进制分析

1.3.3 软件逆向工程技术

1.3.4 DLL劫持技术

1.4 本文的研究内容及结构安排

第2章 组态软件关键模块定位

2.1 引言

2.2 软件执行轨迹的获取

2.2.1 软件的执行轨迹

2.2.2 基于Pin的执行轨迹获取

2.3 软件关键模块、函数的定位

2.3.1 基于指令级执行轨迹对比的关键模块定位

2.3.2 基于函数级执行轨迹覆盖度的关键函数定位

2.3.3 方法对比分析

2.4 本章小结

第3章 基于DLL劫持的组态软件安全防护方法

3.1 引言

3.2 关键模块、函数的逆向分析

3.2.1 栈帧和调用约定

3.2.2 基于IDA的函数逆向分析

3.3 工控系统组态软件的安全防护

3.3.1 通过DLL劫持在函数调用前截断执行流程

3.3.2 函数调用时的安全检测

3.4 本章小结

第4章 实验与分析

4.1 引言

4.2 实验环境

4.3 实验方案

4.3Win CC测试

4.3.1 软件关键模块的获取

4.3.2 关键模块逆向分析与伪装模块编写

4.3.3 数据获取与安全防护

4.4 实验结果分析

4.4.1 执行轨迹获取与关键模块定位

4.4.2 关键模块逆向分析

4.4.3 安全防护

4.4.4 有效性和性能

4.5 本章小结

结论

参考文献

声明

致谢

展开▼

摘要

随着工业信息化的发展,信息技术对工业领域的影响越来越深,传统信息安全领域的威胁正逐步向工业控制系统领域扩散,工业控制系统的安全问题日益突出。由于工业控制系统组态软件使用的封闭性以及缺乏相关的安全软件开发规范,这就使得组态软件的开发过程对软件的安全性关注较少,开发的组态软件势必存在更多的安全缺陷。所以,如何提高组态软件的安全性是目前首要解决的问题。
  在对目标工业控制系统组态软件功能分析的基础上,本文依次进行关键模块定位、逆向分析、编写相应的伪装模块,在伪装模块中添加相应的防护策略,以达到对该软件的关键模块进行安全防护的目的。
  首先,基于Pin平台编写相应的Pintools,获取闭源软件的执行轨迹信息。
  接着,通过统计、分析执行轨迹中软件的执行信息,获得软件的关键模块。根据不同的插桩粒度,本文提出了两种关键模块定位的方法:基于指令级执行轨迹对比的关键模块定位方法和基于函数级执行轨迹覆盖度的关键函数定位方法,分别从指令级和函数级获取软件的关键模块。
  然后,对获取的关键模块进行半自动化的逆向分析,获取模块内函数的具体信息,如函数参数,函数返回值等。
  最后,基于DLL劫持的思想,在软件的执行过程中截获执行流程,使得软件在调用这些函数前,进行相应的安全检测。本文在原始模块中函数执行前后,获取函数的传入参数和返回值。根据数据的检测策略和检测结果,执行后续的操作。
  经过对工业控制系统组态软件WinCC的测试,证明了该方法的可行性和有效性。基于本文的研究,通过制定不同的安全检测策略,可以完成不同的安全防护任务,为闭源组态软件的安全防护提供了一种新的思路。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号