[发明专利]二进制可执行文件依赖库分析方法、装置、电子设备及存储介质在审
申请号: | 202111518401.2 | 申请日: | 2021-12-13 |
公开(公告)号: | CN114357454A | 公开(公告)日: | 2022-04-15 |
发明(设计)人: | 陈灵锋;肖新光 | 申请(专利权)人: | 安天科技集团股份有限公司 |
主分类号: | G06F21/57 | 分类号: | G06F21/57;G06F8/41;G06K9/62 |
代理公司: | 北京科衡知识产权代理有限公司 11928 | 代理人: | 王淑静 |
地址: | 150028 黑龙江省哈尔滨市高新技术产*** | 国省代码: | 黑龙江;23 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 二进制 可执行文件 依赖 分析 方法 装置 电子设备 存储 介质 | ||
1.一种二进制可执行文件依赖库分析方法,其特征在于,所述方法包括步骤:
对待分析二进制可执行文件进行特征提取,得到所述二进制可执行文件的特征信息;
根据所述二进制可执行文件的特征信息与指纹特征数据库进行匹配,确定对应的依赖库指纹特征;所述指纹特征数据库存储有用于标识依赖库属性信息的指纹特征;
根据所述依赖库指纹特征确定对应的依赖库属性信息。
2.根据权利要求1所述的方法,其特征在于,所述二进制可执行文件的特征信息包括:一种或多种;
所述根据所述二进制可执行文件的特征信息与指纹特征数据库进行匹配,确定对应的依赖库指纹特征包括:根据所述二进制可执行文件的任一种特征信息与所述指纹特征数据库中的指纹特征进行全局匹配;
若所述二进制可执行文件的任一种特征信息与所述指纹特征数据库中的第一指纹特征的匹配度达到预设全局匹配度阈值,则将所述第一指纹特征确定为所述二进制可执行文件对应的依赖库指纹特征。
3.根据权利要求1或2所述的方法,其特征在于,所述二进制可执行文件的特征信息和指纹特征数据库中的指纹特征分别包括:导出信息、可见字符串和/或中间语言序列。
4.根据权利要求1所述的方法,其特征在于,所述根据所述依赖库指纹特征确定对应的依赖库属性信息包括:
根据所述依赖库指纹特征确定对应的依赖库库名标识。
5.根据权利要求4所述的方法,其特征在于,所述特征信息包括:可见字符串;
所述根据所述依赖库指纹特征确定对应的依赖库属性信息还包括:在根据所述依赖库指纹特征确定对应的依赖库库名标识之后,根据所述可见字符串与对应依赖库的版本信息表进行匹配,确定所述依赖库库名标识对应的依赖库版本信息;其中,所述依赖库的版本信息表中预设有依赖库库名标识、以及可见字符串与依赖库版本信息之间的对应关系。
6.根据权利要求1所述的方法,其特征在于,所述在对待分析二进制可执行文件进行特征提取之前,所述方法还包括:
获取待分析二进制可执行文件的文件头;
根据所述文件头确定待分析二进制可执行文件的类型。
7.根据权利要求6所述的方法,其特征在于,所述对待分析二进制可执行文件进行特征提取,得到所述二进制可执行文件的特征信息包括:
根据所述二进制可执行文件的类型解析二进制可执行文件的数据段和/或代码段、导出信息及处理器架构信息;
若解析得到所述数据段,则对所述数据段进行特征提取,得到可见字符串和/或导出信息;
若解析得到代码段,则根据所述处理器架构信息,对所述代码段反汇编,得到汇编指令;所述汇编指令包含:汇编代码;
将所述汇编代码翻译成与处理器架构无关的中间语言;
基于所述中间语言建立控制流图;
对所述控制流图进行静态程序分析,得到中间语言序列。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:对获取的不同版本的开源软件库作为样本文件进行分析;
提取所述样本文件中的指纹特征;
根据所述样本文件中的指纹特征,建立指纹特征数据库;所述指纹特征包含:导出信息、可见字符串和/或中间语言。
9.根据权利要求8所述的方法,其特征在于,所述根据所述样本文件中的指纹特征,建立指纹特征数据库包括:
基于降维算法对不同样本文件中同一类型指纹特征进行相似性计算,得到不同样本文件共有的同一类型指纹特征值;
将不同样本文件共有的同一类型指纹特征值存储,形成所述指纹特征数据库。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于安天科技集团股份有限公司,未经安天科技集团股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111518401.2/1.html,转载请声明来源钻瓜专利网。