下载此文档

基于静态二进制分析的工控协议逆向解析.doc


文档分类:行业资料 | 页数:约4页 举报非法文档有奖
1/4
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/4 下载此文档
文档列表 文档介绍
基于静态二进制分析的工控协议逆向解析.doc基于静态二进制分析的工控协议逆向解析工业控制系统(IndustrialControlSystems,ICS)是工业生产的基础,ICS的安全直接关系到经济、社会发展的稳定利国家安全。与其他计算机系统不同,工业控制系统中存在着大量的私有非标准菲公开协议⑴,而通信协议作为工控设备间信息交互的基础,其安全性是工控系统安全的巫耍组成部分,研究工控协议解析技术对提高工业控制系统安全性具有重要意义。传统的协议逆向分析方法需要耗费大量的时间和人力。目前,协议自动化逆向解析领域主要有两种方法:一种是基于网络报文序列分析的方法,另一种是基于程序执行轨迹的方法。基于网络报文序列分析的方法对于文木协议处理效呆比较好,但是缺乏针对性对协议的语义分析⑵,尤其在面对工业控制环境中普遍存在的多层封装的应用层协议时有些力不从心;而基于执行轨迹方法以动态二进制程序分析为基础,包括Polyglot、、Prospex等方法,这些方法要求样本的覆盖率,需要对程序反复地运行调试⑶,但调试过程屮对代码的直接修改严重破坏了工控系统的稳定性,虽然这种方法解析结果更为准确,但并不适合工业控制系统要求高稳定、高实时的实际情况。针对以上问题,木文提出了一种基于帝态二进制分析的工控协议解析方法,此方法以只读的方式访问二进制文件,既能获取协议语义,又能保证不破坏工控系统的稳定性。分析的结果除提供协议信息以外,还可以在通信协议健壮性测试平台中作为fuzzing测试模块的输入,解决普通的fuzzing系统在面对私有协议时无法有针对性地构造测试样本的问题。本文将此工控协议解析方法作为工业控制系统健壮性测试平台的一个子系统来加以介绍,协议健壮性测试平台结构如图1所示。当今的ICS中越來越广泛地使用了基于x86平台的Windows操作系统,故本文中的方法在实现时主耍针对Windows操作系统,反汇编引擎使用Hex・Rays公司的IDAPro。IDAPro是一款强大的静态二进制分析工具,能够提供功能丰富的IDC函数库(IDAPro的一种原生脚本语言)和软件开发包(SoftwareDevelopmentKit,SDK)⑷。协议解析子系统主要包括以下子模块:文件扫描子模块、协议提取子模块和格式化处理子模块。其中,协议解析模块包括数据预处理阶段、交叉引用分析阶段、协议帧重构阶段、语义提取阶段:格式化处理模块的输出既可以作为测试平台模糊测试模块的输入,为模糊测试样水数据的构造捉供参考,又可以作为测试平台交互模块的输入,为用户提供图形化的结果展现。协议解析模块的子模块结构如图2所示。扫描模块的扫描目标是组态软件等运行于通用计算机的丁•控软件。通常,工控软件体积较为庞大,由众多功能模块构成,但协议分析只需要英中的通信模块,对ICS软件的所有功能模块执行协议解析算法不但会増加时间开销,也会降低分析的准确度。扫描模块的主耍作用就是定位协议分析的对象,为协议分析模块过滤掉与通信无关的操作。文件扌川苗子模块有两种实现方式,…种是远程扌:1描,扫描进程运行于测试平台,通过远程读取工程师站或操作员站上的ICS软件町执行文件并进行分析來实现过滤操作;另一种是以硕件插卡的方式通过USB接口在工控机木地执行扫描进程,并收集扫描结果反馈给测试平台。这两种实现方式的区別在于扫描进程的运行位置不同,远程扫描对工控机没有性能影

基于静态二进制分析的工控协议逆向解析 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数4
  • 收藏数0 收藏
  • 顶次数0
  • 上传人sssmppp
  • 文件大小67 KB
  • 时间2020-09-30