若A程序 调用B程序,并且A调用B时传入了参数。那么想知道传入参数是什么?
方法一,用OD找调用位置,(查看汇编代码 push到寄存器或堆栈的参数)十分繁琐。
方法二,将如下程序编译成二进制文件,然后改为目标被调用程序的文件名,(目标被调用程序更换一下文件名),也就是说调用者调用了我们的程序,自然,我们可以获取到调用参数。该数据位于./调用参数.log文件中。
package main
import (
"encoding/json"
"io/ioutil"
"os"
)
func main() {
bytes, err := json.Marshal(os.Args)
if err != nil {
panic(err)
}
ioutil.WriteFile("./调用参数.log", bytes, 0777)
}