想实现微信机器人软件的主要构成分为一个主进程exe和一个注入的dll,主进程exe:把dll注入到微信,发送指令给dll,接受dll的信息,注入的dll:被注入到微信内部,拦截微信的数据,调用微信的功能接收主进程的指令,执行指令对应的操作、发信息给主进程,通过这样的操作,就能实现获取信息和发送信息的最主要功能了。

编写微信机器人软件最主要的工作,就是找到微信中关键call,然后调用call代码的数据或者直接调用call代码来实现我们需要的功能。以接收好友消息为例,大致说明一下制作机器人的过程。

【接收实时消息】

1、第一步,打开CE软件,加载微信,附加微信之后,用另外一个微信,给已经登陆的微信发送一条信息,然后用CE 点击:New Scan ,注意不要选 UTF-16,搜索之后,出来了几条结果,再用一个微信发送一条信息,这时看有哪些地址是刚才的发送的内容,把他选到下面去。

2、然后把这个地址复制下来,在OD里面下个断点。

3、然后发送一条消息,程序中断,堆栈窗口往下翻,发现“lass SyncMgr”,有价值的信息。

4、右键【反汇编窗口跟随】,函数位置下断点,删除内存写入断点,放程序执行完。再发一条消息,程序断下来。查看各个寄存器的值,是都由寄存器存储了微信接收人、发送人和具体内容。然后保存反汇编窗口代码,切换到e界面,获取基质地址,计算消息的偏移地址

5、分析代码,编写hook代码

基址:0F2D0000EBX=0DB52460  ->0DB576A0hook=116B138F-0F2D0000=‭‭37622671‬‬call=11642818-0F2D0000=‭‭37169176‬‬116B1373    F9              stc
116B1374    81EE 04000000   sub esi,0x4
116B137A    C1D0 78         rcl eax,0x78
116B137D    98              cwde
116B137E    8B06            mov eax,dword ptr ds:[esi]
116B1380    E9 73B50500     jmp WeChatWi.1170C8F8
116B1385  ^ E9 51CEEAFF     jmp WeChatWi.1155E1DB
116B138A    68 48A5F0B1     push 0xB1F0A548
116B138F    E8 8414F9FF     call WeChatWi.11642818                   ; inset1
116B1394    3155 39         xor dword ptr ss:[ebp+0x39],edx
116B1397    AA              stos byte ptr es:[edi]
116B1398    48              dec eax
116B1399    5A              pop edx
116B139A    1E              push ds
116B139B    DC40 22         fadd qword ptr ds:[eax+0x22]
116B139E    5F              pop edi
116B139F    B8 0B483173     mov eax,0x7331480B0DB576D8  00000001
0DB576DC  00000000
0DB576E0  00000002
0DB576E4  621A2ACC  andromed.621A2ACC
0DB576E8  0E0F3728  UNICODE "1234343681@chatroom"0DB57710  0E31B5E0  UNICODE "[破涕为笑]"0DB57810  08C5ADD0  UNICODE "wxid_jhnasdfghjkj22"
0DB57814  00000013
0DB57818  00000013
0DB5781C  00000000
0DB57820  00000000
0DB57824  0DCA63A0  UNICODE "75c3848bf7af25d77ed15057c1cbb784"0DB5788C  0D67EC90  UNICODE "<msgsource>\n\t<silence>0</silence>\n\t<membercount>3<"

