这是攻防世界MISC高手进阶区的题目,题目如下:
点击下载附件一,解压后得到一个txt文件,打开后内容如下:
根据百度搜索的结果可知这是一种叫做BrainFuck的语言,BrainFuck是由Urban Müller在1993年创建的,最小的具有图灵完备性的语言。一共由8种运算符组成,其编译器长度只有两百多个字节。这种语言基于一个简单的机器模型,除了指令,这个机器还包括:一个以字节为单位、被初始化为零的数组、一个指向该数组的指针(初始时指向数组的第一个字节)、以及用于输入输出的两个字节流。
下面是这八种状态的描述,其中每个状态由一个字符标识:
Brainfuck程序可以用下面的替换方法翻译成C语言(假设ptr是char*类型):
如果用这种语言写一个"Hello World!"的话,那就是
++++++++++[>+++++++>++++++++++>+++>+<<<<-]
>++.>+.+++++++..+++.>++.<<+++++++++++++++.
>.+++.------.--------.>+.>.
好了,扯远了,随便找一个BrainFuck在线解密网址,将文件里的内容复制进去,然后点击BrainFuck To Text即可
解密后的结果如下:
所以这道题的flag如下:
flag{esolangs_for_fun_and_profit}
这里附上这道所需的在线解密工具:
以上就是我对这道题的解法。因本人菜鸡一只,如果有什么不对的地方,实属正常。还请各位大佬予以指正,谢谢!