在 Go 中使用 syscall 库来读取内存需要使用 syscall.PtracePeekData() 函数。这个函数需要传入两个参数,一个是进程 ID,另一个是内存地址。它返回一个字节数组和一个错误信息。示例代码如下:
package main
import (
"fmt"
"syscall"
)
func main() {
data, err := syscall.PtracePeekData(pid, addr)
if err != nil {
fmt.Println(err)
}
fmt.Println(data)
}
其中 pid 是要读取内存的