微信ipad协议破解,仅仅提供思路,如有侵权请告知删除

微信ipad协议都是封装好的dll在网上流通,价格实在承担不起,所以重操旧业,干吧!

下面简单说下思路:
dll是加了vmp的壳,我们只要破解验证,就不去破解VMP了,反正也不会。
打开dll发现获取授权会调用xcode.dll里面的一个函数 WXSetNetworkVerifyInfo
客户端会上传一个十六字节的数据给服务器,服务器返回数据,给客户端,然后不再跟校验服务器通讯,校验不通过,所有的功能都不能用
我们根据WX协议的数据猜测,可能服务器返回的数据是登录所必需的数据。
通过对 WXSetNetworkVerifyInfo的函数下断点,可以看到100CABF以后返回了服务器地址。
然后对eax下一个内存访问断点,思路就是找到send函数在哪里
通过不断的单步执行,又看到eax又要验证的服务器地址,这个地址跟之前的地址已经不一样了,老路子,内存访问断点。
断下来了,eax就是服务器地址了。
这个时候已经看到了真正的调用了
我们去看看调用的整个逻辑
这里就是建立socket通讯
接下来会通过网卡地址等一系列的信息,生成要发送给服务器的唯一ID信息,十六字节。
接下来的几个函数就是,send,recv,接受完了以后先解密一下,然后得到固定的0x210大小的数据
大概是这样的最后调用 05519CE0解密

这样就把等下WX协议所需要的秘钥填充进去
eax里面的内容大概是这样的
42 35 37 39 31 34 37 33 46 44 46 41 43 43 45 34 32 36 30 35 38 34 30 31 42 36 31 32 35 41 33 44
36 46 45 44 44 37 36 43 37 44 44 31 42 30 34 32 36 41 37 33 44 38 41 34 31 38 32 42 32 39 45 41
36 44 30 35 46 34 46 35 45 38 44 39 39 41 34 44 33 44 31 43 33 45 35 43 46 33 43 38 43 42 33 43
44 44 46 39 33 35 36 34 33 43 39 34 44 33 38 39 32 37 38 38 31 42 31 34 34 44 30 34 46 33 31 30
46 31 33 33 30 37 44 31 41 45 36 33 41 31 30 30 41 32 37 39 37 41 37 31 34 43 30 44 31 45 32 41
35 41 30 45 46 37 37 39 46 43 33 44 36 46 37 44 33 43 33 33 39 36 32 37 36 42 46 32 37 44 41 36
44 36 36 45 32 36 39 36 41 36 35 35 37 45 46 44 34 42 36 31 39 30 43 37 32 36 38 39 34 44 33 35
43 45 35 35 39 45 31 34 37 39 36 39 42 41 43 30 34 41 46 45 42 42 30 45 33 41 32 33 35 42 32 43
37 39 35 41 43 36 41 39 38 31 38 45 31 34 41 33 6F 7A FA 06 FF CA 27 F3 A0 5E 6C 91 39 18 7A 3B
F5 34 41 37 34 31 38 30 30 34 32 42 46 30 46 44 33 38 34 32 37 46 37 30 42 36 38 31 42 39 34 33
31 41 30 39 39 45 37 37 34 36 31 38 44 34 35 35 46 31 34 44 31 46 37 35 31 32 31 35 37 37 44 41
45 36 36 43 33 38 35 33 41 32 41 41 39 43 34 46 30 46 39 43 32 32 31 41 36 36 46 36 34 41 34 36
44 35 46 36 38 42 30 44 35 30 46 32 32 43 37 45 34 46 41 30 44 38 34 30 34 38 42 32 46 39 31 37
39 46 34 42 38 36 34 34 32 41 32 37 32 30 43 38 46 45 32 37 42 43 36 38 43 35 43 36 33 38 34 44
43 43 33 33 36 46 39 37 39 31 34 46 32 37 38 38 42 39 30 35 45 35 46 45 39 38 43 35 42 42 37 35
34 34 38 38 42 30 46 36 42 30 39 34 32 31 42 42 32 37 42 46 46 35 31 38 45 46 30 45 39 32 39 39

到了这里我们就可以开始破解了,由于加了VMP的壳,地址是变化的,但是没关系,我们可以利用特征码
在dll加载以后,我们可以找到两处关键的点,第一处,直接可以修改发送的数据,我们伪造一份可以通过校验的就行了
通过第二处,我们可以修改返回后的数据,这样就能给应用自行解密了,最后用c++做个钩子程序就行了!技术交流392699798

你可能感兴趣的:(记录)