收藏 分销(赏)

RT-Trace:基于指令步进识别的工控设备执行流采集技术.pdf

上传人:自信****多点 文档编号:2584816 上传时间:2024-06-01 格式:PDF 页数:10 大小:15.82MB
下载 相关 举报
RT-Trace:基于指令步进识别的工控设备执行流采集技术.pdf_第1页
第1页 / 共10页
RT-Trace:基于指令步进识别的工控设备执行流采集技术.pdf_第2页
第2页 / 共10页
RT-Trace:基于指令步进识别的工控设备执行流采集技术.pdf_第3页
第3页 / 共10页
亲,该文档总共10页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、收稿日期:修回日期:基金项目:国家重点研发计划资助项目()中原科技创新领军人才项目()作者简介:刘厚志()男硕士生主要研究方向为工控设备安全:/:基于指令步进识别的工控设备执行流采集技术刘厚志 麻荣宽 魏 强(信息工程大学河南 郑州)摘要:由于薄弱的安全措施和重要的军事、经济价值现代工业控制设备迅速成为了网络攻击的重要目标 工控设备因其在人们生产生活中的作用以及当前严峻的不安全现状引起了研究人员的重点关注 其中固件作为工控设备的核心部分其安全的重要性不言而喻 然而由于固件在烧录的过程中其烧录方法和固件安全性保护的标准、等级和措施均不相同使得固件在提取过程中依赖专家经验 同时由于大部分工控设备为

2、了能够应对极端环境通常使用定制化专有芯片少有配备如嵌入式跟踪宏单元()等执行跟踪组件因此难以采集设备执行时的信息 提出一种基于指令步进识别的工控设备执行流采集技术 通过对工控设备进行硬件分析、固件提取和监控采集将工控设备的固件整体安全情况进行分析和梳理 实验结果表明该方法能够提取出大部分的工控设备固件并且能够对设备执行过程中的函数调用次数、服务开启情况、内存污染度进行较为全面的数据采集关键词:工控设备跟踪固件提取执行流跟踪中图分类号:.文献标识码:文章编号:().第 卷第 期 年 月信 息 工 程 大 学 学 报 .引言当前嵌入式设备在全世界被广泛使用任何执行控制或自动化功能的现代嵌入式系统都

3、可能包含一个集成的微控制器可执行固件这些固件控制设备的行为和与物理世界的交互 工业.时代的到来现代的工业控制系统()高度融合了信息和通信技术来监视和控制自动化工业过程的稳定运行如数据采集与监视控制系统、分布式控制系统和安全仪表系统 是大多数关键基础设施的底层支撑广泛用于电力、水务、燃气、化工、制药、食品以及其他各类关键基础设施行业 同时 的安全与工业互联网中的控制安全和设备安全息息相关由于传统的工业控制设备主要通过仿真嵌入式系统的固件来对固件进行安全测试已经被证明是一种能够克服硬件需求的技术 固件通过在软件实现的模拟器上进行运行并且允许在服务器或普通计算机上执行同时通过固件模拟的方法还可以启动

4、多个实例而实例的数量仅受计算资源可用性的限制尽管这些工业控制系统目前开发较为成熟但针对这些固件的安全漏洞分析仍是一项具有挑战性的任务因为它与硬件紧密耦合 目前的动态分析方法几乎都需要固件在设备上执行但是由于设备和动态分析工具之间交互受到硬件带宽的限制因此这极大地限制了检查其当前设备测试情况的能力 执行检查功能通常由硬件上的调试端口提供并且能够使用的断点数量有限 此外让调试端口可访问通常被认为是非常不安全的因此安全测试员试图分析固件时通常都不可能使用调试端口 由于硬件的需求安全测试也增加了成本降低了应用自动化分析的规模例如可编程逻辑控制器每个成本可达数千美元 自动化漏洞测试(如模糊)需要运行许多

