本发明涉及计算机,尤其涉及一种应用软件开发者身份追溯方法及装置。
背景技术:
1、应用软件(application program,简称app)的开发者身份追溯技术有助于定位盗版软件、恶意软件和黑产软件的开发者,打击网络犯罪。目前应用软件的开发者身份追溯方法主要为基于应用软件签名信息的分析方法。
2、基于应用软件签名信息的分析方法,是通过在应用软件签名信息中包含的应用软件发布人员的姓名、所属机构信息、所在城市、省份和国家等信息,通过对这些信息进行识别和分析,对应用软件的开发者身份进行追溯。但是,由于应用软件的签名信息没有真实性校验机制,对开发者没有强约束,也就使得应用软件的开发者可以随意填写签名信息。因此,基于应用软件签名信息的分析方法并不能对应用软件的开发者身份进行精准可靠的追溯。
技术实现思路
1、针对现有技术中的问题,本发明实施例提供一种应用软件开发者身份追溯方法及装置。
2、具体地,本发明实施例提供了以下技术方案:
3、第一方面,本发明实施例提供了一种应用软件开发者身份追溯方法,包括:
4、对目标应用软件的可执行文件进行反编译处理,得到所述目标应用软件的代码文件和/或配置文件;
5、基于第三方软件开发工具包的身份标识声明规则,从所述代码文件和/或所述配置文件中提取对应的第三方软件开发工具包的身份标识信息;其中,所述第三方软件开发工具包的身份标识信息是所述目标应用软件的开发者在对应的第三方软件开发工具包的平台实名注册生成;
6、基于所提取的第三方软件开发工具包的身份标识信息,对所述目标应用软件的开发者身份进行追溯。
7、进一步地,所述对目标应用软件的可执行文件进行反编译处理,得到所述目标应用软件的代码文件和/或配置文件之前,还包括:
8、从所述第三方软件开发工具包的公开文档收集所述第三方软件开发工具包的身份标识声明规则。
9、进一步地,所述第三方软件开发工具包的身份标识声明规则包括:
10、所述第三方软件开发工具包的名称、所述第三方软件开发工具包的身份标识的关键字和所述第三方软件开发工具包的身份标识的取值格式。
11、进一步地,所述基于第三方软件开发工具包的身份标识声明规则,从所述代码文件和/或所述配置文件中提取对应的第三方软件开发工具包的身份标识信息,包括:
12、从所述第三方软件开发工具包的身份标识声明规则中,获取对应的第三方软件开发工具包的身份标识的关键字和对应的第三方软件开发工具包的身份标识的取值格式;
13、将所获取的第三方软件开发工具包的身份标识的关键字,与所述代码文件和/或所述配置文件进行匹配,确定所述关键字在所述代码文件和/或所述配置文件中的位置,基于所获取的第三方软件开发工具包的身份标识的取值格式和所确定的关键字在所述代码文件和/或所述配置文件中的位置,从所述代码文件和/或所述配置文件中提取对应的第三方软件开发工具包的身份标识的取值;
14、所述基于所提取的第三方软件开发工具包的身份标识信息,对所述目标应用软件的开发者身份进行追溯,包括:
15、基于所提取的第三方软件开发工具包的身份标识的取值,对所述目标应用软件的开发者身份进行追溯。
16、进一步地,所述基于所提取的第三方软件开发工具包的身份标识的取值,对所述目标应用软件的开发者身份进行追溯,包括:
17、将所提取的第三方软件开发工具包的身份标识的取值,与所述目标应用软件的可执行文件的哈希值、对应的第三方软件开发工具包的身份标识声明规则中的第三方软件开发工具包的名称和第三方软件开发工具包的身份标识的关键字组成四元组;
18、以所述四元组对所述目标应用软件的开发者身份进行追溯。
19、进一步地,所提取的第三方软件开发工具包的身份标识的取值是所述目标应用软件的开发者在对应的第三方软件开发工具包的平台实名注册后,基于所述目标应用软件的信息生成。
20、进一步地,所述目标应用软件为安卓系统的应用软件,所述代码文件包括java代码文件和native代码文件,所述配置文件包括resource配置文件和androidmanifest.xml配置文件。
21、第二方面,本发明实施例还提供了一种应用软件开发者身份追溯装置,包括:
22、反编译处理模块,用于对目标应用软件的可执行文件进行反编译处理,得到所述目标应用软件的代码文件和/或配置文件;
23、信息提取模块,用于基于第三方软件开发工具包的身份标识声明规则,从所述代码文件和/或所述配置文件中提取对应的第三方软件开发工具包的身份标识信息;其中,所述第三方软件开发工具包的身份标识信息是基于所述目标应用软件的开发者在对应的第三方软件开发工具包的平台实名注册生成;
24、身份追溯模块,用于基于所提取的第三方软件开发工具包的身份标识信息,对所述目标应用软件的开发者身份进行追溯。
25、第三方面,本发明实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所述应用软件开发者身份追溯方法的步骤。
26、第四方面,本发明实施例还提供了一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面所述应用软件开发者身份追溯方法的步骤。
27、第五方面,本发明实施例还提供了一种计算机程序产品,其上存储有可执行指令,该指令被处理器执行时使处理器实现第一方面所述应用软件开发者身份追溯方法的步骤。
28、本发明实施例提供的应用软件开发者身份追溯方法及装置,利用对应用软件进行逆向分析,提取应用软件中集成的第三方软件开发工具包的身份标识信息,由于第三方软件开发工具包的身份标识信息是基于应用软件的开发者在对应的第三方软件开发工具包的平台实名注册生成的,因此通过第三方软件开发工具包的身份标识信息对应用软件的开发者身份进行追溯,可以精准可靠地定位到应用软件的开发者,有助于定位盗版软件、恶意软件和黑产软件的开发者,打击网络犯罪。
1.一种应用软件开发者身份追溯方法,其特征在于,包括:
2.根据权利要求1所述的应用软件开发者身份追溯方法,其特征在于,所述对目标应用软件的可执行文件进行反编译处理,得到所述目标应用软件的代码文件和/或配置文件之前,还包括:
3.根据权利要求2所述的应用软件开发者身份追溯方法,其特征在于,所述第三方软件开发工具包的身份标识声明规则包括:
4.根据权利要求3所述的应用软件开发者身份追溯方法,其特征在于,所述基于第三方软件开发工具包的身份标识声明规则,从所述代码文件和/或所述配置文件中提取对应的第三方软件开发工具包的身份标识信息,包括:
5.根据权利要求4所述的应用软件开发者身份追溯方法,其特征在于,所述基于所提取的第三方软件开发工具包的身份标识的取值,对所述目标应用软件的开发者身份进行追溯,包括:
6.根据权利要求4所述的应用软件开发者身份追溯方法,其特征在于,所提取的第三方软件开发工具包的身份标识的取值是所述目标应用软件的开发者在对应的第三方软件开发工具包的平台实名注册后,基于所述目标应用软件的信息生成。
7.根据权利要求1至6任一项所述的应用软件开发者身份追溯方法,其特征在于,所述目标应用软件为安卓系统的应用软件,所述代码文件包括java代码文件和native代码文件,所述配置文件包括resource配置文件和androidmanifest.xml配置文件。
8.一种应用软件开发者身份追溯装置,其特征在于,包括:
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7任一项所述应用软件开发者身份追溯方法的步骤。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至7任一项所述应用软件开发者身份追溯方法的步骤。