fly*_*bin 1 x86 assembly x86-64 linux-kernel
在运行期间,如何获取寄存器fs中的值并在"call*fs:0x334"中计算目标函数的地址?我可以使用什么样的x86组件?
目标函数地址in call *fs:0x334是存储在的值fs:0x334.
所以,如果你想知道那个地址是什么,你可以加载它.
例如mov rax, [fs:0x334](nasm)或mov %fs:0x334, %rax(气体).
你不需要知道fs它本身指向什么(它也是如此:它指向描述符表中的一个条目,你可能有或没有权限读取,它指向一个线性地址,可能或可能不能通过任何其他段选择器访问).
在x86-64 Linux上,内核和glibc合作确保fs始终指向当前运行的线程的线程本地存储区域.(在32位x86 Linux上,gs用于此目的.)
| 归档时间: |
|
| 查看次数: |
529 次 |
| 最近记录: |