-
-
[原创]看雪CTF2017第7题
-
2017-6-13 16:37 2585
-
1. 调试
OD加载, F9, 输入sn, 回车后异常, 在check处新建EIP
.text:004104CD check
2. 处理流程
smc解码00411B30处的代码
.text:00410532 call sub_410DD6 .. .text:00410558 call sub_411B30
表(xor cc, 记为map): EpY07v!Vwb2UnTu5SHP1Oazei9@kRZF8IrdCJcDQKs3mGMlgBqyfNXhAo4x6WjtL
char sn[20+1]; char buf[20]; for (int i=0;i<len(sn);i++) { int n = get_index(map, sn[i]); int k=i+1; while(k--) { n = (n + 5 + n / 5) % 64; } buf[i]= ror(map[n], 5); }
sn: 123456
buf: 5B C9 A2 4A BB A3
buf转4进制: 112330212202102223232203
结果与22030023012320022022232310222123222123232103222222031223200222220002102223021003比较
相同则sn参与smc解码并执行弹框
因为前面的转换会导致碰撞, 所以逆推后的结果不唯一
i=0: B i=1: w j i=2: n i=3: d s i=4: Y l A i=5: b t i=6: P i i=7: H e i=8: d c s i=9: P i i=10: y i=11: 2 5 i=12: 0 g o i=13: 1 a i=14: 7 B 4 i=15: @ r K i=16: J G X i=17: 9 I D i=18: O i=19: k F
组合后输出, 挑顺眼的, 后面再保证smc解码正确即可
>>> BwnsAtPediy2017KX9Ok
[CTF入门培训]顶尖高校博士及硕士团队亲授《30小时教你玩转CTF》,视频+靶场+题目!助力进入CTF世界
赞赏
他的文章
KCTF2022春季赛 第三题 石像病毒
8271
KCTF2022春季赛 第二题 末日邀请
15394
KCTF2021秋季赛 第二题 迷失丛林
17929
KCTF2020秋季赛 第十题 终焉之战
8103
KCTF2020秋季赛 第九题 命悬一线
5829
看原图