[发明专利]一种动态链接库缺失的可执行程序的动态分析方法有效
申请号: | 201710265961.9 | 申请日: | 2017-04-21 |
公开(公告)号: | CN107239703B | 公开(公告)日: | 2020-05-22 |
发明(设计)人: | 应凌云;莫建平;聂眉宁;苏璞睿 | 申请(专利权)人: | 中国科学院软件研究所 |
主分类号: | G06F21/56 | 分类号: | G06F21/56 |
代理公司: | 北京君尚知识产权代理有限公司 11200 | 代理人: | 邵可声 |
地址: | 100190 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 动态 链接 缺失 可执行 程序 分析 方法 | ||
1.一种动态链接库缺失的可执行程序的动态分析方法,包括如下步骤:
1)预先生成一种子DLL;其中种子DLL为DLL模板,用于生成所有程序样本导入的DLL;
2)判断待分析的程序样本是否具有合法的导入表,如是,则执行步骤3),否则终止对该样本的分析并输出错误信息;
3)通过解析导入表结构,提取程序样本导入的DLL信息;
4)针对程序样本导入的每一个DLL都生成种子DLL的一个拷贝,并修改该拷贝名称使之与所针对的DLL名称一致;
5)根据步骤3)得到的DLL信息,对生成的DLL拷贝的导出表进行修改,使其形成程序样本依赖的DLL。
2.如权利要求1所述的动态链接库缺失的可执行程序的动态分析方法,其特征在于,还包括:6)根据步骤5)形成全部程序样本导入的DLL,将这些DLL移动到用户指定目录,并向用户报告生成结果。
3.如权利要求1所述的动态链接库缺失的可执行程序的动态分析方法,其特征在于,步骤1)中所述种子DLL导出了足够多函数。
4.如权利要求3所述的动态链接库缺失的可执行程序的动态分析方法,其特征在于,步骤1)中根据分析平台的系统版本,编译所述种子DLL;所述种子DLL导出了的函数的个数不小于9999个。
5.如权利要求1所述的动态链接库缺失的可执行程序的动态分析方法,其特征在于,步骤1)中编译所述种子DLL的同时记录分析平台所有的系统DLL名称;步骤3)提取程序样本导入的DLL信息时,排除步骤1)中记录的系统DLL。
6.如权利要求1所述的动态链接库缺失的可执行程序的动态分析方法,其特征在于,通过解析程序样本的文件头,判断程序样本是否具有合法的导入表。
7.如权利要求1所述的动态链接库缺失的可执行程序的动态分析方法,其特征在于,步骤3)中所述程序样本导入的DLL信息包括:程序样本导入的所有DLL名称及导入的各DLL对应的函数信息。
8.如权利要求7所述的动态链接库缺失的可执行程序的动态分析方法,其特征在于,所述函数信息包括按名称导入的函数的信息和按序号导入的函数的信息。
9.如权利要求8所述的动态链接库缺失的可执行程序的动态分析方法,其特征在于,按序号导入的函数的信息包括按函数序号导入的函数的序号值,按名称导入的函数的信息包括按函数名称导入的函数的字符串名和hint值。
10.如权利要求1所述的动态链接库缺失的可执行程序的动态分析方法,其特征在于,步骤5)中对DLL拷贝的导出表进行修改过程中,对于按名称导入的函数,在导出表中随机选取一项,修改其导出的函数名称,使之与导入的函数名称相同;对于按序号导入的函数,检查导出表中是否导出了具有该序号的函数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院软件研究所,未经中国科学院软件研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710265961.9/1.html,转载请声明来源钻瓜专利网。
- 上一篇:膨胀开关阀
- 下一篇:检测Y染色体微缺失的多重PCR引物组、试剂盒和应用