5、设备实例来有效地发现漏洞而设备的成本大大限制了可以执行测试的规模 因此固件仿真的方法是一种能够对固件进行透明化动态分析的方法固件仿真是将设备的固件从实体硬件设备中分离出来并在计算机中虚拟执行的方法该方法将能够对全部的内存和中央处理器()状态进行监控并且由于其本身的软件执行特性可以进行大规模的动态测试 进行仿真的首要前提是能够将固件文件从设备中提取出来并且能够获取到设备中的必要硬件信息然而目前针对工控设备的固件提取和信息采集并没有一套合理成熟的方案因此使得工控固件的模拟执行产生较大的困难为了解决上述挑战本文通过对工业控制系统中的嵌入式设备的固件预处理部分进行技术研究通过对工业控制系统设备的硬件做

6、拆解分析、固件提取、设备运行时数据采集来解决工业控制系统设备的动态分析过程中固件的数据采集困难的问题 研究背景.固件仿真固件模拟执行的一个重大挑战是需要模拟大量的硬件外设因此有两个属性是需要重点比较的:一是模拟器用于提供这些外设的基本技术 所采用的技术将直接关系到另一个属性硬件的复杂性是可模拟的 有些系统很简单没有外设而其他系统可能连接到远程终端单元()、可编程逻辑控制器()、现场可编程门阵列()、多个传感器、数据库和人机界面控制器()等 专业人员想要模拟的硬件数量将从单个芯片或传感器一直到整个大型系统 硬件仿真的硬件数量和复杂性在很大程度上受到外设仿真技术的限制由于嵌入式设备运行时的不可观测

7、性导致当前主流的模糊测试引擎例如基于覆盖引导()的模糊测试工具()无法直接针对嵌入式上固件进行模糊测试 所以将固件运行在模拟器上并将其内存数据及寄存器值提取出来作为模糊测试引擎的数据是一个主流的解决方案 当前的主流固件模拟方法主要有如下 种:全系统模拟、硬件在环()模拟和固件托管()模拟 将使用模拟器来执行指令执行但是对硬件外设进行硬件上的转发它们被转发给实际的硬 第 期刘厚志等:基于指令步进识别的工控设备执行流采集技术件 全系统模拟时通过对每一种外设均实现其具体的硬件逻辑从而做到将原本搭载固件的开发板进行完全模拟的工作 通过在固件中识别软件抽象并用自己的实现替换这些抽象的执行来提供外围硬件功

8、能或者使用机器学习来提供硬件交互而模糊则使用随机生成来提供模拟的硬件交互等方法 然而无论是、符号执行、纯模拟的方法来模拟执行固件其主要目标是让固件能够正常执行而让固件能够正常执行的首要目的是能够将固件的各类外设当前需要的数据以仿真的形式提供给固件 因此对于当前的固件模拟技术可以将这些方法根据仿真的实际目标分成如下 类:)对内存映射(/)外设交互进行仿真)对模拟器添加新系统级芯片()支持)对模拟器添加新的 支持)构建新指令集 目前整理的工作如表 所示表 固件模拟方法总结仿真方式模拟工作仿真实现目标支持的架构是否需要硬件纯模拟方法)否)否)否)否)否)否)是)是符号执行)否)否)否其他类型)否)/

9、否.工业控制系统由于薄弱的安全措施和重要的军事、经济价值 迅速成为网络攻击的重要目标面临着越来越大的网络攻击威胁而可编程逻辑控制器 是 的核心容易遭受到攻击者的攻击 从 年开始针对工业控制设备的恶意攻击事件越发频繁 年爆发的“震网”病毒成功摧毁了伊朗纳坦兹的核设施拖延了伊朗的核计划成为针对工业控制设备的网络攻击标志性事件 震网病毒的出现证实了通过网络空间进行攻击可以达到与传统物理空间攻击同等的效果 震网病毒借助通用串行总线()摆渡进入物理隔离的工业网内肆意传播导致大量离心机瘫痪 震网事件也让人们意识到针对工业控制设备的网络攻击可以打破信息技术()和操作技术()两个层次的界限最终可以造成物理设施

