WeTool的实现原理是什么呢?

Posted wwgk

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WeTool的实现原理是什么呢?相关的知识,希望对你有一定的参考价值。

看下wetool提供的功能,可以群发信息,可以清粉,可以自动管理微信群等等

其实都是用微信基本的功能进行组合的

比如群发,就是通讯录加上发送信息

比如清粉,就是通讯录、申请添加好友和删除好友

技术图片

 

但这些基本功能微信并没有开放出来,所以wetool只能用技术手段获取

 

怎样获取这些基本功能呢?

技术图片

实际上所有功能可以分为两类:主动调用功能,被动获取数据(比如发送消息和接收消息)

对于发送消息,需要找到这个功能在微信的哪个地方,然后打入到微信内部,执行这个功能

技术图片

 

对于接收消息,需要找到接收的消息会经过微信的哪个地方,然后修改微信,进行拦截

技术图片

 

具体的的过程

查找某个功能在微信哪个地方,属于逆向分析过程,具体的查找方法和查找过程不是固定,像在迷宫,找到出口,比较费时间。

技术图片

 

对于主动调用的功能,wetool是写一个模块:WeHelp.dll。这个东西会打入微信内部,然后偷偷开一个对外的接口,这样wetool就可以通过WeHelp.dll来调用微信的功能。

技术图片

对于被动获取数据的功能,wetool又写一个模块:WeDebug.dll。这个东西会给微信一些地方设置陷阱,微信触碰到这些陷阱就会停下来并且报错,然后WeDebug.dll就可以在处理报错的同时,拦截到微信的数据信息。

技术图片

 

这里可以看出,wetool的东西是打入到微信内部的,但微信会上传内部的信息,这样就找出谁用了wetool,进行封号。

技术图片

 

PS:具体的技术细节,可以看博客其他文章  https://www.cnblogs.com/wwgk/

以上是关于WeTool的实现原理是什么呢?的主要内容,如果未能解决你的问题,请参考以下文章

vue-router实现原理

Java中CAS 基本实现原理

添加了@LoadBalanced注解,即可实现负载均衡功能,这是什么原理呢?

PostConstruct注解原理说明

深入源码分析Java线程池的实现原理

深入源码分析Java线程池的实现原理