分析微信防多开功能

本文探讨了微信防多开的常见技术,包括互斥体和窗口名、类名防多开。重点分析了微信使用互斥体防多开的实现,通过x64dbg设置API断点进行动态分析,找到关键跳转并修改,从而实现微信多开。最终,通过x64dbg的补丁功能保存修改,成功避开防多开机制。
摘要由CSDN通过智能技术生成

分析微信防多开功能

防多开程序的一些思路

常用的windows下防多开的技术有以下几种:
互斥体防多开
这种防多开技术主要就是在第一次程序运行开始的时候,会使用 CreateMutexW或CreateMutexA创建一个以当前程序为相关名称的互斥体,当第二次启动程序时,会检测是否创建相同的互斥体,如果有,则会退出程序。
一般 CreateMutexW或CreateMutexA调用完之后,返回值为NUL即为失败,可以使用 API GetLastError获取错误码。如果句柄已经存在了,返回值不是0,也可以使用 API GetLastError获取错误码ERROR_ALREADY_EXISTS,值是0xB7。
窗口名、类名防多开
这种防多开的技术主要就是在程序启动时会使用FindWindowW或FindWindowA查找窗口名或窗口类名进行比对,看窗口是否存在,存在则退出。

微信防多开主要应用到的技术是使用互斥体防多开,所以需要对这两个API下断。
知识补充:

Windows SDK API一般与字符串相关的API都会有两个版本
- A版,例如CreateMutexA,FindWindowA
- U版,例如CreateMutexW,FindWindowW
这两种版本代表两种字符编码方式的字符串形式
- A版,ascii版
- U版,unicode版

使用x64dbg对API设置断点
有了对防多开的认识之后,接下来就是使用x64dbg实际上手对微信进行分析。
① 首先要定位到PC微信的主程序WeChat.exe。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值