10、的破坏 年和 年 和 分别两次攻击乌克兰电力系统造成大范围的停电 年美国的风电场涡轮机因遭受黑客远程控制而烧毁 年 病毒利用大部分用户边界设备的不安全默认证书制造了一个大约 万设备的僵尸网络 年在中东地区某能源系统里发现了 病毒攻击了施耐德电气的安全仪表系统 安全仪表系统是保障变电站控制设备运行安全的控制系统依然会被黑客远程攻击 年委内瑞拉电力系统遭受了更大规模的攻击 年 月一场针对以色列自来水和污水处理系统的网络攻击给以色列带来了经济损失甚至会带来灾难性的物理破坏、人员伤亡和政治影响 年 月美国最大输油管道公司 遭到勒索软件攻击导致其被迫关闭管道系统 方法本文提出的 是一种基于指令步进识别的

11、工控设备执行流采集方法对工控系统嵌入式设备进行硬件分析、固件提取、监控采集方法为工控设备的固件模拟执行做基础工作 本工作主要分 个模块硬件分析模块、固件提取模块和监控采集模块 通过 个模块来获取工控设备的整体软硬件信息利用硬件分析模块获取设备的各个硬件型号、内存布局、指令架构等利用固件提取模块来获取设备的可执行系统文件最后再通过监控采集模块获取设备在执行过程中的数据执行流、函数 信 息 工 程 大 学 学 报 年调用次数、内存污染情况和服务开启情况等内容整体的系统设计如下图 所示图 方法框架图.硬件分析模块在硬件分析技术通过对工控设备从起板载外设到其核心架构进行全面查找和分析通过获取到设备的整

12、体硬件信息从而能够更好对该设备进行仿真在外设种类方面对于 ()而言大部分外设的具体功能和偏移地址等并不重要只有关键的几种外设如通用异步收发传输器(/)、以太网()、中断控制器等这些外设通常会和更多的外设进行连接如、蓝牙等因此将 这类外设的地址、各个寄存器功能、寄存器间联动等内容进行全面分析非常有必要针对 型号部分不同的设备其 型号几乎不会一致同时用于其型号的不一致导致在模拟过程中需要确定该设备的寄存器数量、内存结构、各类外设提供的内存区域等关键信息 对于工控设备其 需要在环境较为恶劣的条件下依然能够平稳运行的能力因此工控设备的 与普通的嵌入式 通常并不一样然而在本文的探索观察中发现大量的工控设

13、备依然是使用知名的芯片公司如、等这些公司提供了详细的对应型号的 资料能够根据资料查找对于 部分所需要的信息 但并不是每一款 均能找到对应的资料信息如 公司所生产的 该芯片的 非常简略对于每个外设的寄存器、偏移地址等没有任何详细的内容这也直接导致了通过芯片手册进而使用神经语言程序学()的方法将设备的外设实现的方式存在困难但是任何芯片手册都会对设备大体上的内存布局进行 描 述 如 只 读 存 储 器()、随机存取存储器()等因此对于内存布局部分的信息依然可以找到最后对于其核心架构通常是通过查看 型号的方式来得知该设备的具体架构是什么然而并不是每一个设备的 型号都能够直接获取到通常存在大量的设备其

14、已经被出产厂商抹掉了其标签无法得知该 的具体型号 但是通过对其设备中的固件文件进行分析和查找通常而言设备的固件文件中会在一定程度上包含该设备的处理器信息因此可以利用、第 期刘厚志等:基于指令步进识别的工控设备执行流采集技术 等文件解析工具从而将 的核心架构分析出来.固件提取模块相对于嵌入式设备而言其操作系统是设备运行的关键而操作系统会由开发者将其以二进制文件的形式烧录到嵌入式设备中而这个二进制文件便是固件文件 固件文件本身的定义较为宽泛对于实时操作系统()类的设备而言固件文件是一个可执行文件然而对于 类操作系统的设备而言固件文件是一系列可执行文件做形成的文件包 在工业控制设备中其所使用的操作系

