逆向---解密思路

总的来说,对于安卓APP来讲,我们学习逆向的目的不是来对APP进行重新编译,去修改他的功能,我们学习的目的就只是用逆向来知道接口的加密方法(需要关注的主要点,抓包和反抓包,App的混淆,加固,重度混淆加解密算法,Jni,放在C中的加密,smali Java层/IDA动态调试,Jadx,Jeb,ida),之后,重新用python重写加密过程,模拟源码去请求,总共有两种思路供参考,也就是说的静态分析和动态分析:

1.静态分析
思路:
1,首先抓包,获取需要破解加密的地方
2,是检查是否加固,反编译(https://blog.csdn.net/u013356254/article/details/104958678)
3,用关键信息搜索定位,抓到的一切都可以(RSA、AES、MD5、Encrypt、public_*key )
4,用idea定位,跳转

2.动态分析
1.静态分析找到hook的点
2.利用frida来动态调试

Android 的逆向准备:

Android 真机或模拟器(最好是真机)
安装 Android 5.0 或 6.0 版本
Fiddler、Charles 等抓包工具
Jadx、ApkTool 等反编译工具
dumpDex、FDex2 等脱壳工具
Java、Android 开发基础知识
Xposed 框架开发基础知识

参考链接:
https://blog.csdn.net/z_kqiang/article/details/100569399

大体就这两种,详细的后面来进行总结

你可能感兴趣的:(逆向)