(CE定位当前聊天框的微信ID)
1.启动wechat、CE,通过CE附加wechat.exe进程,搜索依次顺序为:选择字符串\勾选UTF-16\wxid\新的扫描
(得到第二个微信ID进行筛选)
2.头次搜索,会得到很多结果。过滤方法:咱们通过切换当前聊天窗口,在返回结果处寻找文件传输助手的wxid[再次扫描]
(筛选出来的结果已剩余9个)
3.再次筛选过滤。过滤方法:通过过半或单个修改9个地址的数值(wxid)然后发送文本消息,分辨出哪些地址才是我们想要的
---------------------------------------------------
(效果如上)
4.通过反复过滤,最终成功定位到有效的地址[CE篇完]
OD寻找发送文本call
(dd ce获取的地址)
1.启动OD附加wechat进程,让wechat运行起来。
当你dd转到需要下断的地址处,鼠标右击选择断点->内存访问,随即微信发送一条文本消息。
(内存访问首断下来的call)
2.当你下了内存访问断点后,微信发送一条消息,OD则立马断了下来,可以看到堆栈的第一个call的开头。
我们回车则跳到call wechatwi.626a87c0,我们在这里下一个断点
(开头)
3.当你下了断点后,你发现不是你想要的call,那怎么办,不用急,咱们慢慢找;
我来教你,按f7或者鼠标滚轮向上找此call的函数开头下断点
---------------------------------------------------
(得到的是这个call)
4.相信不少小伙伴都能找到了这里,额~~~,但是呢,虽然这个call里有我们想要的信息,但这不是我想要找的
【所以我们深层的追下去】
----------------------------------------------------
(这个才是我们想要的call)
5.这怎么找呢,其实很简单。只要大家在断下来call的上下,每一个call大家都是可以去看一下,看里面存的是什么
发送文本两个参数必不可少【wxid接收人、消息的内容】 ;好了这个call我怎么找到的呢
大家回转到内存访问断下的第一个call那里,然后往下找,就能找到这个call了。找到后,咱们得去看每一行代码里面存放的是什么,
咱们给它备注上,方便待会咱们汇编[OD篇完]
ps:其实吧,无论找什么call,当我们不知道哪个是我们想要的,我们都可以下断点,逐个call看看,慢慢的排除,一层层的深追下去,虽然有些call存有我们的信息,但这只是表面的call,
大家不要觉得繁琐,这个是需要自己多实践出来的经验【本人是过来人,刚接触不久CE\OD一个月不到,想法、目的都实现了,所以跟大家分享探讨学习】
易语言汇编
(程序界面)
我的思路是这样的,通过Hook当前微信聊天窗口获取第一个参数[wxid],然后汇编第二个参数[发送文本call]
具备了这两个参数,咱们就可以实现发送消息文本了(如何定位当前微信聊天窗口呢,这个也是蛮简单的哈,我这里就不说了哈)
接下来就是汇编环节
抱歉各位汇编这步暂时写不了了,易语言打不开了。
帖子先发,弄好再补上汇编环节(修复过程得重启电脑)。
ps:来了,小插曲可以翻篇了~~~
完结了,谢谢大家浏览与支持[学而致用,学而分享之共同进步]
2021年8月16日 11:10:52
作者:dy
如果对你有所帮助,不妨评个分吧