一种软件安装包的加固保护方法和系统的制作方法_4

文档序号:9751175阅读:来源:国知局
对写入壳程序文件的修改后的动态库文件进行加固处理。
[0102]A7、根据A6所述的方法,所述对写入壳程序文件的修改后的动态库文件进行加固处理包括如下至少一种:
[0103]去掉所述修改后的动态库文件中的部分信息;
[0104]对所述修改后的动态库文件进行分段加密处理;
[0105]对所述修改后的动态库文件进行代码混淆处理;
[0106]对所述修改后的动态库文件进行反调试处理。
[0107]AS、根据Al所述的方法,在所述对软件安装包进行解析,得到可执行文件和动态库文件的步骤之前,还包括:
[0108]对所述软件安装包进行检测,得到检测结果;
[0109]根据所述检测结果确定所述软件安装包的安全评分结果;
[0110]根据所述安全评分结果生成加固选项,以在触发所述加固选项时执行所述对软件安装包进行解析,得到可执行文件和动态库文件的步骤。
[0111]A9、根据A1-A8任意项所述的方法,所述可执行文件包括:dex文件;所述动态库文件包括:so文件。
[0112]本发明还提供了B10、一种软件安装包的加固保护系统,包括:
[0113]解析模块,用于对软件安装包进行解析,得到可执行文件和动态库文件;
[0114]提取模块,用于从所述可执行文件中提取设定数据;
[0115]替换模块,用于将所述设定数据加载至动态库文件中,并使用设定函数替代所述可执行文件中被提取的设定数据;其中,所述设定函数用于指示所述设定数据在动态库文件中的加载位置;
[0116]重生成模块,用于根据修改后的可执行文件和修改后的动态库文件,对解析后的软件安装包进行重打包,生成加固软件安装包。
[0117]Bll、根据BlO所述的系统,还包括:
[0118]加密模块,用于在所述提取模块从所述可执行文件中提取设定数据之后,对所述设定数据进行加密。
[0119]B12、根据Bll所述的系统,所述替换模块在将所述设定数据加载至动态库文件中时,包括:
[0120]将加密后的设定数据加载至动态库文件中。
[0121]B13、根据B1所述的系统,所述提取模块,包括:
[0122]确定子模块,用于遍历确定所述可执行文件中的所有字符串数据;
[0123]提取子模块,用于将所述字符串数据作为所述设定数据进行提取。
[0124]B14、根据BlO所述的系统,所述动态库文件与所述可执行文件满足设定关联关系。
[0125]B15、根据BlO所述的系统,还包括:
[0126]写入模块,用于将修改后的动态库文件作为代码数据写入壳程序文件中;
[0127]加固模块,用于对写入壳程序文件的修改后的动态库文件进行加固处理。
[0128]B16、根据B15所述的系统,所述加固模块,用于去掉所述修改后的动态库文件中的部分信息;和/或,
[0129]对所述修改后的动态库文件进行分段加密处理;和/或,
[0130]对所述修改后的动态库文件进行代码混淆处理;和/或,
[0131]对所述修改后的动态库文件进行反调试处理。
[0132]B17、根据BlO所述的系统,还包括:
[0133]检测模块,用于在所述解析模块对软件安装包进行解析,得到可执行文件和动态库文件之前,对所述软件安装包进行检测,得到检测结果;
[0134]评分模块,用于根据所述检测结果确定所述软件安装包的安全评分结果;
[0135]选项生成模块,用于根据所述安全评分结果生成加固选项,以在触发所述加固选项时执行所述检测模块。
[0136]B18、根据B10-B18任意项所述的系统,所述可执行文件包括:dex文件;所述动态库文件包括:so文件。
【主权项】
1.一种软件安装包的加固保护方法,包括: 对软件安装包进行解析,得到可执行文件和动态库文件; 从所述可执行文件中提取设定数据; 将所述设定数据加载至动态库文件中,并使用设定函数替代所述可执行文件中被提取的设定数据;其中,所述设定函数用于指示所述设定数据在动态库文件中的加载位置;根据修改后的可执行文件和修改后的动态库文件,对解析后的软件安装包进行重打包,生成加固软件安装包。2.根据权利要求1所述的方法,其特征在于,在从所述可执行文件中提取设定数据的步骤之后,还包括: 对所述设定数据进行加密。3.根据权利要求2所述的方法,其特征在于,所述将所述设定数据加载至动态库文件中,包括: 将加密后的设定数据加载至动态库文件中。4.根据权利要求1所述的方法,其特征在于,所述从所述可执行文件中提取设定数据,包括: 遍历确定所述可执行文件中的所有字符串数据; 将所述字符串数据作为所述设定数据进行提取。5.根据权利要求1所述的方法,其特征在于,所述动态库文件与所述可执行文件满足设定关联关系。6.根据权利要求1所述的方法,其特征在于,还包括: 将修改后的动态库文件作为代码数据写入壳程序文件中; 对写入壳程序文件的修改后的动态库文件进行加固处理。7.根据权利要求6所述的方法,其特征在于,所述对写入壳程序文件的修改后的动态库文件进行加固处理包括如下至少一种: 去掉所述修改后的动态库文件中的部分信息; 对所述修改后的动态库文件进行分段加密处理; 对所述修改后的动态库文件进行代码混淆处理; 对所述修改后的动态库文件进行反调试处理。8.根据权利要求1所述的方法,其特征在于,在所述对软件安装包进行解析,得到可执行文件和动态库文件的步骤之前,还包括: 对所述软件安装包进行检测,得到检测结果; 根据所述检测结果确定所述软件安装包的安全评分结果; 根据所述安全评分结果生成加固选项,以在触发所述加固选项时执行所述对软件安装包进行解析,得到可执行文件和动态库文件的步骤。9.根据权利要求1-8任意项所述的方法,其特征在于,所述可执行文件包括:dex文件;所述动态库文件包括:so文件。10.—种软件安装包的加固保护系统,包括: 解析模块,用于对软件安装包进行解析,得到可执行文件和动态库文件; 提取模块,用于从所述可执行文件中提取设定数据; 替换模块,用于将所述设定数据加载至动态库文件中,并使用设定函数替代所述可执行文件中被提取的设定数据;其中,所述设定函数用于指示所述设定数据在动态库文件中的加载位置; 重生成模块,用于根据修改后的可执行文件和修改后的动态库文件,对解析后的软件安装包进行重打包,生成加固软件安装包。
【专利摘要】本发明公开了一种软件安装包的加固保护方法和系统,其中,所述方法包括:对软件安装包进行解析,得到可执行文件和动态库文件;从所述可执行文件中提取设定数据;将所述设定数据加载至动态库文件中,并使用设定函数替代所述可执行文件中被提取的设定数据;其中,所述设定函数用于指示所述设定数据在动态库文件中的加载位置;根据修改后的可执行文件和修改后的动态库文件,对解析后的软件安装包进行重打包,生成加固软件安装包。通过本发明提高了软件安装包的安全性,增加了软件安装包被逆向工程、反编译、调试、破解、和/或二次打包的难度。
【IPC分类】G06F21/12, G06F21/14
【公开号】CN105512521
【申请号】CN201510998081
【发明人】刘敏
【申请人】北京奇虎科技有限公司, 奇智软件(北京)有限公司
【公开日】2016年4月20日
【申请日】2015年12月25日
当前第4页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1