首页
论坛
专栏
课程

[调试逆向] [求助]微信实现内控发送消息,调用发送消息函数的调用时机

2019-6-12 10:48 1145

[调试逆向] [求助]微信实现内控发送消息,调用发送消息函数的调用时机

2019-6-12 10:48
1145
功能见: https://bbs.pediy.com/thread-223178.htm        这个帖子 

楼主说的很清楚但是细节有一点不明白

最终思路

踩了这么多坑,总算快成功了,最后的思路是放弃直接调用底层实现,转而调用前端层的代码,模拟用户操作来实现控制微信发送信息。这个思路的实现分为三步:

设置接收者,对应点击联系人的这一操作

设置发送信息内容,对应输入信息内容的这一操作

调用按钮单击事件函数,对应单击按钮或按下回车这一操作

第一步无论是逆向分析还是编写Demo都太顺利了,一次成功,搞得我都忘了我是怎么做到的了...
第二步也很简单,单击事件处理过程中通过虚表调用过GetText,而在DuiLib源码中SetText就在GetText后面(upload/attach/201712/777010_vi27ia77mx9m4w9.png)
那么SetText和GetText在虚表中也应该是相邻的,写个Demo验证一下发现果然如此。
现在看来,最后一步更简单了,事件处理函数我们早就找到了,直接调用就好。

最后成品编写过程中还有一个问题需要解决,三步函数调用都是thiscall,必须要知道类地址。写Demo时吧地址硬编码,编译为DLL,靠StrongOD注入就好,独立程序就不能硬编码地址了。



他所说的第三部   找到了发送消息的call 直接调用  ,   他指的直接调用是 程序内修改 call  。。。。。的地址   ,还是 楼主自己的程序来调用这个 call  如果是程序内修改call的地址来调用  那么调用的时机呢?  会不会导致程序奔溃?
还有各位大佬们   有没有一个小demo给我看看呢?


[公告]安全测试和项目外包请将项目需求发到看雪企服平台:https://qifu.kanxue.com

最后于 2019-6-12 10:49 被逃避不能对付一切编辑 ,原因: 标题改一下
最新回复 (5)
逃避不能对付一切 2019-6-12 13:40
2
0
大哥大哥别沉
Rookietp 2019-6-12 14:18
3
0
WX 不是 duilib 嘛,看看duilib的源码呀,消息机制之类的
逃避不能对付一切 2019-6-12 15:30
4
0
Rookietp WX 不是 duilib 嘛,看看duilib的源码呀,消息机制之类的
可能我问问题问的不太明白,
他的思路是注入 dll        然后 : 设置接收者    也就是找到相应内存 修改内存内容为接受者的微信ID     
再然后   设置发送信息内容     也就是找到相应内存添加发送消息的内容
第三步 是  调用按钮单击事件函数    我想问的是他的调用函数是如何调用的   汇编中怎么调用它?
Buu 1 2019-6-12 15:57
5
0
__asm
{
 mov ecx,xxxx
 push xxxx
 call xxxx
}

最后于 2019-6-12 15:57 被Buu编辑 ,原因:
Cirn09 2019-6-13 18:34
6
0
当然是去调用微信自己的发送信息函数啦
typedef PVOID(__fastcall*ftSendMsg)(args);
ftSendMsg pwxfSendMsg;
pwxfSendMsg = baseaddr+offset;
pwxfSendMsg(args);
文章里设定编辑框然后发送的方法不够好,频繁发送下易崩溃,继续往下跟能找到发送信息的底层函数
最后于 2019-6-13 18:37 被Cirn09编辑 ,原因:
游客
登录 | 注册 方可回帖
返回