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.

Reply via email to