gpt4 book ai didi

c - IDA中的 'Segment type: Externs'是什么意思?

转载 作者:太空宇宙 更新时间:2023-11-03 23:21:44 34 4
gpt4 key购买 nike

我正在尝试使用 IDA pro 分析一个动态链接的 64 位 ELF 文件,我发现一个带有 extern 的段tpye,就在 .bss 之后,如下

extern:00000000006021C0 ; Segment type: Externs
extern:00000000006021C0 ; extern
extern:00000000006021C0 ; void free(void *ptr)
extern:00000000006021C0 extrn free:near ; DATA XREF: .got.plt:off_602018o

但是,当我在运行时使用 gdb 调试它时,我发现这个“外部”段只包含零!此段中除零外没有任何有效数据。而且,也没有关于这个段的权限的描述,就好像这个段根本不存在一样。

既然GOT里面有DATA XREF,可能跟导入函数有关?但是找不到相关的文档,不知道IDA是怎么识别的,到底是什么?

谢谢!

最佳答案

extern 不是真正的段。它是IDA创建的伪段,用于表示其他模块中地址未知的符号; GOT 通常包含指向这些的指针。在调试过程中,它可能被 .bss 覆盖或被操作系统加载器清除的堆栈区域,这就是为什么你在那里看到零的原因。

关于c - IDA中的 'Segment type: Externs'是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37638506/

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