题目描述:菜鸡拿到了一个被加壳的二进制文件
1. 思路分析
提示很清楚了,加壳的二进制文件,正好对这一块知识点是残缺的,先了解下加壳到底是什么
通过这段描述,其实加壳的目的是使得逆向起来更难了,因此这里想要解决这个问题,就需要知道加壳的方式,知道加壳的方式后,再进行去壳即可。去壳前使用IDA是无法看到flag的
2. 解题过程
2.1 使用exeinfoPE将查壳(工具下载地址Download Exeinfo PE - free - latest version)
可以看到,这里是UPX方式,什么是UPX,通过chatgpt的描述来看,这种方式只是对二进制文件进行压缩,很容易进行解压
2.2 使用upx进行脱壳
此时查看文件信息,相比之前有些差异
这个时候再使用ida,通过main函数,即可找到flag
最终,flag = flag{Upx_1s_n0t_a_d3liv3r_c0mp4ny}
总结:这道题最大的收获是对加壳有相应的了解,题目的话倒不难,只要壳脱下来了,有很多种方式能够拿到flag。