【2019红帽杯】easyRE

拿到之后搜索字符串,找到you found me!然后定位所在函数,
先根据给出的字符进行加密:
【2019红帽杯】easyRE
文章图片

得到一个类似提示的东西:
【2019红帽杯】easyRE
文章图片

继续向下发现加密算法:
【2019红帽杯】easyRE
文章图片

可以看出是十次base64加密,将明文进行十次base64解密,得到https://bbs.pediy.com/thread-254172.htm,点进去是看雪的一个帖子,你就会发现你被坑了......
其实关键函数就在主函数的下面一个函数,对24个字符进行操作:
【2019红帽杯】easyRE
文章图片

然后写一个循环异或脚本,跑一下就get flag了:

s = [0x40, 0x35, 0x20, 0x56, 0x5D, 0x18, 0x22, 0x45, 0x17, 0x2F, 0x24, 0x6E, 0x62, 0x3C, 0x27, 0x54, 0x48, 0x6C, 0x24, 0x6E, 0x72, 0x3C, 0x32, 0x45, 0x5B] s1 = 'flag' flag = '' key = ''for i in range(4): key += chr(s[i] ^ ord(s1[i]))for i in range(len(s)): flag += chr(s[i] ^ ord(key[i % 4]))print(flag)

【【2019红帽杯】easyRE】

    推荐阅读