-
在libc中保存了一个函数叫_environ,存的是当前进程的环境变量


-
得到libc地址后,libc基址+_environ的偏移量=_environ的地址
在内存布局中,他们同属于一个段,开启ASLR之后相对位置不变,偏移量之和libc库有关 -
通过_environ的地址得到_environ的值,从而得到环境变量地址,环境变量保存在栈中,所以通过栈内的偏移量,可以访问栈中任意变量
如何从libc地址得到栈地址
最新推荐文章于 2025-01-21 18:16:14 发布
本文介绍了在libc中如何通过_environ函数找到当前进程的环境变量。解释了_environ的地址计算方法,即libc基址加上_environ的偏移量。在ASLR环境下,尽管基址会变化,但_environ的相对位置不变。通过访问_environ,可以得到环境变量的地址,由于环境变量保存在栈中,因此可以通过栈内偏移量访问栈中任意变量。

5187

被折叠的 条评论
为什么被折叠?



