题目链接:https://buuoj.cn/challenges#reverse3
把题目拖进exeinfo里,是个32位的,无壳

把题目拖进IDA中,找到main_0函数,按F5得到伪代码

简单分析一下啊
输入一串字符串,放在Str里,然后Str经过sub_4110BE函数处理后,得到的结果放在v1里,然后把v1 copy到Dest里。再把Dest经过for循环处理后与Str2对比,相等就是right flag。
跟进sub_4110BE函数

这是一个base64加密函数,再看看Str2是什么

写个脚本解一下
import base64
str = "e3nifIH9b_C@n@dH"
str1 = ""
flag = ""
for i in range(len(str)):
str1 += chr(ord(str[i])-i)
flag = base64.b64decode(str1)
print(flag)
flag:{i_l0ve_you}
本文解析了一道编程挑战,涉及字符串处理和Base64解密。作者详细介绍了如何跟踪加密函数并揭示隐藏的解密脚本,最终成功解出旗标:i_l0ve_you。
888

被折叠的 条评论
为什么被折叠?



