首页
社区
课程
招聘
[原创]看雪京东2018CTF第二题
发表于: 2018-6-20 12:06 4113

[原创]看雪京东2018CTF第二题

2018-6-20 12:06
4113
这个题使用的数据结构是字典树

跟到sub_401C40这个函数,该函数主要功能是初始化一个字典树,并对输入的sn分割成8个单词,然后调用 sub_402B40 插入到字典树中,最后比较dword_407E48这个字典树。由于相同的字典树可能对应多个sn,所以sub_401B80这个函数进行了限制。

sub_ 4029F0这个函数是初始化一颗字典树,我把它命名为init_trieTree

按我的理解是感觉设置了一个虚析构函数,然后分配272个字节的空间,这个272个字节是一个节点,最后通过sub_403100中的sub_403510函数对节点中的成员进行了设置。所以可以得到这个节点的大致结构为,destroy这个函数指针我的理解是用来释放内存的。

根据 dword_407E48这个字典树可以从OD得到树型结构为,根节点不含Word,这个成员的数据都为0

M这个节点的current_word_count成员为2,说明sn要有两个c7M。然后根据sub_401B80函数的限制条件来看,相应的值为c7、kx、tf、t9

所以sn为c7ctc7Mkxc7Mkctfct9c7M


[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 794
活跃值: (986)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
2
我没有做出来
2018-6-21 00:17
0
雪    币: 205
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
这个数据结构怎么学
2018-6-24 01:18
0
雪    币: 24293
活跃值: (5304)
能力值: ( LV12,RANK:529 )
在线值:
发帖
回帖
粉丝
4
东临碣石A 这个数据结构怎么学
理解原理,尝试着用某种编程语言实现它
2018-6-24 17:14
0
雪    币: 205
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
会飞的鱼油 理解原理,尝试着用某种编程语言实现它
谢谢指点,可是没时间搞这个
2018-7-5 21:18
0
游客
登录 | 注册 方可回帖
返回
//