[发明专利]一种固件更新方式的识别方法和装置在审
申请号: | 202011056566.8 | 申请日: | 2020-09-29 |
公开(公告)号: | CN112306522A | 公开(公告)日: | 2021-02-02 |
发明(设计)人: | 李明春;舒梓峰 | 申请(专利权)人: | 北京软慧科技有限公司 |
主分类号: | G06F8/65 | 分类号: | G06F8/65 |
代理公司: | 北京风雅颂专利代理有限公司 11403 | 代理人: | 李翔 |
地址: | 100876 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 更新 方式 识别 方法 装置 | ||
本发明公开了一种固件更新方式的识别方法和装置,所述方法包括:对待识别的固件进行初步逆向处理:将所述固件中的每个函数的名称以及地址进行对应保存;遍历所有函数的名称,查找出名称具有通信关键字的函数;根据查找出的函数的地址,获取所述函数的代码;在确定出获取的该函数的代码中有固件更新相关代码后,根据所述固件更新相关代码识别出所述固件的更新方式。应用本发明不需要在实际设备上运行固件,不需要进行数据流捕获的过程,而以更简单的方法实现固件更新方式的识别,解析出固件更新使用的协议、策略等信息,以助于固件的安全性的分析。
技术领域
本发明涉及固件技术领域,特别是指一种固件更新方式的识别方法和装置。
背景技术
固件(Firmware)就是写入EPROM(可擦写可编程只读存储器)或EEPROM(电可擦可编程只读存储器)中的程序。
固件是指设备内部保存的设备“驱动程序”,通过固件,操作系统才能按照标准的设备驱动实现特定机器的运行动作,比如光驱、刻录机等都有内部固件。
固件是担任着一个系统最基础最底层工作的软件。而在硬件设备中,固件就是硬件设备的灵魂,因为一些硬件设备除了固件以外没有其它软件组成,因此固件也就决定着硬件设备的功能及性能。
可嵌入式设备由于各种原因(功能升级、修复bugs等)需要对固件进行升级,即需要对固件进行更新。
目前对固件的更新方式的识别过程,需要在实际设备上运行固件,且需要相应的一套抓包设备,通过监听、抓包、流量分析进行固件空中升级的数据流捕获,从而进行流量包的拆解,分析得出固件的更新方式。然而,该过程中需要分析的数据庞大、复杂,有时候也会漏掉一些流量数据,分析出的协议也可能不完整。
发明内容
有鉴于此,本发明的目的在于提出一种固件更新方式的识别方法和装置,不需要在实际设备上运行固件,不需要进行数据流捕获的过程,而以更简单的方法实现固件更新方式的识别,解析出固件更新使用的协议、策略等信息,以助于固件的安全性的分析。
基于上述目的,本发明提供一种固件更新方式的识别方法,包括:
对待识别的固件进行初步逆向处理:将所述固件中的每个函数的名称以及地址进行对应保存;
遍历所有函数的名称,查找出名称具有通信关键字的函数;
根据查找出的函数的地址,获取所述函数的代码;
在确定出获取的该函数的代码中有固件更新相关代码后,根据所述固件更新相关代码识别出所述固件的更新方式。
进一步,所述对待识别的固件进行初步逆向处理,还包括:将所述固件中所有的可见字符串进行保存;以及
在所述获取所述函数的代码后,还包括:
若获取的所有函数的代码中没有固件更新相关代码,则遍历保存的可见字符串是否有通信关键字;
若查找到具有通信关键字的可见字符串,则确定出该可见字符串所在函数以及与该函数具有调用关系的函数;
若确定出的函数中有固件更新相关代码,则根据所述固件更新相关代码识别出所述固件的更新方式。
本发明还提供一种固件更新方式的识别装置,包括:
函数查找模块,用于对待识别的固件进行初步逆向处理:将所述固件中的每个函数的名称以及地址进行对应保存;遍历所有函数的名称,查找出名称具有通信关键字的函数;
固件更新代码查找模块,用于根据所述函数查找模块查找出的函数的地址,获取所述函数的代码;在确定出获取的该函数的代码中有固件更新相关代码后,根据所述固件更新相关代码识别出所述固件的更新方式。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京软慧科技有限公司,未经北京软慧科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011056566.8/2.html,转载请声明来源钻瓜专利网。