解压压缩包,是一个main.exe软件,先用PEiD查壳:

发现不是PE文件格式的软件
用ExeinfoPE查看:

发现是Linux下的可执行文件:64位的ELF文件
用IDA64打开:

这个程序逻辑并没有很复杂,就直接点开main函数,反编译:

点进not_the_flag(v4)函数:

发现代码就只用输入42,就会输出:
Cipher from Bill
Submit without any tags
#kdudpeh
告诉我们密码来自比尔,不带任何标签提交:#kdudpeh
就是指提交“kdudpeh”,
但是提交flag{kdudpeh}竟然不对,然后又看到题目提示里提到sha1算法:

查看main.exe文件的sha1值:

发现这个并没有什么用
最后还是把“kdudpeh”进行单向取sha1哈希值:

得到flag{80ee2a3fe31da904c596d993f7f1de4827c1450a}。

提交正确!

博客讲述了通过分析一个非PE格式的Linux可执行文件(ELF),发现其内部逻辑并使用反编译工具理解代码。在main函数中找到输入特定值42会触发输出密码提示。进一步根据题目提示,使用SHA1算法对密码进行哈希运算,得出flag。最终成功提交的SHA1哈希值为flag{80ee2a3fe31da904c596d993f7f1de4827c1450a}
1010

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