15、统通常是 类即其固件文件是一个可执行文件因此在提取的过程中主要是识别并获取一个可执行的二进制文件针对工控设备的固件提取通常可以使用如下的 种方法:)利用设备硬件调试接口的提取方式)从设备 中获取)工控编程软件解密获取.设备硬件调试接口获取开发者在开发嵌入式设备的时候是通过设备的调试接口对其进行调试、烧写和篡改的因此在固件提取的时候也可以利用硬件调试接口来达到目标 通常来讲设备上能够使用的硬件调试接口主要是联合测试工作组()和 这两种接口能够利用交互的方式将固件提取出来第 种通过 接口的方法是通过与设备的板载 进行连接从而将固件从设备的内存中提取出来的方法 该方法需要设备芯片支持 调试的方法有时

16、设备的 引脚很难直接全部接出来的情况下如果芯片支持支援串列线调试()调试方式也可以直接通过连接 的部分引脚从而和设备进行通信 第 种通过 的方法是通过连接板上的硬件 接口从而实现串口通信在设备存在 或者系统能够进行串口交互功能的情况下将固件利用串口下载下来的方法 这两种方法均需要设备本身实际存在该引脚有时开发商在发布该设备的时候会将这种调试接口的标识抹掉或者不在板上存留该接口这种情况下如果 本身是方形扁平式封装技术()这种表面贴型封装的方法的话便可以直接通过在 上直接连接引线的方法进行通信如图 所示 直连引脚法是将 的调试接口引脚用引脚夹等工具和调试器进行连接的方法利用这种方法就可以在没有板载

17、上没有引脚的情况下对芯片进行内容读取图 直连引脚法.固件提取尽管前一种方法能够解决大部分的固件提取问题但是仍然有很多的工控设备不能直接与设备进行通信这是由于当前 都是球栅阵列封装()的封装方式这种点阵型封装无法利用引脚夹夹住对应的引脚因而不能直接和设备做通信 然而对于存在 的系统而言其内核文件通常要放置在 中进行存储在启动设备的过程中首先启动 进行硬件的初始化之后再从存储器中读取内核文件并覆盖 从而完成系统启动的目的 其中 是最常用的一类存储器也叫闪存是工控设备中常用的一种内存类型 它是可读写的存储器在系统重新启动或关机之后仍能保存数据 中存放着当前正在使用的操作系统等信息使用 进行固件提取首

18、先需要找到所有设备上装载的 通常而言厂商在发布设备的时候除了 之外其他的芯片标识不会擦除因此可以通过查看芯片上的标识去辨别该芯片是否是 芯片对每一个识别出来的 芯片都对其进行读取查看其中是否存在所需要的固件文件内容即可 对于 引脚以下的芯片可以通过引脚夹将芯片和编程器进行连接而对于 引脚以上的芯片则需要将芯片从设备上利用热风枪等工具拆卸下来再利用编程器读取其中的数据 图 为通过夹住 芯片的方法将设备中的固件进行提取的方法利用引脚夹将芯片夹住之后通过 烧录器 讲芯片中的数据读取出来图 为将固件中的信息进行读取后的情况 然 信 息 工 程 大 学 学 报 年而这种方法存在一定的不稳定行在对其中的数

19、据进行读取时由于芯片夹本身不够牢靠每次读取出来的数据量大小不一本文将会在实验中对这个问题进一步描述图 提取方法图 提取后数据图样.工控编程软件获取对于工控设备而言在拿到一款工控设备时如果其是可编程的便一定有其对应的编程软件用编程软件连接到对应的设备之后便能够看见该设备的固件版本、设备型号等信息同时对于能够本地进行固件更新的设备而言可以通过联系官方客服或者在软件中找到对应的固件文件 例如施耐德 系列的 设备其所使用的软件是 而施耐德 使用的烧录软件则是 这些软件通常在其文件夹中会存放着最新的固件版本用于设备的固件烧录然而在拿到固件文件的时候这些固件文件并不一定是一个完整的可执行固件文件 在处理施