微信机器人之PC微信hook相关推荐

  1. python hook pc微信_微信机器人之PC微信hook

    微信机器人的实现有三种:web,app和exe.其中web很多账号受限登录不了,而hook app的话需要使用xposed则会封号,所以现在大部分机器人都是基于PC微信. 先实现一下最基本的机器人的功 ...

  2. api接口 pc微信hook_微信机器人之PC微信hook

    微信机器人的实现有三种:web,app和exe.其中web很多账号受限登录不了,而hook app的话需要使用xposed则会封号,所以现在大部分机器人都是基于PC微信. 接收消息 最新版(2.8.0 ...

  3. wxpy 0.1.2微信机器人 / 优雅的微信个人号API

    微信机器人 / 优雅的微信个人号API,基于 itchat,全面优化接口,更有 Python 范儿. 用来干啥 一些常见的场景 控制路由器.智能家居等具有开放接口的玩意儿 跑脚本时自动把日志发送到你的 ...

  4. 微信公众号python人工智能回复_python实现微信机器人: 登录微信、消息接收、自动回复功能...

    安装wxpy pip install -u wxpy 登录微信 # 导入模块 from wxpy import * # 初始化机器人,扫码登陆 bot = bot() 运行以上代码,会生成一个二维码, ...

  5. python实现微信机器人: 登录微信、消息接收、自动回复功能

    这篇文章主要介绍了python实现微信机器人: 登录微信.消息接收.自动回复功能,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 ...

  6. 微信机器人红包java_微信机器人_奇迹蛋_java实现

    [实例简介] 参考了别人的一些微信开发方法,自己实现了一个简单的微信机器人,部署在百度云上,能够点歌,查询天气,调教对话.可关注微信公众号:奇迹蛋. 实现说明:http://blog.csdn.net ...

  7. 微信机器人服务器成本,微信机器人案例汇总

    四月份分享主题:微信机器人文章汇总,项目地址:项目地址:https://github.com/pig6/wxrobot(或点击阅读原文) 第一篇.项目介绍 从项目选择库.github下载代码.如何运行 ...

  8. java微信机器人_Java版微信机器人代码

    Java版微信机器人代码 (2014-07-31 09:47:58) 标签: 软件测试 java 上海泽众软件 package com.eiyoung.wechat.web.controller; i ...

  9. python微信机器人库_Python微信机器人

    1.需要用到的模块: requests:Requests 是用 Itchat:itchat是一个开源的微信个人号接口,使用python调用微信从未如此简单. 使用不到三十行的代码,你就可以完成一个能够 ...

  10. python实现微信机器人: 登录微信、消息接收、自动回复

    安装wxpy pip install -U wxpy 登录微信 # 导入模块 from wxpy import * # 初始化机器人,扫码登陆 bot = Bot() 运行以上代码,会生成一个二维码, ...

最新文章

  1. ※编程随笔※=☆编程基础☆=※№ SVN工具自动属性 $Author$ $Date$ $Revision$ $URL$ $Header$替换...
  2. HTTP协议中的keep-alive
  3. 60 分钟极速入门 PyTorch
  4. hive一次加载多个文件_0738-6.2.0-如何在Hive中使用多分隔符
  5. |Tyvj|NOIP2004|堆|贪心|P1066 合并果子
  6. 使用CSS实现图片未加载完成时占位显示
  7. agv系统介绍_重载AGV小车主要结构及导航原理是什么?
  8. linux登录界面输入密码时卡住6,centos6.8(虚拟机VNC)输入正确用户名和密码仍跳回登录界面...
  9. 机器学习:算法视角pdf_何时使用不同的机器学习算法:简单指南
  10. undefined reference to `jpeg_std_error(jpeg_error_mgr*)
  11. 使用adb命令启动APK方法
  12. 计算机系统下的审计系统,独立审计具体准则第20号——计算机信息系统环境下的审计...
  13. 安卓自动化实战项目(AutoJs)-抖音自动取关脚本
  14. Git Github学习笔记
  15. python二元一次方程组用鸡兔同笼的思路来写编程_python二元一次方程组用鸡兔同笼的思路来写编程_《应用二元一次方程组——鸡兔同笼》......
  16. python调试程序的方法_调试Python程序的四种方法
  17. DCloud与APICloud的对比选择
  18. 数据结构作业——Sanji(优先队列)
  19. mysql数据库select语句用法_mysql学习笔记之完整的select语句用法实例详解
  20. python实现Dice系数

热门文章

  1. [Matlab]维纳滤波器设计
  2. Python文件去重代码
  3. linux脚本入门,Linux Shell脚本教程(一):Shell入门
  4. Flask Swagger 文档自动生成
  5. python 对字符串逆序输出
  6. jq ui datepicker添加时分秒
  7. FFT中频谱泄露的两种理解
  8. Android触摸屏驱动,电阻屏,电容屏
  9. gabor matlab pudn,matlab-Face-recognition 基于Gabor特征提取和人工智能的人脸检测系统 271万源代码下载- www.pudn.com...
  10. matlab神经网络训练结果常用评价指标