首页 > 解决方案 > 如何在C中修改elf文件中的全局变量

问题描述

我想修改一个elf文件中的全局变量的值,即

整数变量 = 10;

我看到首先我必须打开 elf 文件。这个答案有一个简短的程序来打开一个elf文件,

使用十六进制编辑器在 ELF 可执行文件中查找整数声明的变量

那么我将不得不使用 readelf 来找到全局变量的虚拟地址,就像在其他解决方案中一样

https://stackoverflow.com/questions/20671194/finding-integer-declared-variables-in-elf-executable-using-a-hex-editor

但我不想使用十六进制编辑器修改变量,而是想使用 elf.h 文件中的 Section header(Sdhr) 结构成员在 C 中编辑它。希望我的问题是有道理的......

标签: cmemoryelf

解决方案


推荐阅读