20、耐德 固件的过程中发现该固件没有可读明文字符串因此认为该固件是加密固件现阶段对烧录软件的工作原理有两种猜测一种是其将原加密固件进行解密后烧录到 中第 种是直接将加密固件传输到 中之后 进行硬件解密再放到 里运行 为了验证两种猜测就需要对整个烧录软件进行逆向分析了解整个烧录软件的运行过程 直接将烧录软件.用 打开检查其中的字符串和带符号函数查看其中是否存在特殊字符 通过人工的逆向分析发现到了一个函数其为 消息传输主要就是固件数据传输到 中假设其所传输的文件为解密后的固件文件检查其交叉引用查看是否有函数调用了文件 函数文件 函数大体上所做的工作即是提取加密固件文件数据的功能 如图 为软件在传输过程

21、中的 函数该函数能够将固件数据分包传输到设备中并且函数中存在一个可显字符串“”通过动态调试和静态逆向分析的过程中发现该部分主要是开始对固件进行解密处理和数据传输图 固件 传输函数最终的固件的整体解密流程如图 所示 首先每次读取 个字节并判断第 个字节和后 个字节是否是数字如果是的话则再读取 个字节并读取后 位字节这 个字节的主要功能为定位固件数据的插入位置 确定好数据的输入位置之后便开始读取数据内容不同的编号要读取的数据量不一样根据 两个字节来判断需要读取多少的数据最终根据固件数据的输入位置和数据内容将其写入到新文件中最终形成解密后的固件文件然而第 种针对从 中直接进行解密的方法用于烧录文件等

22、能够接触到的软件没有将固件文件进行解密的内容但是 在启动的过程中一定会要在 有初始的 代码来用于 第 期刘厚志等:基于指令步进识别的工控设备执行流采集技术对固件进行解密因为嵌入式系统本身不同于通用计算机软件所以固件在执行过程中很少或者不会出现诸如动态解密技术等因此在执行的过程中需要通过调试接口与设备进行连接同时将断电置为开机断点从而能够对固件中的代码执行流进行跟踪分析出设备的 对固件进行解密过程中的代码逻辑从而得到针对加密固件的解密方法并编写解密脚本实现对加密固件的解密工作图 固件解密流程.监控采集模块设备调试模块的主要工作是将设备固件从设备启动到设备开始正常运行的执行过程中的执行流采集出来通

23、过采集到的执行流能够对设备当前所开启的服务、调用的函数等进行分析 采集执行流可以完整的深入观察一个系统运行时的行为它揭示了在任务运行中发生了什么哪个中断触发了任务切换中断和任务调用了哪个系统的 函数 该方法不但可以实时分析和展示数据而且可以帮助用户进行系统调试和问题诊断尤其是在开发和处理具有多个任务的复杂系统的时候但并不是每一个设备都可以进行设备调试只有在设备本身提供了对应的 或 接口或者是设备的 是通过 等贴式封装进行封装的才能够进行调试 尽管很多操作系统如 有自带的调试功能但是这类调试方法是在系统已经整体开始运行之后才能开始执行并不能将设备的启动过程中所执行的部分收集下来因此系统级的调试工

24、具无法满足设备调试模块的需求 监控采集模块如图 所示 在本节中针对设备的 等硬件调试接口将使用 公司开发的 来进行硬件数据的接受和指令发送当执行一条新的 指令时中断固件执行并开始向 发送数据传输请求将设备中的寄存器数值、相关内存数据、执行流等内容传输到模块中同时在执行的过程中也会记录中断函数的触发情况在观察中发现大部分的系统服务都是通过中断触发的方式执行的因此记录中断函数的触发便能够知道哪些服务被触发 针对每一个基本块都会记录其前序基本块从而形成 流图有别于正常的程序流图 流图主要用于得知系统整体在执行过程中的调用和跳转关系因此程序流图以基本块为最小单位进行绘制 最后根据汇编指令当出现、等跳转

