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线程池的实现原理