将文件拖入Exeinfo PE得到是64位未加壳的ELF文件

将文件拖入IDA,我们看到有main函数,点进去查看
F5查看伪代码,分析下面

可以看出flag以nctf开头。
继续向下分析

可以看到当v4的ASCII码值为79,111,46,48时分别执行四个函数。
也就是输入’O’ ‘o’ ‘.’ ‘0’ 时分别进行左 右 上 下的移动。
继续向下分析

可以看到每次执行LABEL_14都会紧跟一次LABEL_15,再看到LABEL_22是输出"Wrong flag!"说明LABEL_15与判断最后的结果有关,判断条件发现”asc_601060“,点进去发现一串疑似迷宫的字符串

数了个数之后发现64位,猜测可能是8x8的迷宫,将字符串分隔后如下

根据上文得到移动操作得到flag:nctf{o0oo00O000oooo…OO}
本文介绍了通过ExeinfoPE和IDA分析64位未加壳的ELF文件的过程。在文件中发现了与'flag'相关的main函数,并揭示了当输入特定字符序列'O' 'o' '.' '0'时,程序会执行不同移动操作。进一步分析发现一个8x8的迷宫字符串,通过模拟移动路径,最终解密出flag:nctf{o0oo00O000oooo…OO}

被折叠的 条评论
为什么被折叠?



