某多多ZC算法解析(老版本但是新版本应该是一个套路)
最后是调用Unidbg 实现的算法处理用到的工具:jdax - jeb 算法助手(用于hook,方便),Unidbg雷电模拟器
实现的是某多多手机号注册,或者授权同理
第一次发帖如果有问题或者侵权联系我删除,app版本不是最新版本。
步骤如下:
第一步抓包:
可能不太直观,解析下Json
发现是有2个加密的地方
【touchevent】【fingerprint】这2个参数不知道是从哪里来的
然后反编译APP看看源码,先看第一个
然后知道g2的值是哪里来了
String g2 = g();
然后进g()这个方法里面
String jSONObject2 = jSONObject.toString();
str = g.c(k.a(jSONObject2.getBytes()));
目前我们不知道jSONObject2 是啥样子,但是在图上可以看到
LogUtils.d(jSONObject2);
LogUtils.d(str);
它输出了这2个值
这个hookapp叫算法助手,感谢大佬开发后上传到论坛,很方便。我就不提供下载了。
hook的值如下:
jSONObject2的值:
str加密完事后的值:
然后知道了参数,知道了结果,只需要去看看最后的加密过程了
k.a(jSONObject2.getBytes());
附上我后反编译的图片
没发现其中还有加密,可以直接使用,最后会公布调用情况
然后就有点明了了
str = g.c(gzip(jSONObject2.getBytes()));
找到g.c这个方法
return SecureNative.nativeGenerate(bArr);
在进入这个方法
发现了是进入so调用这个方法,只需要传递一个byte[] bArr 就行了,在hook看看它传递进去的值
然后我们先看看gzip还有没经过一层加密,调用例子按照易语言为实例
然后Unidbg 去实现,调用so这个加密 ,然后touchevent这个加密就弄完了,复刻出来了,只需要伪造里面的参数就行了
hook nativeGenerate这个方法的时候,也把fingerprint这个加密也hook出来了,我就不去找来源了
看看里面的参数
然后因为加密的方式一样
这样就实现了它的加密了。
天使3号 发表于 2022-1-17 10:29
配合改机软件可以当新用户无限砍一刀不
这属实没试过 配合改机软件可以当新用户无限砍一刀不 学习了 有点意思,同问楼上内容。。。 天使3号 发表于 2022-1-17 10:29
配合改机软件可以当新用户无限砍一刀不
:lol 是朋友就砍一刀.... 给楼主砍一刀,表示支持 好详细!新人学习了 这玩意我觉得可以试试看,抓包第一步 要砍6位数的刀次,楼主加油。 楼主辛苦了,谢谢分享!
页:
[1]
2