首页
社区
课程
招聘
[原创]利用数据结构知识撸一下微信好友列表
发表于: 2019-7-16 17:17 12233

[原创]利用数据结构知识撸一下微信好友列表

2019-7-16 17:17
12233

看到网上满天飞微信数据都是HOOK,在这里给大家来点利用数据结构的知识获取微信好友列表。

HOOK要检测到其实相对容易,常用的 代码修改、内存(读写执行)处理、DRX利用。

一、利用微信ID做突破口,找到存放微信ID内存地址:


好友通讯录把微信ID转为UNICODE字节数组,不停切换搜索最后过滤出来几个。

二、我们找到读取微信ID和ID详细信息代码 :
 
先来个硬件访问断点。


断点下好后再去切换一下好友列表,这时我们看堆栈。
第一个明显是两个ID 交换写入,我们直接看第二个.


标注参数一为传入微信号,eax 是上面的[esi + 0x1C] 赋值, 我们先看看 esi 数据(数据窗口内             好像是一些详细信息)
标注参数一为传入微信号,eax 是上面的[esi + 0x1C] 赋值, 我们先看看 esi 数据(数据窗口内             好像是一些详细信息)
这时我们需要找 esi 来源。




我们看到 esi 需要加 0x28.
我们对add esi,0x28下 F2 断点,然后在数据窗口里看到如图。
这时我们直接对 $-28 下硬件访问断点.


这里我们疑似看到了一段二叉树搜索代码。
如何证明这里是二叉树?

我们明显看到 中间指向上一个结点, 上一个第一或者第三指向下一个结点


这里我们继续返回找到二叉树的头



[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 3
支持
分享
最新回复 (11)
雪    币: 1308
活跃值: (49)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
这很6 值得学习
2019-7-16 17:52
0
雪    币: 6552
活跃值: (4346)
能力值: ( LV10,RANK:163 )
在线值:
发帖
回帖
粉丝
3
 看贴的人不要去加图中的微信号,因为是测试号或者机器人号。
2019-7-16 17:59
0
雪    币: 1266
活跃值: (1307)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
 
最后于 2019-7-16 19:37 被cmputer编辑 ,原因:
2019-7-16 19:37
0
雪    币: 145
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
听朋友说 有啥能爆破微信好友这个人的他的通讯录.以为是这个。。
2019-7-17 07:16
0
雪    币: 31
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
6
老乡是荆门的吗
2019-7-21 20:24
0
雪    币: 19
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
7
老大 能不能说的稍微详细点呀,对于初学者来说 完全没看懂
2019-9-10 12:47
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
8
大哥 有点事请教你 13997718813微信电话同号
2019-11-9 10:38
0
雪    币: 431
活跃值: (1755)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
9
大神666
2019-11-16 00:32
0
雪    币: 56
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
老哥   交流下技术问题  891339684
2019-12-18 16:23
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
11
留个联系方式呗,急需救助
2020-1-24 08:03
0
雪    币: 234
活跃值: (299)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
不需要自己写遍历算法,这里其实就是std::map ,可以直接转换,然后用map的迭代器遍历就行了 
2020-8-2 19:03
0
游客
登录 | 注册 方可回帖
返回
//