我正在尝试修改/替换函数的参数值。这是堆栈,突出显示的位置是目标。
(esp + 8)( struct sockaddr )
我正在使用钩子函数执行内联汇编。一旦它已经在堆栈上或甚至在推入参数之前我应该修改/替换它吗?
我应该注意什么?
答案 0 :(得分:0)
如果你正在挂钩一个函数,这意味着你自己的函数是用原始参数调用的,你可以在某些时候将这些参数(改变与否)转发给原始函数。通常更容易更改您收到的参数而无需复制并传递它们。如果你正在使用用户登陆或内核登陆到内核登陆,那么你可能不想触摸原始进程/内核内存指针 - 为了安全而复制。