25、指令并且确实进行跳转的时候将会记录函数的调用次数从而得到函数调用次数图图 监控采集模块流程然而在执行过程中硬件本身的带宽会极大影响数据传输过程中的效率和稳定性有 的平均带宽为 /因此其本身能传输的数据数量有限这也是硬件在环方式固件模拟过程中所产生的最大的问题 由于内存数据量较大大部分设备的内存总量为 若每执行一条指令便对全域内存进行更新会造成巨大的延迟 并且由于大部分工控设备本身不会提供直观可见的 接口使得在数据采集的过程中如果由于引脚之间断触导致采集过程中中断便会使得采集数据失效因此在监控采集部分主要存在两个挑战:)如何在保证内存变化记录不遗漏的情况下缩减采集时间)如何能够保证采集断触导致失

26、败的情况下能够恢复现场从而继续采集本节提出了基于指令步进识别的执行流采集方法在进行设备采集的过程中系统也会读取设备的固件文件每当设备执行一条新的指令时会中断设备的执行并获取设备的所有寄存器信息根 信 息 工 程 大 学 学 报 年据当前的 寄存器的值来识别出当前固件所执行的指令和其所在的基本块 如图 所示当遇到内存读写指令如、等将会进行内存读写触发检测如果是赋值操作则跳过但如果是读写操作则会对该指令进行记录并存储在内存读写触发表中 内存读写触发表将会对记录该内存地址所发生过的所有读写操作并记录发生时的 寄存器值当执行采集完成后把每一个地址的表项中数值最大的作为该内存地址的污染字长从而能够计算出

27、内存的污染程度图 内存读写触发 实验与结果.实验环境实验对象选择如表 所示的 款设备进行评估测试 实验环境为 实体操作系统和.虚拟机系统配置 处理器和 内存 本节主要评估方法在提取设备固件、对设备执行过程中的执行流采集能力进行测试和评估表 设备固件信息设备型号厂家芯片型号处理器固件情况施耐德私有格式施耐德 加密南大傲拓 未加密南瑞继保 未加密四方继保 未知横河未知未加密选用如上 种设备的原因在于能够包含在对工控固件进行预处理的过程中所能遇见的绝大多数情况并且以上 种芯片在市场上的使用率较低因此缺少相关的文章和方法 为了能够检测本方法的有效性实验目标包括以下两个内容:)本方法是否能够将所有的设备

28、的固件提取出来)本方法是否能够获取到程序的执行流效果如何.工控设备固件提取评估本节给出了目前所使用的所有固件提取方式是否能够将本实验所提出的 种设备的固件文件并且能够正常在 中进行逆向分析 由于不同的设备其保护机制和固件文件格式不同因此在提取过程中使用的方法也不尽相同但是在提取过程中由于 的固件本身格式是 私有格式文件因此需要对该文件进行符号恢复以达到能够进行正常逆向和模拟执行的目标在获取到 固件时通过直接对固件文件的二进制数据进行检查能够发现大量的可显示字符串但是直接放入 中无法识别该文件的格式因此该文件被初步认为是 的私有格式文件 系统在生成固件时能够生成其私有格式的固件文件如图 所示 每

29、一个表项长度为 字节并且第 个字节表示符号表中当前表项的作用 表示该表项为函数名表项 表示变量表项 第 字节往后 个字节表示的是函数名的偏移地址第 字节往后 字节表示函数的偏移地址 因此根据上述内容即可恢复固件的符号表和偏移地址计算出固件文件的符号表首地址和尾地址从而每 字节进行一次识别最终便能够恢复出表 中固件存在的所有的固件函数图 私有格式符号表单表项结构表 固件提取情况设备型号芯片型号是否能提取 固件情况提取方法私有格式软件提取 加密软件提取并解密未加密串口提取未加密 提取未知无未知无未加密 提取然而仍然有两款设备的固件无法提取出来主要原因为两点:首先 其固件本身是加密固件然而其有一块

