4 ms·
as there seems to be some confusion, this is my interpretation: atop is (for some reason) touching memory of processes it monitors. atop is touching this in a
by john-h-k 2y ago
as there seems to be some confusion, this is my interpretation:
atop is (for some reason) touching memory of processes it monitors.
atop is touching this in an insecure way. An executable can cause atop to corrupt its memory.
this has high potential (although not guaranteed) for allowing RCE within atop via a correctly crafted process that atop monitors.
atop is often run in root, and so this otherwise meaningless RCE becomes privilege escalation, which is bad
either this is correct, or cunningham’s law will bring out the correct interpretation
- shanemhansen 2y agoThis is a complete shot in the dark but wild speculation is fun. If atop had a buffer overflow when reading a process name (changeable at runtime using $0 in perl for example) this would be the kind of issue I expect. Similarly, some other value that was expected to be null terminated but wasn't.
- twic 2y agoMy guess is that it tries to decode the malloc metadata, which involves chasing pointers, and doesn't do enough sanity checking, so if a process accidentally or deliberately sets up corrupt metadata, atop will dereference an invalid pointer and explode itself.