PE/西瓜杯

PE

知识点1:

PE文件(Portable Executable,可移植可执行文件)是Windows操作系统中用于可执行文件、动态链接库(DLL)和驱动程序等二进制文件的标准文件格式。

知识点2:
PE文件头
  • DOS头:64字节

  • PE头:228字节(32位PE文件)或244字节(64位PE文件)

  • 节表:每个节表项40字节,数量由NumberOfSections决定


1.DOS头(IMAGE_DOS_HEADER)

PE文件以一个64字节的DOS头开始,其主要目的是为了兼容早期的DOS系统。DOS头的结构如下:

  • e_magic:2字节,DOS签名,值为0x5A4D(即“MZ”)。

  • e_lfanew:4字节,指向PE头的偏移位置。

2.PE头(IMAGE_NT_HEADERS)

PE头由以下三部分组成:

  • Signature:4字节,标识PE文件,值为0x00004550(即“PE\0\0”)。

  • IMAGE_FILE_HEADER:20字节,包含文件的基本信息。

  • IMAGE_OPTIONAL_HEADER:224字节(32位PE文件)或240字节(64位PE文件),包含可选的扩展信息。

3.节表(Section Table)

节表紧随PE头之后,每个节表项的大小为40字节,其数量由IMAGE_FILE_HEADER中的NumberOfSections字段决定。

所以打开该题的附件是.exe,但是不能运行,所以查看其十六进制。

使用软件,如010 Editor、WinHex。进行修改开头

我使用的010 Editor

最后运行得:

CTFShow{i95f5417b37c5e8019372de8737fI}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值