gpt4 book ai didi

c - 内核函数 load_elf_binary 中的变量 elf_entry 是我用 readelf -h 获得的入口点吗

转载 作者:太空宇宙 更新时间:2023-11-04 03:03:29 27 4
gpt4 key购买 nike

我需要找到在虚拟环境(debian x86)中运行的 elf 文件的入口点。在主机上,我可以确定当前指令指针和所有其他 cpu 寄存器。因此可以确定内核函数调用。

函数load_elf_binary调用函数 start_thread使用以下参数:

start_thread(regs, elf_entry, bprm->p);

所以我应该能够从 cpu 寄存器接收 elf_entry,但是当我转储寄存器时,我得到这个输出:

EAX=0xc61bffb4
EBX=0xc61bffb4
ECX=0xbff29430
EDX=0xb78ae850
ESI=0xc78f9500
EDI=0xbff29fec
EBP=0xbff29488
ESP=0xc61bfeb4
EIP=0xc1001f82
CR2=0xb78ca840

没有寄存器的值以 0x8xxxxxxx 开头,所以我不确定是我弄错了还是 elf_entry 不是我要查找的入口点。

本质问题:内核函数 load_elf_binary 中的变量 elf_entry 是我用 readelf -h 得到的入口点吗?

最佳答案

elf_entry 该函数仅对应于静态二进制文件的 ELF 入口点,对于动态二进制文件,它对应于动态链接器的入口点(最终应调用二进制文件的入口点),请参阅http://lxr.free-electrons.com/source/fs/binfmt_elf.c?v=2.6.32#L888 .

关于c - 内核函数 load_elf_binary 中的变量 elf_entry 是我用 readelf -h 获得的入口点吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8765234/

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