gpt4 book ai didi

windows - 指向 PE 文件中偏移量 0x3c 处的 PE header 的指针是否始终设置为 0x80?

转载 作者:可可西里 更新时间:2023-11-01 14:41:09 44 4
gpt4 key购买 nike

Is the pointer to the PE-header at offset 0x3c in the PE-file always set to 0x80?

我想知道为什么这个指针会改变。我猜 DOS header 和 stub 没有改变,因为它们是第一次编写的。

PE header 直接在这些 DOS 工件之后开始,那么 PE 指针是否始终设置为 0x80?如果不是,为什么?

最佳答案

许多程序都有一个 Rich signature它附加在 DOS stub 之后,将 NT header 向下推一个可变数量。

也完全可以使用不同的 DOS stub ,或者根本不使用。它不必打印“这个程序不能在 DOS 模式下运行”,你可以在那里放一个小的 DOS 游戏,一个硬盘删除器,打印一些完全不同的东西,任何你想要的。

如果你小心的话,你甚至可以overlap the NT header with the DOS header ,因此使用偏移量 < 0x40。这甚至不太难,因为 DOS header 中唯一重要的部分是 e_lfanew 和“MZ”,其他一切都可以是使 NT header 工作所需的任何东西。您只需将 e_lfanew 与可以安全地具有该值的 NT header 的一部分对齐。

关于windows - 指向 PE 文件中偏移量 0x3c 处的 PE header 的指针是否始终设置为 0x80?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38695744/

44 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com