以编程方式用ptrace修改全局变量

我一直在玩ptrace ,看看我是否可以在C程序中修改简单全局整数的值。 我知道我可以使用PEEKDATAPOKEDATA来实现这一点。 但是,这些需要有关变量存储在内存中以便运行的信息。 我所搜索的所有教程似乎都表明,最流行的方法是手动使用nmobjdump来获取此地址。 有没有办法做到这一点,而不需要事先知道变量地址甚至变量名称(如下所示):

int i=0; //Assume i is defined globally and is the first integer defined in the code
//Code to modify i (this is what I'm looking for)
//More code here
//Print modified value of i
//Restore value of i later on

我还想过拦截系统调用,可以将整数作为参数,虽然这会起作用,但我想知道是否有更强大的方法来完成此操作。

链接地址: http://www.djcxy.com/p/66379.html

上一篇: Modifying global variables with ptrace programmatically

下一篇: How to implement a sandbox for an online