首页
社区
课程
招聘
[原创]判断号码是否注册Soul的分析
发表于: 2026-1-15 22:05 1331

[原创]判断号码是否注册Soul的分析

2026-1-15 22:05
1331

本文章中所有内容仅供学习交流使用,不用于其他任何目的,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关!

同事王二狗说他大舅家二姑的三叔子的小外孙的班花突然追他,想知道她是否注册了这个APP,于是就有了接下来的分析

掏出Reqabel抓包,看到phone、cs、slb、sdi都需要计算
图片描述
返回数据包

通过register的值来判断该号码是否已注册

在IDA中查找“phone”,找到引用
图片描述
继续查找“encodePhoneNum”
图片描述
至此,phone的计算过程已经很明显了
让豆包老师写个函数验证,结果竟然不对!!!
继续分析
图片描述
发现内部还有一次base64,也就是一次加密,结果进行两次base64
代码如下,测试通过

图片描述
跟进去之后,就能看到整个的计算过程
两次MD5,都取前4字节,进行排列组合
还有就是时间戳/1000,然后转成hex进行排列组合
其中一次MD5要用到sdi,那就继续分析

图片描述
查找sdi,发现slb也在这里,好像更容易解决,就先验证slb吧

这不是和phone加密相同嘛,只是key不同
验证通过
继续寻找sdi
图片描述
跟进去,发现是MD5
源数据是三部分
P1:设备ID
P2:设备名称
P3:设备型号
sdi = MD5( P1 + P2 + P3 )

本次分析难度适中,但加密参数较多,并非没有头发为之阵亡。

{"code":10001,"message":"获取成功","data":{"register":true},"success":true}
{"code":10001,"message":"获取成功","data":{"register":true},"success":true}
def encodePhoneNum(phone: str) -> str:
    key = "789!@#xswEDCzxcv".encode('utf-8')[:8]
    phone_utf8 = phone.encode('utf-8')
    cipher = DES.new(key, DES.MODE_ECB)
    encrypted_bytes = cipher.encrypt(pad(phone_utf8, DES.block_size, style='pkcs7'))
    first_base64 = base64.b64encode(encrypted_bytes).decode('utf-8')
    second_utf8 = first_base64.encode('utf-8')
    second_base64 = base64.b64encode(second_utf8).decode('utf-8')
    return second_base64
def encodePhoneNum(phone: str) -> str:
    key = "789!@#xswEDCzxcv".encode('utf-8')[:8]
    phone_utf8 = phone.encode('utf-8')
    cipher = DES.new(key, DES.MODE_ECB)
    encrypted_bytes = cipher.encrypt(pad(phone_utf8, DES.block_size, style='pkcs7'))

[培训]Windows内核深度攻防:从Hook技术到Rootkit实战!

收藏
免费 32
支持
分享
最新回复 (17)
雪    币: 104
活跃值: (7441)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
tql
2026-1-18 13:53
0
雪    币: 155
活跃值: (4096)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
感谢分享 !
2026-1-18 21:01
0
雪    币: 1116
活跃值: (1401)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
4
666
2026-1-18 21:09
0
雪    币: 105
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
5

0

最后于 2026-1-18 22:37 被初心白丶编辑 ,原因:
2026-1-18 22:34
0
雪    币: 2444
活跃值: (3816)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
6
6
2026-1-18 23:01
0
雪    币: 8810
活跃值: (6642)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
感谢分享
2026-1-18 23:27
0
雪    币: 200
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
8
感谢分享
2026-1-19 12:58
0
雪    币: 7319
活跃值: (23944)
能力值: ( LV12,RANK:550 )
在线值:
发帖
回帖
粉丝
9
看看
2026-1-19 13:42
0
雪    币: 200
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
10
111
6天前
0
雪    币: 204
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
11
6天前
0
雪    币: 203
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
12
太强了,感谢分享
4天前
0
雪    币: 33
活跃值: (171)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
太强了
3天前
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
14
66
3天前
0
雪    币: 177
活跃值: (325)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
66
3天前
0
雪    币: 200
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
16
1
2天前
0
雪    币: 0
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
17
111
1天前
0
雪    币: 230
活跃值: (1556)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
1
23小时前
0
游客
登录 | 注册 方可回帖
返回