搞事情前
- 安卓模拟器(安卓版本最好为5.0)
- fiddler(抓包分析,配置fiddler详见:fiddler 抓取https配置)
- 精易编程助手
- 反射大师(脱壳用)
- dex2jar(把dex文件转成jar文件)
- JD-GUI (打开jar文件用的)
开始分析
- 首先,先打开fiddler还有模拟器里的应用,然后找到我们要分析的去获取的目标,我们这次的目标是对这个应用里面的课表数据进行拿取
如上图是我们要拿取的数据,也就是目标数据。 - 既然我们已经知道我们的目标数据了,那我们就开始进行抓包。
我们在抓包的时候,发现了三个包,直接点开看看这个包里放的是啥玩意
在这个包里,我们发现了一串很长很长的东西,因为是点击课表而出现的,所以我初步怀疑,这里面存放的是课表的数据。但是 这串东西很长很长,而且我们压根就不知道这玩意是什么,但是,这玩意是一种叫base64编码的东西。我们去解一下看看,我使用的是精易编程助手进行,编码base64有些许在线网站可以使用:在线base64加解密
复制粘贴一把嗦。解密失败,这下好了,怎么办?
- 解密数据遇到挫折,那我们就大胆假设一下
在爬虫的时候遇到的数据上,一般的加密方法最常见的无非就是AES,RSA,DES,MD5等加密方式,其中MD5只能加密不能解密,RSA你没有私钥也无法进行解密,这俩种加密方式的话,就只能找他们的原文了。我们这次就大胆的假设一下这是一个AES加密,不要问我为什么,问就看下面
因为这个apk加了360的壳,所以就利用了一个叫反射大师的东西进行脱壳
上面这张让我判断是AES加密的图的由来:
先使用反射大师进行脱壳
选择了这个应用,顺便把包名给了我
启动的时候 中间会出现一个五芒星。点五角星 然后再点击红框框
点红框框
然后就长按这个东西就能直接脱壳了,这是站在了巨人的肩膀上才成功的
最后会把dex文件写出来到你的模拟器路径里面,反射大师会提示你写在哪里,直接就跟着提示去翻一下文件就好了,然后丢到电脑上。
em 直接给我脱了好几个dex文件出来
接下来就是要把dex文件转成jar文件
使用工具:dex2jar
在电脑上翻到这几个dex文件
一个个的把他们给变成jar文件吧。。。
把一个个的dex文件丢到dex2jar的目录下
然后执行命令
d2j-dex2jar.bat 这里是你的dex文件的文件名字
把这个dex文件 使用dex2jar转成jar格式
完成了这一步后 你将会得到好几个个jar文件
/(ㄒoㄒ)/~~
然后一股脑的全丢到JD-GUI里可以直接看到源码,通过搜索
然后就得到了上面为什么猜测是AES加密方式了
下一篇:对某安卓应用进行分析爬取课表数据制作懒人课表(二)