在python中表示十六进制值0

时间:2017-11-02 21:35:24

标签: python format hex

我正在玩剥削,我有一个大问题: 我正在练习ROP技术,我需要将EIP重定向到ROP Gadget到二进制文件中。 我在x64 Linux Ubuntu上。 我的ROP的地址是0x400559(从二进制文件的偏移量),所以我必须用0x000000400559(48位地址)覆盖正确的值,但堆栈的返回地址类似于0x7fffffXXXXXX。

我的目标是用0x000000400559覆盖0x7fffffXXXXXX,问题是零。我必须将0写入7ff的内容....但我不能用python。

简单不起作用形式:

./run (python -c "print 'A'*264+'\x59\x05\x40'")

我需要的是这样的事情:

./run (python -c "print 'A'*264+'\x59\x05\x40\x00\x00\x00\x00'")

但\ x00无法正常工作,我也尝试了十六进制(0),但没有......

我能做些什么才能将0写入内存?

提前Thanxs

0 个答案:

没有答案