APP爬虫|frida-某资讯app逆向过程,带你一起使用 frida 进行完整逆向

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理

以下文章来源于腾讯云 作者:Python编程与实战

( 想要学习Python?Python学习交流群:1039649593,满足你的需求,资料都已经上传群文件流,可以自行下载!还有海量最新2020python学习资料。 )
APP爬虫|frida-某资讯app逆向过程,带你一起使用 frida 进行完整逆向

本篇文章用来记录第一次使用 frida 进行完整逆向的过程。目标是逆向出此 app 的快讯接口的请求流程。

逆向流程
查壳
第一步,先别急着反编译,现在很多反爬都升级了,一般都进行了加壳,所以先用查壳工具进行查壳

下面使用查壳工具 ApkScan-PKID 查下目标 app 的采用了什么加固,结果如下:
APP爬虫|frida-某资讯app逆向过程,带你一起使用 frida 进行完整逆向
知道加固的方式了,接下来就是脱壳了!

脱壳
方法:使用 FRIDA-DEXDump 进行脱壳获得 dex 文件
APP爬虫|frida-某资讯app逆向过程,带你一起使用 frida 进行完整逆向
jadx
使用 jadx 打开 dex 文件,并根据抓包路径(v3/newsFlash)进行搜索。结果如下,点击进去
APP爬虫|frida-某资讯app逆向过程,带你一起使用 frida 进行完整逆向
发现搜索到的是 http 的接口,我们接着找这个接口的调用。
APP爬虫|frida-某资讯app逆向过程,带你一起使用 frida 进行完整逆向
苦力活,一步步的然后找到了 md5 方法
APP爬虫|frida-某资讯app逆向过程,带你一起使用 frida 进行完整逆向
找到 nonce 方法

APP爬虫|frida-某资讯app逆向过程,带你一起使用 frida 进行完整逆向
好了,到这一步,基本加密的面纱都被层层揭开了,加密方式很简单,重要的是找到加密的过程

Python 重写

在进行测试的时候,发现数据还是有问题,通过增加参数头 version 指定版本,就能获得最后的数据了。最终代码如下:

APP爬虫|frida-某资讯app逆向过程,带你一起使用 frida 进行完整逆向
爬取效果如下:
APP爬虫|frida-某资讯app逆向过程,带你一起使用 frida 进行完整逆向
反爬总结
APP爬虫|frida-某资讯app逆向过程,带你一起使用 frida 进行完整逆向

APP爬虫|frida-某资讯app逆向过程,带你一起使用 frida 进行完整逆向

上一篇:android studio 点击布局文件隐藏弹出的键盘。


下一篇:Android开发——synchronized的实现原理