【PC微信探秘】用易语言编写一个微信DLL注入器

.版本 2

.程序集 窗口程序集_启动窗口

.子程序 _按钮1_被单击
.局部变量 快照句柄, 整数型
.局部变量 进程信息, LPPROCESSENTRY32
.局部变量 下一个, 逻辑型
.局部变量 微信PID, 整数型
.局部变量 微信句柄, 整数型
.局部变量 DLL文件, 文本型
.局部变量 DLL文件字符串长度, 整数型
.局部变量 申请内存地址, 整数型
.局部变量 LoadLibraryA地址, 整数型
.局部变量 线程句柄, 整数型
.局部变量 写内存成功, 逻辑型

' 1) 遍历系统中的进程,找到微信进程(CreateToolhelp32Snapshot、Process32Next)
快照句柄 = CreateToolhelp32Snapshot (#TH32CS_SNAPPROCESS, 0)
进程信息.dwSize = 300

下一个 = Process32Next (快照句柄, 进程信息)
.循环判断首 ()
    .如果真 (到文本 (进程信息.szExeFile) = “WeChat.exe”)
        微信PID = 进程信息.th32ProcessID
        跳出循环 ()
    .如果真结束
    下一个 = Process32Next (快照句柄, 进程信息)
.循环判断尾 (下一个 = 真)

.如果真 (微信PID = 0)
    信息框 (“微信进程未找到”, 0, “错误”, )
    返回 ()
.如果真结束

' 2) 打开微信进程,获得HANDLE(OpenProcess)。
微信句柄 = OpenProcess (#PROCESS_ALL_ACCESS, 假, 微信PID)
.如果真 (微信句柄 = 0)
    信息框 (“打开微信进程失败!”, 0, “错误”, )
    返回 ()
.如果真结束

' 3) 在微信进程中为DLL文件路径字符串申请内存空间(VirtualAllocEx)。
DLL文件 = “C:\Users\Visual Studio 2019\Desktop\WeChatHook.dll”
DLL文件字符串长度 = 取文本长度 (DLL文件) + 1
申请内存地址 = VirtualAllocEx (微信句柄, 0, DLL文件字符串长度, #MEM_COMMIT, #PAGE_READWRITE)
.如果真 (申请内存地址 = 0)
    信息框 (“内存申请失败!”, 0, “错误”, )
    返回 ()
.如果真结束

' 4) 把DLL文件路径字符串写入到申请的内存中(WriteProcessMemory)
写内存成功 = WriteProcessMemory (微信句柄, 申请内存地址, 到字节集 (DLL文件), DLL文件字符串长度, 0)
.如果真 (写内存成功 = 假)
    信息框 (“写入内存失败!”, 0, “错误”, )
    返回 ()
.如果真结束

' 5) 从Kernel32.dll中获取LoadLibraryA的函数地址(GetModuleHandle、GetProcAddress)
LoadLibraryA地址 = GetProcAddress (GetModuleHandleA (“Kernel32.dll”), “LoadLibraryA”)
.如果真 (LoadLibraryA地址 = 0)
    信息框 (“未找到LoadLibraryA!”, 0, “错误”, )
    返回 ()
.如果真结束

' 6) 在微信中启动内存中指定了文件名路径的DLL(CreateRemoteThread)。
' 也就是调用DLL中的DllMain(以DLL_PROCESS_ATTACH为参数)。
线程句柄 = CreateRemoteThread (微信句柄, 0, 0, LoadLibraryA地址, 申请内存地址, 0, 0)
.如果真 (线程句柄 = 0)
    信息框 (“执行线程失败!”, 0, “错误”, )
    返回 ()
.如果真结束
信息框 (“注入成功!”, 0, , )

还是上截图吧!
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

示例来源:
网易云课堂《2019 PC 微信探秘》

交流QQ群:

456197310 PC微信HOOK逆向分析

微信PC版多开易语言指的是使用易语言编写程序来实现在电脑上同时打开多个微信账号的功能。 易语言一个简单易学的编程语言,它的特点是语法简单、易于理解和上手,适合初学者使用。通过使用易语言编写程序来实现微信PC版多开的功能,可以帮助用户同时管理多个微信账号,提高工作效率和便利性。 实现微信PC版多开的基本思路是通过编写一个易语言程序,该程序将通过模拟鼠标和键盘的输入操作来实现多个微信账号的登录和切换。 首先,需要通过易语言的相关函数来模拟鼠标点击微信PC版的图标,启动微信程序,并进行登录操作。程序可以使用循环语句来实现多个账号的登录,每次循环中,通过键盘输入用户名和密码,并模拟点击登录按钮。 登录成功后,程序可以通过模拟鼠标点击微信窗口上的切换账号按钮,实现账号之间的切换。同样,可以使用循环语句来实现多个账号之间的切换操作。 通过以上的步骤和操作,就可以实现微信PC版多开的效果。 需要注意的是,实现微信PC版多开功能涉及到模拟鼠标和键盘操作,因此需要确保程序的稳定性和安全性,避免对计算机系统造成损害。此外,具体实现的过程和步骤相对较复杂,需要一定的编程基础和经验。 总的来说,通过使用易语言编写程序来实现微信PC版多开功能可以提高工作效率,方便管理多个微信账号。但需要注意程序的稳定性和安全性,并需要一定的编程基础和经验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

赵庆明老师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值