-
-
[原创]KCTF2021秋季赛第二题WriteUp
-
发表于: 2021-11-16 17:01 12802
-
================================================================
IDA看一下,MessageBox位置,TryAgain和 GoodJob~
找到关键校验函数:00401580 (checkKey,因为MessageBox GoodJob在里面)
parseFlag是把输入的字符串(长度32,字符集[0-9A-F]),每8bit,前4bit与后4bit颠倒,存成一个 16字节数组
然后分割前8字节,放在一个D1位置,后8字节,传给checkKey。
D1是个256字节的数组,前8字节为空,正好放flag的前8字节
checkKey做了3个验证:
1,D1,扩展成 256 * 256 的一个数组,然后256为一组,检测每组 +0, +14,+40,+79位置,是否为0,256轮加完后,得到4个BYTE数字,必须满足条件0xA9,0xAC,0xA7, 小于等于0xC8
2,对D1,进行交换,交换的同时,验证D1里面所有字节,不能重复
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!
最后于 2021-11-16 18:09
被海风月影编辑
,原因:
赞赏记录
参与人
雪币
留言
时间
伟叔叔
为你点赞~
2023-3-18 05:21
一笑人间万事
为你点赞~
2022-7-27 00:58
心游尘世外
为你点赞~
2022-7-26 22:45
飘零丶
为你点赞~
2022-7-17 02:29
wx_孤城
为你点赞~
2021-12-3 00:11
赞赏
他的文章
- [原创]KCTF2021秋 第十一题 图穷匕见 writeup 18836
- [原创]KCTF2021秋 生命的馈赠 writeup 18989
- [原创]KCTF2021秋 万事俱备 writeup 18447
- 第七题 声名远扬 WriteUp 13640
- [原创]KCTF2021秋季赛第二题WriteUp 12803
看原图
赞赏
雪币:
留言: