0x00 前言
vishwaCTF 2022的一道题目,最终只有24人解出来了,脑洞算是难住了大多人,队友说vishwaCTF应该改名为guessCTF。题目却是不难,但的确得脑洞够大。
因为在比赛中很少遇见考查二叉树的题目,所以记录一下。
0x01 题目
题目给了一大串数字,想都不用想,先转acsii码,得到一个字符串:
TR3{0RTa3H_3WPShTR___MHT3H1_N3YiwCFT3S43T3P3ST4_H_4T_RTSU0_H_K}vs
字符串中包含了 _ { } 和字母数字,而且能找到vishawCTF这些字母,由此可以判断该题应该只是字母顺序的改变,而不是替换密码。
利用栅栏密码等各种移位尝试无法的到flag。
这时候回归到题目,名叫Forest Trails,翻译成中文叫丛林小径。队友马上反应应该和树有关,随即想到二叉树。
关于二叉树的恢复,一般得根据前序和中序、或者后序和中序、才能复原二叉树。而本题只给了一串字符串,于是脑洞来了,不管怎样得先把树画出来,根据树形结构画出来的图:
左下角明显看到了vishwaCTF{的样式,之后遍历一下二叉树就能得到flag了,属于中序遍历。
0x02 总结
回观这道题的时候发现其实不难,主要是靠脑洞和思路,如果猜到是二叉树了可能一下就能解出来了,总之,还是很有意思的。