c/c++语言开发共享CTF中特别小的EXE是怎么生成的

我们在打CTF时候,出题的爷爷们给出的exe都很小 就10k左右,有的甚至就5k,那时候我很郁闷啊。现在我也能了啊哈哈 不多bb按如下操作: 我们来看看正常的release生成的代码 不得不说 我们在程序里并没有写太多东西,36kb的值确实有点大了。接下来我们开始压缩 首先加上这个代码 加上这段代码 …

我们在打ctf时候,出题的爷爷们给出的exe都很小 就10k左右,有的甚至就5k,那时候我很郁闷啊。现在我也能了啊哈哈
不多bb按如下操作:

我们来看看正常的release生成的代码

#include "windows.h" int main(){     messageboxa(0,"hello","hello",0);     return 0; }

CTF中特别小的EXE是怎么生成的
不得不说 我们在程序里并没有写太多东西,36kb的值确实有点大了。接下来我们开始压缩

首先加上这个代码

#include "windows.h" #pragma comment(linker,"/opt:nowin98") int main(){     messageboxa(0,"hello","hello",0);     return 0; }

加上这段代码的含义无非就是不让程序在win98的平台上运行,(现在估计没有win98了吧。。)

build后结果如下:现在已经减小10k了
CTF中特别小的EXE是怎么生成的

继续除去默认库

按如下步骤进行
CTF中特别小的EXE是怎么生成的
结果如下:不得不说现在只剩下3kb了。而且程序运行一切正常。
CTF中特别小的EXE是怎么生成的
CTF中特别小的EXE是怎么生成的
现在这个程序已经很小了,舒服~

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/c-cdevelopment/600195.html

(0)
上一篇 2021年5月9日
下一篇 2021年5月9日

精彩推荐