最近正在搞一个微信机器人项目,类似微软小冰 或者 王二狗,给用户提供闲聊,还有本公司业务相关的问答服务。借着微信的流量进行品牌推广以及探索轻量级的用户使用场景。
本教程,重点对前期进行的微信逆向做一个总结。因为,在预研过程中,发现网上的资料很多,但很分散。我希望,能将探索过程都保留下来,后面有这方面需求的同学,只要看了这系列的文章,就能把全部的路都跑通了,可以节省大量的时间。
我写本教程的目的,更多的是为了进行自我总结和技术交流,并不想过多讨论关于隐私和安全方面的问题。况且我觉得,单单是客户端的逆向和破解,其前置条件非常多,杀伤力有限,不然微信也不会到现在也不对客户端做加固了,我猜就是这样的。
但我还是建议不要把这个用在一些非法用途上,比如监控女朋友的微信聊天信息什么的,后果可能会很严重。。。
那学习了本教程能有什么收获?
- 本教程向会包含大量的逆向工具、 Xposed系列框架、Hook、反射等知识点,提升你的技术视野
- 你将会有能力按自己的想法去改变微信等客户端的行为,实现更加合理和方便的工具等
针对第2点,我就举个例子吧。比如说,很多人经常隔一阵子就会要清个粉,特别是微商应该非常需要这个。如果手动去删岂不是太费劲了,5000个好友这可怎么删,太低效了。但是现在你可以通过技术手段完成这项重复劳动。重复的事情就交给机器去做~
在早期,清粉还能卖钱的,但现在...我也没调研过,不过微商做大了一般买的都是成套的解决方案了。
那微信逆向难吗?需要哪些知识储备?
可以负责任的说,这玩意不怎么难。但还是需要具备一定的Android基础,以及要细心,要能坐的住。
为什么这么说呢?因为反编译分析的java源代码,大部分都是混淆过的,可读性非常差,只有不断的通过日志、猜想,去理解上下文含义,并验证是否能走通。有些时候,一个变量的理解偏差导致要走很多冤枉路,这个时候往往是最煎熬的,我们只能不停的去阅读关键代码,搞清每个变量的含义,方能走出来。
更多的时候,我们做逆向还是因为工作的需要,这个时候就更没办法不好好搞了...
好吧,那么开始我们的微信逆向之旅吧~~~
网友评论