一种基于升级策略特征的固件流量提取装置及方法与流程

摘要: 本发明属于数据表征、固件升级及固件提取,尤其涉及一种基于升级策略特征的固件流量提取装置及方法,适用于物联网设备、工业控制系统等仅支持在线固件升级场景下的固件安全...
一种基于升级策略特征的固件流量提取装置及方法与流程

本发明属于数据表征、固件升级及固件提取,尤其涉及一种基于升级策略特征的固件流量提取装置及方法,适用于物联网设备、工业控制系统等仅支持在线固件升级场景下的固件安全获取与分析。

背景技术:

1、隐藏在工控设备核心板上固件中的漏洞、病毒和后门为智能制造的快速集成带来了风险隐患:一方面会导致数字化转型中智能制造快速集成的核心及敏感信息泄漏;另一方面,还可能导致智能制造产线在极限条件下丧失工作能力。

2、传统固件提取依赖已知接口协议文档或暴力破解,效率低且易损坏设备。调试接口的协议规则因厂商而异,缺乏通用提取工具。所述调试接口,主要包括jtag、uart、spi及swd。手动分析电气信号和通信模式耗时且需专业知识。现有固件提取主要通过设备提供的离线接口(如usb端口或专用固件下载工具)来获取固件文件,例如使用jtag或uart接口直接读取设备存储。现有基于jtag的固件读取装置,该固件读取装置需预先配置协议;还有uart接口自动波特率检测方法,然而该方法未涉及协议推理。

3、现有固件存在如下特性及提取缺陷:第一、直接获取固件困难:原因在于加密与混淆阻碍,例如:binwalk对加密流量无效,厂商采用https、私有加密协议或数据分片,导致传统抓包工具无法直接获取固件;第二、升级策略多样:差分升级、全量升级、多cdn分发等策略需差异化解析,例如华为设备使用huawei.com/ota/delta路径标识差分包;第三、动态交互复杂性:升级前需模拟设备身份认证(如aws iot的mqtt证书握手),现有方法及装置无法自动完成链式请求;

4、随着物联网设备普及,许多设备仅支持在线固件升级,通过互联网与远程服务器通信下载更新,且制造商常不提供离线固件访问接口以增强安全性和版权保护。这导致固件获取困难,阻碍了安全审计、漏洞分析和逆向工程工作,因为现有方法无法直接提取在线升级流量中的固件数据。现有通过精确识别和推理调试接口的通信规则,访问和提取设备固件数据的方法;调试接口为用于嵌入式系统和电子设备调试、故障排除和编程的硬件接口,包括jtag、uart、spi和swd等,提供了与设备处理器和存储器直接通信的功能。应用规则推理,推断调试接口的通信协议和操作规则。

5、问题根源在于在线升级流量通常采用加密协议(如https或专有加密)和复杂通信模式,使得流量数据庞杂难辨;现有网络监控工具(如wireshark)仅能捕获原始数据包,但缺乏系统化特征识别机制来精准定位固件传输部分,导致提取失败率高(据行业报告,成功率低于30%)且重组过程易受数据包丢失或顺序错误影响。

6、综上,现有技术缺乏一种能够在无物理访问条件下,系统化识别、捕获、解密、重组并验证在线升级流量中固件数据的完整技术方案。

技术实现思路

1、本发明的目的在于针对工控设备板载固化存储器的固件提取与后门感知以使固件成分透明化,打破进口设备固件获取及分析困难,通过固件后门动态感知,防范恶意投毒等威胁,促进产业智能制造的快速集成,提出了一种基于升级策略特征的固件流量提取装置及方法,本技术与原有调试接口形成“本地+远程”双通道固件提取体系,覆盖设备全生命周期数据获取;尤其涉及一种逆向分析设备升级流量特征,实现固件包的自动化捕获与重组装置与方法。

2、为了实现上述目的,本发明采取如下技术方案。

3、作为本发明的第一方面,提出了基于升级策略特征的固件流量提取装置,包括策略特征管理模块组、流量处理模块组、固件重组验证模块组、解密还原模块组、识别规则模块,其中:

4、所述策略特征管理模块组,具体包括:策略特征模块,用于采集、存储并动态更新设备升级流量的策略指纹,所述策略指纹包括url路径模式、http头部字段、tls证书主题标识及ota版本参数;升级流量特征库构建模块,用于基于采集的策略特征构建结构化升级流量特征库,支持加密、分片及差分升级场景的条目分类存储;升级策略指纹识别模块,用于将实时捕获的网络流量与所述升级流量特征库进行匹配识别,输出固件升级流量标记及对应策略指纹条目;

