【Android-应用安全】

​ 任何一款app,无论是开发过程中,或者应用上架等操作中,最先需要注意的就是我们自己应用的安全性。

Android App安全策略

技术手段

代码混淆

APK文件的安全性是非常令人堪忧的。APK运行环境依赖的文件/文件夹 res、DEX、主配文件Lib 只有简单的加密或者甚至没有任何加密。诸如apktool这类工具可轻易将其破解,再配合其他例如dex2jar、jd-gui等工具基本可以做到:源码暴露、资源文件暴露、主配文件篡改、核心SO库暴露、暴力破解恶意利用等。因此需要对安卓代码进行代码混淆。Android中使用SDK中自带的Proguard工具,添加相应配置即可。

release {
   
    minifyEnabled true
    proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}

使用ProGuard混淆的应用,通过apktool还是可以看到Manifest和res资源,使用dex2jar也可以看到混淆后的源码,虽然大部分代码已经混淆了。还是可以看个大概,而且通过smail的修改,重新进行逆向apk。

另一种混淆方式:DexGuard,收费,ProGuard加强版。

签名校验

Android黑产里面,有一个叫做二次打包,也称为重打包。即通过反编译正版应用后,可以获得smali源码,往其中注入代码或者修改相应业务逻辑后,再利用新的签名进行重新打包,并发布到应用市场去,很多无良开发者就是通过这种方式去破解一些付费应用或者往其中注入广告代码来获利。简单梳理一下重打包的基本流程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值