30、运算芯片该芯片承担了固 第 期刘厚志等:基于指令步进识别的工控设备执行流采集技术件的加解密工作但是由于 芯片本身的特性导致无法获取到芯片中的加解密逻辑使得固件目前还无法做到解密工作而横河的 在软件和官网中没有相关固件信息 中也获取不到关于固件的数据印刷板没有相关的调试接口且 核心采用 封装技术无法直接引出引脚进行连接导致固件提取失败 针对 的逻辑分析也将会是未来计划继续的工作.工控设备执行流效果评估本文将对在获取固件执行流函数调用次数、污染内存识别情况和服务开启情况进行评估评估设备为施耐德 和南大傲拓 两款工控设备上述两款设备均能够通过 连接设备上的 接口进行动态调试 两款设备均执行到 函数完

31、成及初始化工作完成为止部分图 为在执行过程中所采集到的两个设备的函数调用次数的测试结果 柱状图中黑色部分表示在执行过程中 的函数所执行的次数红色部分表示 的函数所执行的次数 实验结果显示初始化类的函数如、等使用次数较少并且由于 本身在执行过程中初始化部分和网络交互部分为两个可执行文件因此在 执行完毕之前没有使用 函数 而任务调度类函数如、等使用频率较高主要是因为 类操作系统的任务调度机制使得所有的多线程任务均要使用任务调度函数来执行 并且根据表中的数据发现串口类函数如、等 的使用次数均比 高其原因主要是 固件没有 那样高度定制化会有很多 原生的信息通过串口打印出来并且 在执行初始化过程中开启了

32、、等服务使得 等通过通道读取数据的函数使用量提高以上结果均符合实验预期效果图 和 函数调用次数情况为了能够检测两款设备的服务和内存数据污染情况将执行流采集设置为从初始化完成到设备执行一段时间为止两款设备均执行相同的时间表 表示了执行后的测试结果其中服务开启情况为在执行过程中两款设备所开启的所有的监听和中断处理程序内存污染度为所有的被使用调用过的内存占总体内存的百分比采集是否中断为在采集过程中系统崩溃使得无法完整采集的的情况其中采集发生中断的主要原因是因为 所使用的芯片 本身并不支持频繁地大量数据传输导致在执行过程中存在芯片崩溃的情况但是通过内存区域进行环境恢复即可继续执行采样分析表 设备执行采

33、集情况设备名称服务开启情况采集是否中断 设备名称、串口是、串口、否 结束语本文提出了一种基于指令步进识别的工控设备执行流采集方法以获得工控设备中的固件文件并采集设备在执行过程中的函数调用次数、服务开启情况、内存污染度、代码覆盖率等信息并实现了原型工具 通过硬件分析、固件提取和监控采集 个模块完成通过硬件分析模块识别出设备的硬件组件通过固件提取模块获得固件的完整可执行文件和相关基址信息最后通过指令步进识别的方法对设备的执行流数据进行监控采集针对不同的指令内容进行不同的数据处理从而获得所需要的运行时信息 本文针对 款工控设备进行提取能够完整提取出 款设备的固件可执行文件并针对两款 进行执行流采集能够准确采集到所有在运行时希望获取到的数据参考文献:魏强王文海程鹏.工业互联网安全:架构与防御.北京:机械工业出版社.曹宗泽.基于因果关系的 异常检测方法研究.合肥:合肥工业大学.李士宁.传感网原理与技术.北京:机械工业出版社.:.():.信 息 工 程 大 学 学 报 年 .:.:./.().:././.().:./.:.:.:.:.:.:.:.:.:.:.:/.().:./././.().:././.:.:.:.:.:.:.:.:./.().:./.(编辑:刘彦茹)第 期刘厚志等:基于指令步进识别的工控设备执行流采集技术

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 论文指导/设计

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服