5、所述流量处理模块组,具体包括:动态捕获单元,用于通过镜像端口或透明代理方式捕获原始网络流量;过滤流量单元,用于基于所述升级策略指纹识别模块输出的标记,实时过滤非升级相关流量;

6、所述固件重组验证模块组,具体包括:固件包重组单元,用于对标记为固件升级的分片传输数据按字节偏移量排序重组,并处理丢包与乱序;完整性验证模块,用于校验重组后固件的完整性;

7、所述解密还原模块组,具体包括:加密流量自动解密模块,用于对加密流量进行协议解密;增量升级还原模块,用于对差分升级包基于旧版本固件还原为完整文件;

8、所述识别规则模块,用于建立并维护加密流量识别规则,所述识别规则包括tls握手阶段sni字段含ota关键词的匹配规则,为所述升级策略指纹识别模块提供预筛选规则;

9、其中,所述策略特征管理模块组、流量处理模块组、固件重组验证模块组、解密还原模块组依次数据连接形成处理链路;所述完整性验证模块与所述策略特征模块形成闭环反馈连接,经完整性验证后的固件包,其有效策略特征自动反馈更新至所述策略特征模块。

10、所述升级流量特征库构建模块构建的结构化升级流量特征库,包括主流厂商设备的策略特征条目;所述动态捕获单元与过滤流量单元协同工作,通过中间人代理或镜像端口捕获原始流量,并基于所述升级流量特征库实时过滤非相关流量。

11、所述升级策略指纹识别模块用于识别分片传输的升级策略指纹,所述识别包括:基于url路径模式的一级筛选、基于http头部字段的二级验证、基于tls证书主题标识的三元确认;所述加密流量自动解密模块通过预置设备制造商中间证书或信任锚证书及动态注入解密密钥实现。

12、所述升级策略指纹识别模块对分片传输场景的策略指纹分段识别包括:解析httprange请求头部的字节范围字段识别分片传输起始包,或基于tcp序列号连续性追踪分片序列,在首个分片匹配策略指纹后,自动将同流后续分片关联标记为固件升级流量。

13、所述固件包重组单元处理数据包丢失包括通过tcp序列号校验识别缺失分片并触发重传请求;处理顺序混乱包括基于tcp传输层重排序机制恢复正确序列;所述加密流量自动解密模块对解密后的数据追加完整性校验。

14、所述加密流量自动解密模块的解密包括:对标准tls加密流量,基于预置设备制造商中间证书或信任锚证书建立中间人解密通道;对私有加密协议,通过动态注入从设备调试接口提取的会话密钥实现解密。

15、所述增量升级还原模块解析差分升级包格式,基于旧版本固件二进制通过差分算法还原完整文件;所述增量升级还原模块集成错误恢复机制和日志记录功能,所述错误恢复机制包括自动重传请求及校验失败重试。

16、所述闭环反馈连接具体执行:经完整性验证后的固件包,其完整请求url、响应头部模式、证书链特征经规范化处理后,作为新策略指纹条目写入所述策略特征模块,实现特征库的自进化更新。

17、所述升级策略指纹识别模块集成未知策略发现机制:对未匹配所述升级流量特征库但符合所述识别规则模块预筛选条件的流量,输出可疑升级流量标记及完整流量特征快照;经预设规则或后续完整性验证通过后,所述策略特征模块自动将所述完整流量特征快照转化为新策略指纹条目补入所述升级流量特征库。

18、作为本发明的第二方面,提出了一种基于升级策略特征的固件流量提取方法,与调试接口提取形成互补,解决无物理访问权限设备的固件获取问题,包括如下步骤:

19、s1、构建升级流量特征库:采集设备升级流量中的策略特征,建立包含url路径模式、http头部字段、tls证书主题标识及ota版本参数的策略指纹,形成结构化升级流量特征库;

20、s2、建立加密流量识别规则:建立并维护包括tls握手阶段sni字段含ota关键词匹配规则的识别规则,为升级策略指纹识别提供预筛选依据;

21、s3、升级策略指纹识别:将实时捕获的网络流量与所述升级流量特征库进行匹配识别,输出固件升级流量标记;

22、s4、动态捕获与过滤流量:通过镜像端口或透明代理捕获原始网络流量,基于所述升级流量特征库实时过滤非升级相关流量;

23、s5、固件包重组与验证:对标记为固件升级的分片传输数据按字节偏移量排序重组,处理丢包与乱序,并校验重组后固件的完整性;

24、s6、加密流量自动化解密:对加密流量进行协议解密;

25、s7、增量升级还原:对差分升级包基于旧版本固件还原为完整文件;

26、s8、策略指纹反馈更新:将经完整性验证后的有效策略特征自动反馈更新至所述升级流量特征库,实现闭环自进化。

