APK自我保护方法】的更多相关文章

标 题: [原创]APK自我保护方法 作 者: MindMac 时 间: 2013-12-28,21:41:15 链 接: http://bbs.pediy.com/showthread.php?t=183116 APK 的自我保护 MindMac 2013/12/28  由于 Android 应用程序中的大部分代码使用 Java 语言编写,而 Java 语言又比较容易进 行逆向,所以 Android 应用程序的自我保护具有一定的意义.本文总结了 Android 中可以使 用的一些 APK 自我…
经过了忙碌的一周终于有时间静下来写点东西了,我们继续介绍android apk防止反编译技术的另一种方法.前两篇我们讲了加壳技术(http://my.oschina.net/u/2323218/blog/393372)和运行时修改字节码(http://my.oschina.net/u/2323218/blog/396203),如果有不明白的可以查看我的博客的前两篇中关于这两种技术的介绍.接下来我们将介绍另一种简单适用的防止apk反编译的技术-伪加密. 一.伪加密技术原理 我们知道android…
一.背景 二.步骤 一.背景 很多时候,APK文件只存在于应用市场,在PC上无法直接下载.用手机下载下来后就直接安装了,也不能保存原始的APK文件. APK安装到手机后,Android系统会保存一份和原始APK一模一样的拷贝,位于data/app目录,文件名为“APK的包名-1.apk”或者“APK的包名-2.apk”.这里的包名即 package name,形如 com.xxx.xxx. data/app这个目录在非root的情况下,是无法直接查看的.但幸运的是,这个目录下所有的APK文件,是…
cp : https://segmentfault.com/a/1190000005128037 在开发过程中字符串不可避免,但是这些字符串也可能是破解的关键点,比如服务器的地址和错误提示这些敏感的字符串信息.如果这些字符串采用硬编码方式,很容易通过静态分析获取.之前的一篇blog以提示的字符串以突破点 Android程序逆向分析 普通方式定义字符串 Java 中定义一个字符串: private String normalString(){ String str = "Hello world&q…
cp : https://segmentfault.com/a/1190000005105973 DEX校验 classes.dex 是 Android 虚拟机的可执行文件,我们所写的 java 代码其实都在这里面,所有很多对应用程序的篡改都是针对 classes.dex 文件的.可以找一个 APK 解压就可以看到 classes.dex 文件.APK 其实就是一个压缩包,通过将后缀名改为zip 就可以直接解压,或者用 unzip 命令. 编写代码 代码比较简单,这里是通过建计算好的 crc 保…
关于防止android apk被反编译的技术我们前面已经讲了四种. 加壳技术 运行时修改字节码 伪加密 对抗JD-GUI 如果有不明白的可以查看我的博客的前四篇中关于这四种技术的介绍.接下来我们接着介绍另一种防止apk反编译的技术-完整性校验. 一.完整性校验原理 所谓完整性校验就是我们用各种算法来计算一个文件的完整性,防止这个文件被修改.其中常用的方法就是计算一个文件的CRC32的值或者计算一个文件的哈希值.我们在防止apk被反编译的方法中也可以采用这种方法.我们知道apk生成的classes…
Eclisps有时build后不生成apk.没有对Eclise做过设置调整,android工程代码也是没有问题的.反正就是莫名奇妙的遇到两次,解决方法如下: 1. 设置:Preferences -> Android -> Build中有一项“Skip packaging and dexing until export or launch....”,去除勾选状态 2. 删除debug.keystore,该文件位置: Preferences -> Android -> Build 下有…
还望支持个人博客站:http://www.enjoytoday.cn 参考博客:http://www.enjoytoday.cn/posts/203 为什么要签名 在介绍签名方法之前,首先我们来了解下,android系统为何需要我们签名后才可安装运行apk,其实这个签名和我们生活中的信用卡签名并无本质不同,就是一个对apk身份的验证,对于apk的一种担责行为.apk前面采用加密算法(RSA或DSA)对apk加密验证以确保在apk安装运行之前的文件完整性和未被修改. 签名前的准备 签名其实说白了即…
生成签名文件: 1.右击项目管理器 选择 Export...  菜单: 2.在弹出的Export窗口中选择 Android->Export Android Application 后 next: 3.在弹出的窗口中选择 Create new keystore,输入和确认密码(这个后面使用keystore时用到),next: 4.在弹出的窗口中,填写密钥库信息,填写一些apk文件的密码,使用期限和组织单位的信息,finish,这样就生成了答名文件. 生成签名的apk: 1.右击项目管理器 选择 E…
需要满足的条件: 内置到ROM.即APK包的安装位置是/system/app下. 下面以 test.apk 为例,演示这个操作.需要准备一台已经获得 Root 权限的手机. 1.通过 USB 连接手机和电脑. 2.使用 adb 控制手机. 1. $ adb push test.apk /sdcard/ // 上传要安装的文件,为安装做准备. 2. $ adb shell 3. $ su // 切换到 root 用户.如果没有获得 Root 权限,这一步不会成功. 4. # mount -o re…