下载apk后使用jadx打开在判断输入是否为空之后,传入了eq函数进行分析,eq函数是native函数,用ida打开so可以看到so采用了动态注册的方式,去三元表里找到eq函数的地址,并下断可以看到第一次是根据apk的一处字符串,取出了'-'后,存到到了一块区域然后再次根据使用初始的字符串生成了第二处字符串最后生成了第三个table,这个table是最后一处,并且会参与后面的运算这块应该就是rc4的初始化部分,其实不用管,直接在加密函数前下断,dump出最终用来rc4加密的密钥表,
如下是rc4的加密函数可以看到在rc4加密结束后,还进行了魔改base64的编码大概流程就是base64(rc4(input)),最终要校验的地方是下面那一块最后进行解码即可,rc4部分
base64部分
[注意]看雪招聘,专注安全领域的专业人才平台!