我们有 objdump , readelf 和 dumbin 等工具来显示可执行文件文件内容。
但是当可执行文件文件加载到内存中时(创建进程),内存中的段通常与< 可执行文件文件中的strong>细分。例如,在加载时,会分配两个额外的段,即堆栈和堆(我们会忽略页面映射的详细信息)。
是否有工具可以帮助显示流程的及时内存段/状态?
答案 0 :(得分:2)
Windows可执行文件使用Portable Executable格式。此格式描述了加载进程时分配的内存的部分,以及可选的原始数据(.text
,.data
部分)以加载到这些部分中。
每个部分通常都有一个文件偏移量,用于指定数据所在原始文件中的位置,以及将加载数据的虚拟地址。这些可能或可能不相似。
PE Explorer可以为您提供有关可执行文件的部分(以及有关PE文件的所有其他内容)的详细信息。
Immunity Debugger将允许您附加到正在运行的流程并查看其memory map。