侧边栏壁纸
  • 累计撰写 19 篇文章
  • 累计创建 18 个标签
  • 累计收到 10 条评论
CTF

[Reverse] 吉林省第二届CTF初赛 _2019_Reverse_Analysis

小海
2022-06-04 / 0 评论 / 1 点赞 / 638 阅读 / 374 字 / 正在检测是否收录...
温馨提示:
本文最后更新于 2022-06-04,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

题目:

Analysis

题解:

用idea打开找到main函数
image.png
根据伪代码的意思,先判断输入的字符串的长度是否为22 如果不是就直接报错,是则就继续判断
看for循环,一共循环22次(&str+i)相当于Str 、取Str里的字符,在加50和byte_419000字符串进行匹配 如果不匹配则直接break跳出,所有现在我们只需要做的就是要把上面的十六进制数组转成十进制再减去50转字符串即可得到flag
image.png

脚本:

flag = [0x98, 0x9E, 0x93, 0x99, 0xAD, 0x7B, 0xA0, 0xA0, 0x97, 0xA4, 0x7F, 0xA1, 0xA0, 0x99, 0xA1, 0x9E, 0x9B, 0x93, 0x91, 0x84, 0x77, 0xAF]
for ch in flag:
    print(chr(ch - 50),end="")
运行即可得到flag
1

评论区