题目提示这是一个加壳的二进制文件,拖到exeinfope,是UPX壳。
XCTF-simple unpack
这里我们用linux命令upx -d脱壳。
XCTF-simple unpack
脱完壳之后拉入ida64中分析。找到main函数,可以看到这一句可以是输出flag的。

puts("Congratulations!", flag);

XCTF-simple unpack
跟进flag
XCTF-simple unpack
flag是拿到了,但是这不是我们的根本目的,作为一个逆向小白,里面有些东西不太清楚。再补充一下。
什么是壳?为什么要加壳?
壳就是软件里面一段保护软件不被非法篡改和反编译的程序,先于其他程序运行,拿到控制权,保护软件。
壳分为私密壳和压缩壳。压缩壳主要目的是减小程序体积,如ASPacK、UPX和PECompact等。保护壳是保护程序,用上了各种反跟踪技术保护程序不被调试、脱壳等,其加壳后的体积大小不是其考虑的主要因素,如ASProtect、Armadillo、EXECryptor等。
参考链接
https://www.cnitom.com/experience/200802/50874.html

相关文章:

  • 2021-08-17
  • 2021-11-15
  • 2022-12-23
  • 2021-11-17
  • 2021-09-14
  • 2021-12-06
猜你喜欢
  • 2021-05-23
  • 2021-11-25
  • 2021-12-30
  • 2021-11-21
  • 2022-01-23
  • 2021-07-07
  • 2021-07-31
相关资源
相似解决方案