拿某考宝典的的语音模拟文件【附嗅探、JEB的闪退问题解决以及使用】
本帖最后由 王子晟 于 2018-6-28 15:12 编辑在研究某考宝典的时候,听到科目三有语音模拟。比较感兴趣,就提出了两个想法:1、语音是怎么实现的,是不是当我们点击语音时从服务器下载的?2、通过什么方法或接口对下载下来的语音进行调用的。
我做了个假设:假设语音是从服务器下载的。
下面就对该假设进行论证:
首先,在我们要知道,凡是要从服务器下载东西都需要给服务器发包请求,也就是说都是可嗅探的(不排除有反嗅探机制,这款apk没有反嗅探机制),
授人以鱼不如授人以渔,下面给大家提供两种嗅探(抓包)工具的使用教程:
(某考apk大家去下载一个就得,我这里就不分享了,也是怕惹麻烦,万望海涵!)
charles使用教程链接:https://blog.csdn.net/Naruto_22/article/details/72900708
fiddler使用教程链接:https://blog.csdn.net/chaoyu168/article/details/51065644
感谢两位大佬的辛苦!
这里我用的是charles
准备好嗅探和在手机上设置好代{过}{滤}理后点击科目三——语音模拟——任意——语音模拟场景 如下图:
这时候我们会发现,当我们点击任意模拟场景时,并没有嗅探到任何内容
这说明,我们上面的推论错误。虽然绕了个圈,但是我们学到了嗅探了嘛,对吧?
同样我们可以推论:某考宝典上的语音模拟可能是在自己本身apk的包里的,
这时候就要借用强大的JEB来进行分析了
JEB破解版及学习链接:https://blog.csdn.net/qq_21051503/article/details/74315867
关于JEB闪退的解决方法链接:https://blog.csdn.net/csp277/article/details/46672733
感谢大佬的辛勤付出!
JEB安装好了之后,我们就可以正儿八经的对apk进行分析了。
首先,把apk拖进JEB中来(具体apk大家去下载一个就得,我这里就不分享了,也是怕惹麻烦,万望海涵!)
搜索:语音模拟
你也可以尝试别的,反正我的直觉就是这个词,逆向这玩意儿做多了会有感觉的
然后就搜到了,如下图:
这里,直接看smali能看出并不是这个地方,这里只是赋值或者一个类下的apk所使用的汉字集合,继续搜索:
对该段代码进行分析:
这里右键,转换java代码(不一定非要看java只要你smali够牛),如下图:
联想到
基本能确定在这里对apk中的语音进行调用
注意LightVoiceActivity
双击跟进去跳转如下图:
lightvoice.zip这个词已经很明显了:
说明我们上面的推论成功,某考宝典的语音模拟就在自己本身的apk中以压缩包的形式储存并通过:bnI()和blD()进行调用
那么,我们该怎么拿到这段语音呢?
很简单的,有两种办法,
第一种:直接给apk解包
慢慢的可以找到lightvoice.zip,有点耐心哈!
第二种:通过apktool命令在cmd命令下输入:apktool d +XXX.apk如下图:
直接解包后就可以找到压缩文件
解包后即拿到语音。试放后完美拿到语音!
初入逆向门,如有不对的地方,请大佬指点,以免给大家造成困扰。谢谢!
感谢分享, 流程很详细, 基本看懂了 . 好复杂。。慢慢看 学习了,谢谢受益匪浅。 研究精神棒。 感谢两位大佬的辛苦! 感谢两位大佬的辛苦! 谢谢分享慢慢看
谢谢分享,精彩你我! 楼主,您辛苦了!为您的无私奉献点赞!