27、升级流量特征库,具体实施时,通过两种途径实现,1)依托建立的加密流量识别规则识别采集和提取的策略特征,构建或补充升级流量特征库;2)在有升级需求时,依托策略特征构建升级策略指纹并识别再经解密加密流量、升级增量再捕捉网络通信流量,将捕捉网络通信流量特征补入升级流量特征库中;

28、构建的升级策略指纹,包括设备厂商指纹,不限于设备特征、存储路径以及mac地址;所述设备特征,如http头user-agent: esp32-ota、特定url模式/firmware/.bin?v=;

29、所述加密流量识别规则,包括tls握手阶段sni字段含ota关键词;

30、动态捕获与过滤流量具体实施时,所述动态捕捉,支持加密、分片以及差分升级,通过镜像端口捕获原始流量;所述过滤流量基于特征库实时过滤非相关流量(如排除心跳包get /ping);固件捕获成功率提升至90%+;与调试接口提取形成互补,解决无物理访问权限设备的固件获取问题。

31、动态捕捉,具体通过捕获设备实现,所述捕获设备在固件在线升级过程中的网络通信流量;应用预定义特征策略分析流量数据,所述特征策略定义固件升级特征;在识别特征后提取相关数据包,重组以恢复完整固件文件,最后存储固件数据;

32、特征策略定义固件升级特征,具体依托策略特征构建升级策略指纹并识别再经解密加密流量、升级增量再捕捉网络通信流量,再补入升级流量特征库中;

33、具体实施时,所述预定义特征策略,限定为详细分析协议并动态优化特征识别,实现高精度定位;所述详细分析的协议,包括http/mqtt头部的固件标识符或数据包长度模式;

34、识别分片传输的字节范围并按偏移量重组;具体实施时,所述字节范围为0到4096字节;校验文件完整性,具体通过对比服务器返回的sha-256哈希值;重组固件包并进行偏移量重组以及校验文件完整性;经完整性验证后的固件包;所述重组固件包,包括处理数据包丢失和顺序混乱并追加解密和校验;所述处理数据包丢失,包括但不限于通过序列号校验。

35、升级策略指纹识别为识别分片传输的升级策略指纹,具体通过url路径、http头及证书cn字段来区分;所述增量升级还原模块,通过解析差分升级包并基于旧版本固件还原完整文件。

36、顺序混乱,包括但不限于基于传输控制协议tcp重排序;所述解密和校验,包括但不限于使用预共享密钥解密和校验。具体实施时,所述捕获设备在固件在线升级过程中的网络通信流量使用标准工具,所述标准工具,包括但不限于wireshark或tcpdump;所述重组,包括处理数据包丢失和顺序混乱并追加解密和校验;确保数据完整性;所述处理数据包丢失,包括但不限于通过序列号校验;所述顺序混乱,包括但不限于基于传输控制协议tcp重排序;所述解密和校验,包括但不限于使用预共享密钥解密和crc校验;所述固件升级特征,包括特定请求格式、响应模式和数据包结构。

37、加密流量自动解密,通过预置设备根证书池及动态注入解密密钥实现;具体实施时,所述加密流量自动化解密,包括预置设备根证书池及动态注入解密密钥;预置设备根证书池如globalsign r2;动态注入解密密钥针对私有协议通过调试接口提取的密钥,与原方案联动;

38、增量升级还原:解析差分升级包(.bsdiff)并基于旧版本固件还原完整文件;具体实施时,增量升级还原,还包括错误恢复机制和日志记录功能;所述错误恢复机制,包括但不限于自动重传请求;和日志记录功能,增强鲁棒性和可追溯性。

39、有益效果

40、本发明提出的基于升级策略特征的固件流量提取装置及方法,与现有技术相比,具有如下优势:

41、第一,解决无物理访问场景的固件获取难题。 与调试接口提取形成"本地+远程"双通道固件提取体系,当设备缺乏离线升级接口或部署于不可达环境时,通过网络流量分析实现固件获取,显著扩展固件安全分析的覆盖范围。

42、第二,策略指纹闭环自进化提升识别精度。 通过构建策略特征库并持续反哺更新,自适应覆盖新型设备及演进中的升级策略,固件流量识别精度优于静态规则方法。

43、第三,全流程自动化降低人力依赖。 集成捕获、过滤、解密、重组、验证、还原完整流程,支持加密流量自动化解密及差分升级包自动还原,减少人工协议分析与手动数据处理工作量。

44、第四,增强数据完整性与操作可追溯性。通过密码学哈希校验、tcp层重排序及错误恢复机制,确保固件数据准确完整;日志记录功能支持操作审计与问题追溯。