【问题标题】:Is there any functions in python(pwntools) that I can use to know the address of environment variable at stack?python(pwntools)中是否有任何函数可以用来知道堆栈中环境变量的地址?
【发布时间】:2019-10-30 23:04:37
【问题描述】:

我正在尝试执行返回 libc 攻击。问题是我需要堆栈中环境变量的地址作为小工具的参数。我用python尝试了以下代码。但似乎它给出了一个偏移量或其他东西?不确定。

r=process('/rop_level', env={'MYENV': 'cat /flag'})
os.environ.get('MYENV')
h = os.environ.get('MYENV')
hex(id(h))

它给出的结果是 0x9d4380。我有点需要像 0x7ffe 这样的堆栈地址.....

CTF 挑战位于需要 ssh 的容器中,因此我可能无法使用 gdb。

【问题讨论】:

    标签: python stack environment-variables memory-address pwntools


    【解决方案1】:

    如您所知,环境变量在堆栈中。所以你需要通过某种方式泄露堆栈地址。您应该通过本地调试计算泄漏的堆栈地址与环境变量之间的偏移量。然后你计算环境变量的地址。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-08-21
      • 1970-01-01
      • 1970-01-01
      • 2011-06-06
      • 2011-04-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多