simple-unpack
难度系数: ⭐⭐⭐
题目来源: 暂无
题目描述:菜鸡拿到了一个被加壳的二进制文件
题目说有壳,那我们直接看一下是什么壳,用peid看一下
![](https://img2020.cnblogs.com/blog/2034615/202005/2034615-20200516155426168-2062802437.png)
发现peid说不是有效的文件,那我们用VScode看,VS中安装插件hexdump for VSCode
![](https://img2020.cnblogs.com/blog/2034615/202005/2034615-20200516155647320-658059944.png)
是elf文件,我们用kali将其脱壳
利用upx工具将其脱壳,命令为upx -d /路径/源文件名 -o 脱壳文件名
![](https://img2020.cnblogs.com/blog/2034615/202005/2034615-20200516160509513-744533148.png)
使用ida将脱壳后的文件打开
![](https://img2020.cnblogs.com/blog/2034615/202005/2034615-20200516161040154-343546719.png)
在main函数中往下翻,就看到flag了
傻瓜解法:
源文件使用记事本打开,搜索flag
![](https://img2020.cnblogs.com/blog/2034615/202005/2034615-20200516161313538-84545649.png)
将中间的乱码删掉就行
逆向之路,才刚刚开始
补充:
ELF
,说明这是一个在Linux下的可执行文件;相应的,如果是 MZ
,说明是在Windows下的可执行文件;查看文件格式还可以使用linux命令file,很简单
![](https://img2020.cnblogs.com/blog/2034615/202005/2034615-20200516162623426-1058382022.png)