This can be done fairly easily if you run the Go process as root and read the /proc/$pid/mem pseudo file.
> On Apr 30, 2020, at 10:01 PM, Michael Jones <michael.jo...@gmail.com> wrote: > > > The general dangerous ability to do this is why protected mode went into the > i368 and is the first and most essential promise to prevent of every OS other > than MS DOS, original MacOS, and practically the threads in shared memory > model of Smalltalk & MP Mathematica. > >> On Thu, Apr 30, 2020 at 7:13 PM Kurtis Rader <kra...@skepticism.us> wrote: >>> On Thu, Apr 30, 2020 at 6:59 PM Trig <edb1...@gmail.com> wrote: >> >>> I'm attempting to read memory from another process. I've installed 'Cheat >>> Engine' to do this, to make sure I'm pulling the correct value from the >>> address I'm attempting to; however, nothing I found works I did find this >>> article: >>> >>> https://stackoverflow.com/questions/37358478/read-random-memory-locations-with-golang >>> >>> I don't believe that is correct though, as using the address of the >>> location I'm attempting to read doesn't result in a value anywhere near >>> what 'Cheat Engine' is reporting. I've looked at the 'unsafe' and >>> 'syscall' packages; however, there's very little information on them. >>> Also, searched many ways trying to find examples on how to do this. I'm on >>> a Mac (and use Linux). On Windows, I can do this fairly easy. >> >> Really? I'd love to see your Go code that allows reading arbitrary memory on >> MS Windows. >> >> As Ian pointed out on UNIX, and most operating systems for that matter, do >> not allow a process to read the memory of other processes without using >> specialized operating system APIs meant for debugging; such as the >> `ptrace()` syscall. >> >> Note that the stackoverflow question you linked to is bollocks. The >> questioner apparently wants to read the virtual memory of other processes. >> Yet they accepted as correct an answer that does no such thing. The "answer" >> only reads arbitrary virtual memory of the Go process. >> >> -- >> Kurtis Rader >> Caretaker of the exceptional canines Junior and Hank >> -- >> You received this message because you are subscribed to the Google Groups >> "golang-nuts" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to golang-nuts+unsubscr...@googlegroups.com. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/golang-nuts/CABx2%3DD9v%2BssEHjeZfV2Xb9QQYAkWgF5wskOYi2LkrfPqak4JrQ%40mail.gmail.com. > -- > Michael T. Jones > michael.jo...@gmail.com > -- > You received this message because you are subscribed to the Google Groups > "golang-nuts" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to golang-nuts+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/golang-nuts/CALoEmQw%3D1GtAw9CZVKJZ8eBhuyH2ufs%3Dg_fm6_QWU%2BSerAxYeQ%40mail.gmail.com. -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/CF12E85C-7A85-4A20-88A3-A33C924741E5%40ix.netcom.com.