现在的爬虫app数据的抓取已经是一种趋势,但是面临的问题也是更难以解决,就算是最普通的app,只要带有加密参数,针对安卓逆向小白的人来说,可能就只能用appium来操作了,不是说appium不能解决,只是,appium操作起来效率太低,容错率太低,一般的手机也很容易卡死,手机内存无法支持高强度的手机操作,所以还是要想办法处理加密的问题,接下来就讲一讲该如何用巧方法处理。
首先说一下背景,这个方法可能在大佬眼里就是小儿科,但是我对安卓逆向一窍不通,只能用反编译软件将app的源码搞出来,接下来就不知道该怎么做了,源码是Java写的,加上会被混淆,所以就只能投机取巧了。
具体操作:
1、运用条件:
java环境、安卓环境的安装,如果之前用appium操作过手机或者模拟器的话,可能就已经安装好了,因为不进行安卓的开发,所以不需要安装什么andriod stutio什么之类的,我是简单的安装了sdk和jdk两个依赖。当然手机如果用真机的话,需要root,打开开发者模式,安装Xposed框架,然后就是安装我们的今天的主角Inspeckage插件了。
这里把需要下载的分享出来,有的下载速度过慢,这样方便大家使用。
链接:https://pan.baidu.com/s/1mfDfAbxxy7DuiaYT5-dXQQ
提取码:8a71
讲一下,我用的是夜神模拟器(下载和安装都挺简单的,网上教程也很多,不多说),图中是我分享的资源,酷安是模拟器里下载和安装Xposed的库,当然也不反对你从别的途径安装Xposed,后面两个就是刚刚提到的环境的依赖,但是提醒一点,安装完以后,检查一下,java -version和adb version,保证自己的安装无误,还有就是adb devices,如果发现检测不到模拟器就把E:\Android_SDK\platform-tools这个文件夹里面的adb.exe复制到D:\app\Nox\bin里面并重命名为nox_adb.exe,一定要确保能检测到模拟器。ps:另外如果还是检测不到,可以adb connect 127.0.0.1:62028,最后一个是端口号,可能每个人的不一样,找到自己的,运行完以后,再adb devices看一下是不是检测到了。
2、具体操作:
模拟器方面,在Xposed安装好以后,在下载功能里搜索Inspeckage,点击安装,安装成功以后,重启模拟器(必须),打开Inspeckage,点击里面的choose target,选择你的目标app,然后点击
完成以后,在cmd里面输入命令adb forward tcp:8008 tcp:8008,然后在浏览器里输入http://127.0.0.1:8008就会看到Inspeckage的界面,
当然这个插件功能很是强大,剩下的我也是不太了解,需要进一步的学习,但是这个插件也有局限,就是面对一些大厂的app可能不是很好用,因为好多大厂的app已经把加密方法放进了native层,那就需要反编译大神们大显身手了。
如果有不准确的地方欢迎指正,如果有更高大上的方法也请分享一下,共同进步。