一种可执行模块的提供、加载方法及终端技术

技术编号:13375760 阅读:54 留言:0更新日期:2016-07-20 22:39
本发明专利技术提出了一种可执行模块的提供、加载方法及终端,该提供方法,在主机端执行的流程包括:对可执行模块进行哈希计算得到可执行模块哈希表;至少针对所述可执行模块哈希表进行签名得到签名信息;至少针对所述可执行模块哈希表、所述签名信息以及所述可执行模块进行封装,发布封装后的数据包,以使目标端至少基于所述可执行模块哈希表、所述签名信息以及所述可执行模块对数据包进行审核并通过后,加载所述数据包中的所述可执行模块。本发明专利技术应用在可执行模块的发布和加载过程中,通过对可执行模块的哈希表等信息进行签名,由移动通讯终端在加载该可执行模块前进行鉴权的方式,实现对该可执行模块的安全认证,避免可执行模块对系统的注入性攻击。

【技术实现步骤摘要】

本专利技术涉及可执行程序开发和使用
,尤其涉及一种可执行模块的提供、加载方法及终端
技术介绍
在现有的内核模块(KernelModule,简称KMOD)开发领域,开发者通过命令insmod加载内核模块至内核空间,内核未对内核模块进行认证,直接加载至内核空间运行。若开发者对第三方合法二进制内核模块进行修改,加入攻击性代码,则会通过insmod方式,使内核自动执行加入的攻击性代码,导致严重的内核安全问题。除了内核模块之外,其他的可执行模块的开发和加载过程也同样存在上述问题,因此,如何实现可执行模块的安全加载成为本领域亟待解决的技术问题。
技术实现思路
本专利技术要解决的技术问题是,提供一种可执行模块的提供、加载方法及终端,实现可执行模块的安全加载。本专利技术采用的技术方案是,所述可执行模块的提供方法,在主机端执行的流程包括:对可执行模块进行哈希计算得到可执行模块哈希表;至少针对所述可执行模块哈希表进行签名得到签名信息;至少针对所述可执行模块哈希表、所述签名信息以及所述可执行模块进行封装,发布封装后的数据包,以使目标端至少基于所述可执行模块哈希表、所述签名信息以及所述可执行模块对数据包进行审核并通过后,加载所述数据包中的所述可执行模块。进一步的,封装后的数据包的组成部分包括以下几段:数据包头、哈希表段和可执行模块段;所述哈希表段包括:启动镜像头、可执行模块哈希表、以及签名信息。进一步的,所述哈希表段,还包括:对哈希表段进行哈希计算得到的哈希表段哈希表。进一步的,所述数据包的组成部分还包括:段表,所述段表包括:哈希表段头和可执行模块段头;所述哈希表段,还包括:对段表进行哈希计算得到的段表哈希表,和/或,对哈希表段进行哈希计算得到的哈希表段哈希表。进一步的,至少针对所述可执行模块哈希表进行签名得到签名信息,包括:对所述可执行模块哈希表进行签名得到签名信息;或者,对所述可执行模块哈希表、以及以下至少之一进行签名得到的签名信息:启动镜像头、段表哈希表、哈希表段哈希表。进一步的,所述数据包为ELF格式、APK格式、DMG格式或者ZIP格式的数据包;所述可执行模块的类型,包括:内核模块或者应用模块。本专利技术还提供一种可执行模块的加载方法,在目标端执行的流程包括:基于数据包中的可执行模块哈希表、可执行模块以及签名信息,对所述数据包进行审核;所述签名信息,包括:至少对所述可执行模块哈希表进行签名得到签名信息;当审核通过时,加载所述数据包中的所述可执行模块。进一步的,所述数据包的组成部分包括以下几段:数据包头、哈希表段和可执行模块段;所述哈希表段包括:启动镜像头、可执行模块哈希表、以及所述签名信息。进一步的,所述哈希表段,还包括:对哈希表段进行哈希计算得到的哈希表段哈希表。进一步的,基于数据包中的可执行模块哈希表、可执行模块以及签名信息,对所述数据包进行审核,包括:对签名信息进行鉴权;当鉴权通过后,进行以下至少一项比对工作:1)对可执行模块进行哈希计算得到第一动态哈希表,将第一动态哈希表与数据包中的可执行模块哈希表进行比对;2)对哈希表段进行哈希计算得到第二动态哈希表,将第二动态哈希表与数据包中的哈希表段哈希表进行比对;若所进行的各项比对的结果均一致,则审核通过,否则审核不通过。进一步的,所述数据包的组成部分还包括:段表;所述段表包括:哈希表段头和可执行模块段头;所述哈希表段,还包括:对段表进行哈希计算得到的段表哈希表,和/或,对哈希表段进行哈希计算得到的哈希表段哈希表。进一步的,基于数据包中的可执行模块哈希表、可执行模块以及签名信息,对所述数据包进行审核,包括:对签名信息进行鉴权;当鉴权通过后,进行以下至少一项比对工作:1)对可执行模块进行哈希计算得到第一动态哈希表,将第一动态哈希表与数据包中的可执行模块哈希表进行比对;2)对哈希表段进行哈希计算得到第二动态哈希表,将第二动态哈希表与数据包中的哈希表段哈希表进行比对;3)对段表进行哈希计算得到第三动态哈希表,将第三动态哈希表与数据包中的段表哈希表进行比对;若所进行的各项比对的结果均一致,则审核通过,否则审核不通过。进一步的,所述签名信息,还包括以下至少之一进行签名得到的签名信息:启动镜像头、段表哈希表、哈希表段哈希表。进一步的,所述数据包为ELF格式、APK格式、DMG格式或者ZIP格式的数据包;所述可执行模块的类型,包括:内核模块或者应用模块。本专利技术还提供一种主机终端,包括:第一处理器,用于对可执行模块进行哈希计算得到可执行模块哈希表;至少针对所述可执行模块哈希表进行签名得到签名信息;至少针对所述可执行模块哈希表、所述签名信息以及所述可执行模块进行封装,发布封装后的数据包,以使目标端至少基于所述可执行模块哈希表、所述签名信息以及所述可执行模块对数据包进行审核并通过后,加载所述数据包中的所述可执行模块。本专利技术还提供一种目标终端,包括:第二处理器,用于基于数据包中的可执行模块哈希表、可执行模块以及签名信息,对所述数据包进行审核;所述签名信息,包括:至少对所述可执行模块哈希表进行签名得到签名信息;当审核通过时,加载所述数据包中的所述可执行模块。采用上述技术方案,本专利技术至少具有下列优点:本专利技术所述可执行模块的提供、加载方法及终端,实现可执行模块的安全加载,应用在移动通讯终端系统中的可执行模块中,例如内核模块或者应用模块的发布和加载过程中,通过对这些二进制的可执行模块的哈希表等信息进行签名,由移动通讯终端在加载该可执行模块前进行鉴权的方式,实现对该可执行模块的安全认证,避免可执行模块对系统的注入性攻击。附图说明图1为本专利技术第一实施例的可执行模块的提供方法流程图;图2为本专利技术第三实施例的可执行模块的加载方法流程图;图3为本专利技术第五实施例的主机终端组成结构示意图;图4为本专利技术第六实施例的目标终端组成结构示意图;图5为本专利技术第七实施例的内核模块的提供和加载系统中的签名单元的一种实现流程示意图;图6为本专利技术第七实施例的内核模块的提供和加载系统中的鉴权单元的一种实现流程示意图。具体实施方式为更进一步阐述本专利技术为达成预定目的所采取的技术手段及功效,以下结合附图及较佳实施例,对本专利技术进行详细说明如后。本专利技术第一实施例,一种本文档来自技高网...

