一、多头项目的特点:
二、逆向思路
1、能否判断是否注册
2、逆向过程
三、逆向工具
1、抓包工具
2、测试工具
3、hook 工具
4、反编译工具
四、 难点解决方案
1、无法抓包的问题
2、加壳问题
五、java层逆向通用方案
1、原理
2、各种加密方法简单介绍
3、案例介绍
六、TODO
一、多头项目的特点:
1、以量取胜
2、十个中有一个能做
3、逆向难度符合二八原则
APP类型
web抓包型 30%
java加密型 50%
加壳型 10%
so加密型 10%
需求:
当前提需求3000+,在线300+,爬虫抓取新需求1万+,估计可以提新需求3000+。
image.png
二、逆向思路
木桶原理
2、逆向过程
抓包分析
做减法找出需要解密的参数
实际逆向过程
Jadx-gui 逆向代码
三、逆向工具
1、抓包工具
chrome开发者工具 F12
charles
HttpCanary
抓包精灵
2、测试工具
curl
curl 'http://hebao.qimmjie.cn/Api/System/CheckUserByTel?format=json' -H 'Connection: keep-alive' -H 'Accept: */*' -H 'Origin: http://hebao.qimmjie.cn' -H 'X-Requested-With: XMLHttpRequest' -H 'User-Agent: Mozilla/5.0 (Linux; Android 5.0; SM-G900P Build/LRX21T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Mobile Safari/537.36' -H 'Content-Type: application/x-www-form-urlencoded; charset=UTF-8' -H 'Referer: http://hebao.qimmjie.cn/mobile/regist?code=xhe312' -H 'Accept-Encoding: gzip, deflate' -H 'Accept-Language: zh,en-US;q=0.9,en;q=0.8,zh-CN;q=0.7,zh-TW;q=0.6' -H 'Cookie: ss-pid=Zgl1gxCyxw8y1O2TEEZy; ss-id=edcBOzPQELlzzKdRaH8n; UM_distinctid=16e86db9e0a53b-0bbac29757f2a6-3961720f-13c680-16e86db9e0bc6; CNZZDATA1277818958=190964457-1574220570-%7C1574220570; ASP.NET_SessionId=tnps4rfmeb2le5buy05gzjg1; CNZZDATA1274999399=1120458144-1574219808-%7C1574227764' --data 'Tel=17611597503' --compressed --insecure
image.png
FEHelper
在线加密测试网站
MD5、SHA256、HMAC等
AES、DES、3DES
java代码
各类Hash算法-Java版
各类加密算法(AES、DES、RSA、BASE64)-Java版
3、hook 工具
Xposed
Frida
4、反编译工具
Jadx-gui
能直接反编译dex文件,方便好用
JD-GUI
需要将dex文件转到jar文件,可以跳转函数
JEB
用的较少
四、 难点解决方案
1、无法抓包的问题
ssl pinning
JustTrustMe
JustTrustMe升级版
[A Frida script to bypass SSL Pinning on Android.]
(https://gist.github.com/cubehouse/56797147b5cb22768b500f25d3888a22)
SSLkiller.apk 没测过
sslunpinning.apk 没测试过
ssk pinning 样本:快鱼分期
image.png
image.png
image.png
proxy检查
使用frida hook关键代码
Android 判断设备 是否使用代理上网
Android判断当前设备是否设置了代理
轻贷 禁止代理访问
-----------------------------------