[BUUCTF]Reverse: [ACTF新生赛2020]easyre1


这道题目解压出来有一堆exe,看了下两个小的exe,感觉没什么用。

用DIE打开easyre.exe,发现有upx壳,解之,然后ida32打开,找到主函数。

V6实际上就是ACTF{,V10是},二者组成flag的外圈,里面应该有12个字符,因为for循环中i从0到11。for循环看起来是比较①V4[i] ②__data_start__数组中索引为V5[i]-1的值。

点开_data_start__,看到一串文本。

这里问题来了,我试了好几次,导出数据总是被截断,如下图,我也不知道为什么,在buuctf群里问了,时间太晚暂时还没有师傅帮忙。

最后我只好把这个数组一行一行站到了代码里。

v4 = "*F'\"N,\"(I?+@"
data = "~}|{zyxwvutsrqponmlkjihgfedcba`_^]\[ZYXWVUTSRQPONMLKJIHGFEDCBA@?>=<;:9876543210/.-,+*)('&%$# !\""

res = ''
for x in v4:
    v5i = data.find(x) + 1 
    res += chr(v5i)

print(res)

运行得到U9X_1S_W6@T?,加上flag包围即可。buuctf的题要把ACTF换成flag,即flag{U9X_1S_W6@T?}

,

发表回复

您的电子邮箱地址不会被公开。