【技术保护点】
一种可执行模块的提供方法,其特征在于,在主机端执行的流程包括:对可执行模块进行哈希计算得到可执行模块哈希表;至少针对所述可执行模块哈希表进行签名得到签名信息;至少针对所述可执行模块哈希表、所述签名信息以及所述可执行模块进行封装,发布封装后的数据包,以使目标端至少基于所述可执行模块哈希表、所述签名信息以及所述可执行模块对数据包进行审核并通过后,加载所述数据包中的所述可执行模块。

【技术特征摘要】
1.一种可执行模块的提供方法,其特征在于,在主机端执行的流程包括:
对可执行模块进行哈希计算得到可执行模块哈希表;
至少针对所述可执行模块哈希表进行签名得到签名信息;
至少针对所述可执行模块哈希表、所述签名信息以及所述可执行模块进行
封装,发布封装后的数据包,以使目标端至少基于所述可执行模块哈希表、所
述签名信息以及所述可执行模块对数据包进行审核并通过后,加载所述数据包
中的所述可执行模块。
2.根据权利要求1所述的可执行模块的提供方法,其特征在于,封装后的
数据包的组成部分包括以下几段:数据包头、哈希表段和可执行模块段;
所述哈希表段包括:启动镜像头、可执行模块哈希表、以及签名信息。
3.根据权利要求2所述的可执行模块的提供方法,其特征在于,所述哈希
表段,还包括:对哈希表段进行哈希计算得到的哈希表段哈希表。
4.根据权利要求2所述的可执行模块的提供方法,其特征在于,所述数据
包的组成部分还包括:段表,所述段表包括:哈希表段头和可执行模块段头;
所述哈希表段,还包括:对段表进行哈希计算得到的段表哈希表,和/或,
对哈希表段进行哈希计算得到的哈希表段哈希表。
5.根据权利要求4所述的可执行模块的提供方法,其特征在于,至少针对
所述可执行模块哈希表进行签名得到签名信息,包括:
对所述可执行模块哈希表进行签名得到签名信息;
或者,
对所述可执行模块哈希表、以及以下至少之一进行签名得到的签名信息:
启动镜像头、段表哈希表、哈希表段哈希表。
6.根据权利要求1~5中任一项所述的可执行模块的提供方法,其特征在于,
所述数据包为ELF格式、APK格式、DMG格式或者ZIP格式的数据包;所述

\t可执行模块的类型,包括:内核模块或者应用模块。
7.一种可执行模块的加载方法,其特征在于,在目标端执行的流程包括:
基于数据包中的可执行模块哈希表、可执行模块以及签名信息,对所述数
据包进行审核;所述签名信息,包括:至少对所述可执行模块哈希表进行签名
得到签名信息;
当审核通过时,加载所述数据包中的所述可执行模块。
8.根据权利要求7所述的可执行模块的加载方法,其特征在于,所述数据
包的组成部分包括以下几段:数据包头、哈希表段和可执行模块段;
所述哈希表段包括:启动镜像头、可执行模块哈希表、以及所述签名信息。
9.根据权利要求8所述的可执行模块的加载方法,其特征在于,所述哈希
表段,还包括:对哈希表段进行哈希计算得到的哈希表段哈希表。
10.根据权利要求9所述的可执行模块的加载方法,其特征在于,基于数
据包中的可执行模块哈希表、可执行模块以及签名信息,对所述数据包进行审
核,包括:...

【专利技术属性】
技术研发人员:贾嘉
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1