-
-
[原创]浅谈android逆向攻与防
-
发表于:
2022-1-27 14:28
7663
-
###反编译工具:
###逆向分析修改工具:
逆向的最终目的是拿到dex修改并进行二次打包
举例(单机游戏或工具类应用 对比支付类应用)
通过三方厂商加固(腾讯御安全、腾讯乐固、奇虎360、爱加密、梆梆加固)
给App包一层壳,将业务代码打包进so文件
腾讯御安全
手动或借助三方工具砸壳,Dump出原本dex,在App启动进程加载hook.so,装载修改dex覆盖原dex,从而达到修改目的
增加代码签名校验,判断二次打包签名是否与原签名md5一致,不一致禁止使用
开启混淆,添加自定义混淆字典,添加合并包名
直接删除签名校验代码
使用https进行SSL证书校验
代码开启代理检测,检测使用代理禁止请求
自定义DNS解析
最根本还是得从根源来提升逆向门槛,也就是接口安全
即核心业务一定要进行服务器校验甚至二次校验,同时接口设计要尽可能防止用户篡改参数,以及限制单用户短时请求频率
sign
旧版本——>so
st=1641978118469&sign=9a67f8649bdd22cb8ec7828cf9fb73b5&sv=111
根据funcationId和body计算出字符串st=1641978118469&sign=9a67f8649bdd22cb8ec7828cf9fb73b5&sv=111
然后拼接到参数中
绑定时间戳防篡改
sandHook\virturlHook
新版本
大部分核心参数会先进行一次加密,然后所有参数排序遍历拼接value通过Sha256加密为64位字符串
没有最安全的程序,也没有最强大的逆向
尽量少写本地全局重要变量,如IsVip等
尽量数据从服务器获取
尽量客户端、服务器双向验证数据可靠性
apktool d [apk路径]
apktool b [apk文件夹] [新的apk存储位置]
apktool d [apk路径]
apktool b [apk文件夹] [新的apk存储位置]
- apkTool
- dex2Jar,jd-gui
- jadx、Jeb、AndroidKiller
- 其他三方反编译工具
- Xposed
- Frida
- FakeAndroid
- 反射大师、FDex
- VMOS、IDA Pro
- Fiddler、Http Canary、Charels
通过三方厂商加固(腾讯御安全、腾讯乐固、奇虎360、爱加密、梆梆加固)
给App包一层壳,将业务代码打包进so文件
腾讯御安全
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!