Eclipse和Android studio运行生成的apk很容易被反编译,可能导致核心代码泄露或被恶意植入木马后重新打包发布。为了尽可能的避免以上问题,有以下解决方案:

一。对代码进行Java混淆。

在build.grandle添加,其中规则写在proguard-rules.pro中,也可以自定义一个文件,将其代替,比如eclipse常用的 proguard-project.txt:

buildTypes {
release {
signingConfig signingConfigs.release
minifyEnabled true      # 设置是否进行 shrink 等操作(即无用代码压缩),一般设置为 true,使混淆更有效
proguardFiles getDefaultProguardFile(‘proguard-android.txt‘), ‘proguard-rules.pro‘
}
}

Java混淆后反编译的文件

我们可以看到这种混淆只是把类名变为诸如abcd的形式,只是增加了反编译人员的阅读难度,apk文件仍然可以被反编译之后添加恶意程式。

二。使用梆梆安全进行apk加固。

https://dev.bangcle.com/

上传自己的apk文件之后进行风险检测,可看到如下:

检测出6处风险漏洞,接下来使用加固功能加固后如下:

可看到5个风险都被处理了,只剩下一个需要在代码中调整。

接下来尝试对加固后的apk文件进行反编译:

可看到反编译后几乎没有什么有用的Java文件了,下载加固后的apk后进行重新签名,真机测试可以运行。

-----------------------------------------------------------------------------分隔线---------------------------------------------------------------------------

注:欢迎批评指正,若有侵权及未注明引用之处,请指出。

Android apk安全监测及加固方案相关推荐

  1. Android APK加固技术方案调研

    @author ASCE1885的 Github 简书 微博 CSDN 最近项目中需要实现自己的APK加固方案,因此就有了这一篇调研报告. 软件安全领域的攻防向来是道高一尺魔高一丈,攻防双方都处于不断 ...

  2. Android apk 安全措施详细说明(签名、混淆、加固、H5安全方案)

    文章简介:当一个Android app 开发完成后,我们总是希望对app进行一些安全措施,防止自己开发的apk被别人二次打包和签名上传到应用市场,同时防止apk被别人拿到之后进行反编译进行二次开发.那 ...

  3. Android 第三方加固方案 对比

    常见的第三方加固方案官网介绍 由于安卓APP是基于Java的,所以极容易被破解,一个不经过加固的APP犹如裸奔一样,毫无防备.之前曾有新闻报道,一些专职的APP打包黑产就是专门从各种渠道找到apk,通 ...

  4. Android 第三方加固方案 对比 MD

    常见的第三方加固方案官网介绍 由于安卓APP是基于Java的,所以极容易被破解,一个不经过加固的APP犹如裸奔一样,毫无防备.之前曾有新闻报道,一些专职的APP打包黑产就是专门从各种渠道找到apk,通 ...

  5. Android APK加壳技术方案----代码实现

    本文章由Jack_Jia编写,转载请注明出处. 文章链接:http://blog.csdn.net/jiazhijun/article/details/8746917 作者:Jack_Jia    邮 ...

  6. android APK内存多少字节,Android apk安全测评、应用加固、字节对齐、二次签名(有这一篇就够了)...

    本文将通过前言.apk安全测评.应用加固.字节对齐.二次签名.总结共6大版块来阐述 一.前言 评判一个App是否出色,除了看它的性能.体验外,本人认为最为重要的是它的安全性.市面上apk安全评测.加固 ...

  7. Android Apk 签名方案

    Android签名方案 Android签名方案 V1签名(jarsigner方式) V2签名(apksigner方式) 验证签名 V3 签名 优化 查看签名文件证书(MD5/SHA1/SHA256.. ...

  8. Android APK加固(加壳)工具

    之前一篇文章Android proguard代码混淆,我们讲解了如何实现APK的代码混淆,让反编译者不那么容易阅读我们的源代码.虽然我们混淆,做到native层,但是这都是治标不治本的.反编译的技术在 ...

  9. android 加固服务器,Python 脚本构建Android APK 自动加固、打渠道包并上传服务器

    Python 脚本构建Android APK 自动加固.打渠道包并上传服务器 常规流程 打出原始apk 使用乐固工具加固并打出响应渠道包 将生成的渠道包上传对应服务器,生成推广链接 因为每一步都需要人 ...

最新文章

  1. androidstudio判断手指滑动方向_方向盘的黑科技有多“黑”
  2. 尽量使用int型的列类型
  3. 为DataList和GridView内容项添加序号
  4. 解决Maven工程install时[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources
  5. Spring Aop 切点表达式
  6. mysql产生大量数据_mysql语句批量产生大量测试数据
  7. 记录一次游戏服务器的压测调优记录(Golang语言)
  8. [C#]Main(String[] args)参数输入问题
  9. java中HashSet实现(转)
  10. Excel函数实战技巧精粹(二)常用函数之VLOOKUP全解
  11. 新电商正面迎战“阅读焦虑”
  12. matlab帧差法测速,matlab帧差法物体检测
  13. GP数据库(三)杀进程
  14. react 加粗_css字体如何加粗?
  15. 网工解惑:何为二层交换机,它与三层交换机的区别在哪里?
  16. Android更改开机画面
  17. java刮刮乐_大众学开发——59秒学习编写刮刮乐游戏
  18. 找不到设备 将计算机连接到USB打印机,打印机连接电脑没反应怎么办
  19. 屏蔽电脑上所有的广告推送(亲测可用)
  20. 【阿里云镜像】使用阿里云Docker CE 镜像安装Docker

热门文章

  1. python中number函数_python-1:Number数字类型 之三 相关函数 Fraction
  2. 废旧android手机变短信服务器
  3. 一步一步教你网站采集规则
  4. java运算符优先级
  5. Linux命令详解之 ls
  6. Internet Download Manager v6.41.3中文特别版IDM下载器免费下载
  7. 远控免杀专题(9)-Avet免杀(VT免杀率14/71)
  8. IOS手机安装完fiddler证书后依然无法上网
  9. Python开发案例:制作二维码
  10. 项目初始化报 404 Not Found - GET https://registry.npmjs.org