如何从libc地址得到栈地址

  1. 在libc中保存了一个函数叫_environ,存的是当前进程的环境变量
    如何从libc地址得到栈地址
    如何从libc地址得到栈地址

  2. 得到libc地址后,libc基址+_environ的偏移量=_environ的地址
    在内存布局中,他们同属于一个段,开启ASLR之后相对位置不变,偏移量之和libc库有关

  3. 通过_environ的地址得到_environ的值,从而得到环境变量地址,环境变量保存在栈中,所以通过栈内的偏移量,可以访问栈中任意变量

例子:
2018网鼎杯-pwn-GUESS