[发明专利]一种Android平台应用程序保护的加脱壳方法无效
申请号: | 201310511607.1 | 申请日: | 2013-10-25 |
公开(公告)号: | CN103530535A | 公开(公告)日: | 2014-01-22 |
发明(设计)人: | 汪德嘉;宋超 | 申请(专利权)人: | 苏州通付盾信息技术有限公司 |
主分类号: | G06F21/12 | 分类号: | G06F21/12;G06F21/14 |
代理公司: | 南京苏科专利代理有限责任公司 32102 | 代理人: | 陈忠辉 |
地址: | 215125 江苏省苏州市工业*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 android 平台 应用程序 保护 脱壳 方法 | ||
技术领域
本发明涉及一种移动平台特别是Android平台应用程序加壳脱壳方法设计,综合利用软件编程技术、程序分析技术、网络服务技术加密解密技术及移动通讯技术实现。
背景技术
在一些计算机软件里有一段专门负责保护软件不被非法修改或反编译的程序。它们一般都是先于程序运行拿到控制权,然后完成它们保护软件的任务。就像动植物的壳一般都是在身体外面一样理所当然(但后来也出现了所谓的“壳中带籽”的壳)。由于这段程序和自然界的壳在功能上有很多相同的地方,基于命名的规则,大家就把这样的程序称为“壳”了。就像计算机病毒和自然界的病毒一样,其实都是命名上的方法罢了。从功能上抽象,软件的壳和自然界中的壳相差无几。无非是保护、隐蔽壳内的东西。
从技术的角度出发,壳是一段执行于原始程序前的代码。原始程序的代码在加壳的过程中可能被压缩、加密。当加壳后的文件执行时,这段代码先于原始程序运行,它把压缩、加密后的代码还原成原始程序代码,然后再把执行权交还给原始代码。软件的壳分为加密壳、压缩壳、伪装壳、多层壳等类,目的都是为了隐藏程序真正的OEP(入口点,防止被破解)。
程序员编好软件后,编译成可执行文件。1.有一些版权信息需要保护起来,不想让别人随便改动,如作者的姓名,即为了保护软件不被破解,通常都是采用加壳来进行保护。2.需要把程序搞的小一点,从而方便使用。于是,需要用到一些软件,它们能将可执行文件压缩。3.在黑客界给木马等软件加壳脱壳以躲避杀毒软件。实现上述功能,这些软件称为加壳软件。
加壳的程序可以有效阻止对程序的反汇编分析,以保护软件版权,防止被软件破解。
PC平台现在已存在大量标准化的加壳和解壳工具,加壳一般属于软件加密,脱壳一般分手动和自动两种,手动就是用TRW2000、TR、SOFTICE等调试工具对付,对脱壳者有一定水平要求,涉及到很多汇编语言和软件调试方面的知识。而自动就是用专门的脱壳工具来脱,最常用某种压缩软件都有他人写的反压缩工具对应,有些压缩工具自身能解压,如UPX;有些不提供这功能,如:ASPACK,就需要UNASPACK对付。好处是简单,缺点是版本更新了就没用了。另外脱壳就是用专门的脱壳工具来对付,最流行的是PROCDUMP v1.62,可对付目前各种压缩软件的压缩档。通常,只要知道文件的加密方式,就可以使用不同的工具、不同的方法进行脱壳。以下是业界常常会碰到的加壳方式及简单的脱壳措施,仅供参考:脱壳的基本原则就是单步跟踪,只能往前,不能往后。脱壳的一般流程是:查壳→寻找OEP→Dump→修复,找OEP的一般思路如下:先看壳是加密壳还是压缩壳,压缩壳相对来说容易些,一般是没有异常,找到对应的popad后就能到入口。当知道文件被一些压缩加壳软件加密,下一步就要分析加密软件的名称、版本。因为不同软件甚至不同版本加的壳,脱壳处理的方法都不相同。
但是Android作为新兴移动平台还未出现apk加壳工具。Android的Dex文件大量应用推广给加壳带来了一定的难度,但是从技术角度来看,Android apk加壳脱壳也是可行的,并且随着应用的不断延伸必要性不断体现。
发明内容
针对当前Android平台应用程序保护方面的不足,本发明的目的旨在提出一种Android平台应用程序保护的加脱壳方法,安全推进该平台应用的发展。
本发明的上述目的,其得以实现的技术解决方案为:一种Android平台应用程序保护的加脱壳方法,其特征在于:所述加脱壳方法包括面向Android平台应用程序原可执行文件的加壳步骤和脱壳步骤两部分,其中所述加壳步骤为利用外置的加壳工具对原可执行文件的文件格式结构进行分析并加密源程序为带壳数据;所述脱壳步骤为应用程序运行前在移动终端的内存中优先加载并运行脱壳程序,对带壳数据进行源程序解密后将原可执行文件加载至内存中正常运行。
进一步地,所述脱壳程序与带壳数据相分离且脱壳程序存储于云端服务器,在移动终端运行应用程序前直接动态加载脱壳程序至内存并运行,对带壳数据进行源程序解密。
进一步地,所述脱壳程序与带壳数据通过外置的加壳工具组装成脱壳程序dex文件,在移动终端运行应用程序前先在内存中运行脱壳程序部分,对带壳数据进行源程序解密。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州通付盾信息技术有限公司,未经苏州通付盾信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310511607.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种铝合金轮毂表面电解抛光方法
- 下一篇:环保脱脂剂