1. 进入环境
题目给出了一串字符串,并没有提示。
观察可以看到,每个字符都是在0-f之间,很像16进制。尝试用hackbar的decode玩一玩,发现没有什么结果。
尝试两位字符一组,第一组字符D4的二进制为212,且不在ASCII的0-128之间,尝试用脚本转换:
string = 'd4e8e1f4a0f7e1f3a0e6e1f3f4a1a0d4e8e5a0e6ece1e7a0e9f3baa0c4c4c3d4c6fbb9e1e6b3e3b9e4b3b7b7e2b6b1e4b2b6b9e2b1b1b3b3b7e6b3b3b0e3b9b3b5e6fd'
res = ''
for i in range(0, len(string), 2):
res += chr(int(string[i : i + 2], 16) - 128)
print(res)
结果如图:
果然出发点是字符编码和凯撒的结合体。最终的答案为:DDCTF{9af3c9d377b61d269b11337f330c935f}